Return-Path: <brian@briansmith.org>
X-Original-To: tls@ietfa.amsl.com
Delivered-To: tls@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1])
 by ietfa.amsl.com (Postfix) with ESMTP id CFCFE129DAA
 for <tls@ietfa.amsl.com>; Tue,  8 Nov 2016 10:59:52 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.6
X-Spam-Level: 
X-Spam-Status: No, score=-2.6 tagged_above=-999 required=5
 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1,
 HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-0.7, SPF_PASS=-0.001]
 autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key)
 header.d=briansmith-org.20150623.gappssmtp.com
Received: from mail.ietf.org ([4.31.198.44])
 by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024)
 with ESMTP id vy3xZwvK3lj7 for <tls@ietfa.amsl.com>;
 Tue,  8 Nov 2016 10:59:50 -0800 (PST)
Received: from mail-it0-x236.google.com (mail-it0-x236.google.com
 [IPv6:2607:f8b0:4001:c0b::236])
 (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits))
 (No client certificate requested)
 by ietfa.amsl.com (Postfix) with ESMTPS id B6205129DA8
 for <tls@ietf.org>; Tue,  8 Nov 2016 10:59:16 -0800 (PST)
Received: by mail-it0-x236.google.com with SMTP id u205so226610609itc.0
 for <tls@ietf.org>; Tue, 08 Nov 2016 10:59:16 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=briansmith-org.20150623.gappssmtp.com; s=20150623;
 h=mime-version:in-reply-to:references:from:date:message-id:subject:to
 :cc; bh=IKS5tbJ+vVmsAOYxkd7OY56rAaV+tYRCH2Ig9XnN90c=;
 b=L46aMHbSDSkXauYAnwmShyRM+7GyboXoJmuG+1zPb9w46tsROehswse4lapSr8caTQ
 TCOU3G7xbdxvZygMQB+Vw6fgmFYWyP2kR3fyyP7Pd+XRc6hnbwbGkEYptsg/p/KleaNo
 +tJESdAkF+zeG4ZCSqO19c9gpLr9XSR0PHpza7Cxs50RsbSEf+dgTEV9Dx6JyjjRdTYp
 c0n3FNda0Qmzr3PX+0nRVSNl1t1pwh1jWhfoOSYKb+cfWsEU3I62OEkqrpeb6gFbwAz6
 xuv6xozS4+hw9jDMIxSI95j96wWMPZ8SsZUcZlCdTcq/JL3xWcxXMPvS1MEiQyQotNd2
 P6Jg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20130820;
 h=x-gm-message-state:mime-version:in-reply-to:references:from:date
 :message-id:subject:to:cc;
 bh=IKS5tbJ+vVmsAOYxkd7OY56rAaV+tYRCH2Ig9XnN90c=;
 b=gau5NNBnQnwcgTyXPNJNb7Y8SQM0QqM5Qv30OR8LAJbBTbZJbaEaWWWBE7RyWBVMgp
 t6qLdCj30zzCCO7foYJCk/Hgz35lbG8o+GSd0Ak/NjwYKbyrLx/L/h+lS5xYcZ8UtkNT
 6E0kItHKZMALSJgOG0wBwyzD9xuRmaVk9sCejDlVhqBxjpWzau4Z8j+HnPHyKwjMIGMn
 nNC2TL+QS+2+gi7hJuA8NJKJnfuvY94W9gr/J6g6ATEiyqTN916992n6HzyU97v2rxUV
 yK5yXyiNDHj1Tpd4t4P2SoUr3+KNm0GlmkCCwcF+0d3xLTxq8uQavIT11uvBc7m6hav6
 BIlQ==
X-Gm-Message-State: ABUngvcFXvUOZy9iqiWzTYYXIBGsT1xoYbl9zvXazCaUWV+02icsvuKy4tzHi5aot4aRsS8/Hf0zdtdElqqtmw==
X-Received: by 10.107.1.138 with SMTP id 132mr13988797iob.72.1478631555955;
 Tue, 08 Nov 2016 10:59:15 -0800 (PST)
MIME-Version: 1.0
Received: by 10.36.85.83 with HTTP; Tue, 8 Nov 2016 10:59:15 -0800 (PST)
In-Reply-To: <CABkgnnXgOJBThg66ZzXSk4vFqL8XKK3w0KGWZci=vWiLXoQ9Hw@mail.gmail.com>
References: <CABcZeBMeLgqjvr2cjWL=AHTQJbS9siNBB6U2=0654yigbBGkYA@mail.gmail.com>
 <47532130.8rB6yCJVvA@pintsize.usersys.redhat.com>
 <CABcZeBOsN+_gUUb=HoUsoPOTBgANedT5Y5O+pAGXn0qTYjq1jg@mail.gmail.com>
 <4268201.z3YH5P6ntS@pintsize.usersys.redhat.com>
 <CABcZeBMg_QjHQf3b1mJcuDtCH1o2Gpv=YDdDPkAu5GwEhVaCfg@mail.gmail.com>
 <c83f4ada-f3e7-12f5-aedd-f41ff5e80665@akamai.com>
 <CAF8qwaC2oRqqHAeWRoGm24ZmDe0YAR6xgoA6NWNx59bV+dAOJw@mail.gmail.com>
 <CAFewVt7oBausHM9E83nvzOh1DRCB4f4d92t2X8EmN-CzFU41OQ@mail.gmail.com>
 <CABkgnnXgOJBThg66ZzXSk4vFqL8XKK3w0KGWZci=vWiLXoQ9Hw@mail.gmail.com>
From: Brian Smith <brian@briansmith.org>
Date: Tue, 8 Nov 2016 08:59:15 -1000
Message-ID: <CAFewVt54F6HuNqdGV0ztWvMiOSreqLmaU+VUQD9EPZkGT5=O2A@mail.gmail.com>
To: Martin Thomson <martin.thomson@gmail.com>
Content-Type: multipart/alternative; boundary=001a113965aea5ab810540cebc23
Archived-At: <https://mailarchive.ietf.org/arch/msg/tls/1ozz1UW34JDQAH0ZH7xRvWCsSXA>
Cc: Matt Caswell <matt@openssl.org>, "tls@ietf.org" <tls@ietf.org>
Subject: Re: [TLS] (strict) decoding of legacy_record_version?
X-BeenThere: tls@ietf.org
X-Mailman-Version: 2.1.17
Precedence: list
List-Id: "This is the mailing list for the Transport Layer Security working
 group of the IETF." <tls.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/tls>,
 <mailto:tls-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/tls/>
List-Post: <mailto:tls@ietf.org>
List-Help: <mailto:tls-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/tls>,
 <mailto:tls-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 08 Nov 2016 18:59:53 -0000

--001a113965aea5ab810540cebc23
Content-Type: text/plain; charset=UTF-8

Martin Thomson <martin.thomson@gmail.com> wrote:

> On 8 November 2016 at 14:01, Brian Smith <brian@briansmith.org> wrote:
> > Since this field isn't included in the additional_data of the AEAD in TLS
> > 1.3 any more, it isn't authenticated. That means an active MitM can use
> this
> > to transport up to 2 bytes of information hop-to-hop if the receiver
> doesn't
> > check it. That seems like a good reason to check it, and also to check
> > TLSCiphertext.opaque_type is application_data. Assuming this is the
> reason,
> > the reasoning should be explicitly called out because it is non-obvious.
>
> I don't think that's the primary reason.  A MitM could use TCP headers
> to carry other bits if they wanted.
>

Smuggling at the application layer would be more reliable for them, though.
I'd say the goal of the check isn't to prevent all possible smuggling;
rather it's part of a solution to it. Anyway, this is the only convincing
rationale I see for requiring ("MUST") vs allowing ("MAY") the checking.



> The main reason I can think of is ecosystem health.  If you permit
> junk, then you get junk.  Then you can't use the field any more
> because it contains junk.
>

This isn't a pervasively shared goal, though. It's good to let the browsers
police things if they want, but I think a lot of implementations would
prefer to avoid doing work that isn't necessary for interop or security.

Cheers,
Brian
-- 
https://briansmith.org/

--001a113965aea5ab810540cebc23
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div class=3D"gmail_extra"><div class=3D"gmail_quote">Mart=
in Thomson <span dir=3D"ltr">&lt;<a href=3D"mailto:martin.thomson@gmail.com=
" target=3D"_blank">martin.thomson@gmail.com</a>&gt;</span> wrote:<br><bloc=
kquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1px #cc=
c solid;padding-left:1ex"><span class=3D"">On 8 November 2016 at 14:01, Bri=
an Smith &lt;<a href=3D"mailto:brian@briansmith.org">brian@briansmith.org</=
a>&gt; wrote:<br>
&gt; Since this field isn&#39;t included in the additional_data of the AEAD=
 in TLS<br>
&gt; 1.3 any more, it isn&#39;t authenticated. That means an active MitM ca=
n use this<br>
&gt; to transport up to 2 bytes of information hop-to-hop if the receiver d=
oesn&#39;t<br>
&gt; check it. That seems like a good reason to check it, and also to check=
<br>
&gt; TLSCiphertext.opaque_type is application_data. Assuming this is the re=
ason,<br>
&gt; the reasoning should be explicitly called out because it is non-obviou=
s.<br>
<br>
</span>I don&#39;t think that&#39;s the primary reason.=C2=A0 A MitM could =
use TCP headers<br>
to carry other bits if they wanted.<br></blockquote><div><br></div><div>Smu=
ggling at the application layer would be more reliable for them, though. I&=
#39;d say the goal of the check isn&#39;t to prevent all possible smuggling=
; rather it&#39;s part of a solution to it. Anyway, this is the only convin=
cing rationale I see for requiring (&quot;MUST&quot;) vs allowing (&quot;MA=
Y&quot;) the checking.</div><div><br></div><div>=C2=A0</div><blockquote cla=
ss=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;pa=
dding-left:1ex">The main reason I can think of is ecosystem health.=C2=A0 I=
f you permit<br>
junk, then you get junk.=C2=A0 Then you can&#39;t use the field any more<br=
>
because it contains junk.<br>
</blockquote></div><div class=3D"gmail_extra"><br></div>This isn&#39;t a pe=
rvasively shared goal, though. It&#39;s good to let the browsers police thi=
ngs if they want, but I think a lot of implementations would prefer to avoi=
d doing work that isn&#39;t necessary for interop or security.</div><div cl=
ass=3D"gmail_extra"><br></div><div class=3D"gmail_extra"><div>Cheers,</div>=
<div>Brian</div>-- <br><div class=3D"gmail_signature" data-smartmail=3D"gma=
il_signature"><div dir=3D"ltr"><div><div dir=3D"ltr"><div><div dir=3D"ltr">=
<div><a href=3D"https://briansmith.org/" target=3D"_blank">https://briansmi=
th.org/</a></div><div><br></div></div></div></div></div></div></div>
</div></div>

--001a113965aea5ab810540cebc23--

