Re: Questions about Version Negotiation Concerning Possible Handshake Interruption

Kazuho Oku <kazuhooku@gmail.com> Sat, 10 February 2018 09:00 UTC

Return-Path: <kazuhooku@gmail.com>
X-Original-To: quic@ietfa.amsl.com
Delivered-To: quic@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id E4B19124234 for <quic@ietfa.amsl.com>; Sat, 10 Feb 2018 01:00:10 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.999
X-Spam-Level:
X-Spam-Status: No, score=-1.999 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.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 BNR1LCrdAb_x for <quic@ietfa.amsl.com>; Sat, 10 Feb 2018 01:00:08 -0800 (PST)
Received: from mail-pg0-x22e.google.com (mail-pg0-x22e.google.com [IPv6:2607:f8b0:400e:c05::22e]) (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 CAEC6127867 for <quic@ietf.org>; Sat, 10 Feb 2018 01:00:08 -0800 (PST)
Received: by mail-pg0-x22e.google.com with SMTP id o1so5075575pgn.4 for <quic@ietf.org>; Sat, 10 Feb 2018 01:00:08 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=BjpwvnL6CiLlewPQBBfQ6UsyACeV8dia5fw47gfsupc=; b=M92EkJmyK9li0xz9gLG0IL00jC7GzB59rdUg3cLHuzp31HmPWk+zoxucHDxR1Xk4BB HX/1+1DuvmJnyihANnYLdGLanwEOtd1JwMvtuhYCwJWon9m3B+FOFwDP+VeEEeQM59eY 3R4KWhaO8F7wFLHsxhUOOq8RVkFnYfggbGf1EgjoDPCJxjgIMOwcHMhFJXPz9kjmYxeo iMmoi2vas839N5GNdf7j5uVEWl3Gr2NzUjToh0Dvoc8XE3Avi6w6u8dSgQQUStuX+XcW pjuMFcfNP7tgaVE48Qj5db4IcheKDg99TxOAqJiZzEAkE/Sm+ZigINW3UW/nrBPgweqT h/XA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=BjpwvnL6CiLlewPQBBfQ6UsyACeV8dia5fw47gfsupc=; b=eJoQqOrknRasZt2OEoE518+ZIfPqvM0c2PAmPv28Ohb9xGhOHybqIh9Xip/sj6G5Xv KHod4wBYR1CuXcq8noy2/z3d+wRFC79jPdcq0GG6CE8qwuvucGT4ltPspKGnyFoE78oQ JXkBK1273B0kElsQ1cPurwC7Mm6HZNHsbrrIbkfSK4Birw7MoqqkiLFTFqaPDvpSyXpn t4NS7m+XDwLW/UIwQEiOHDjOl1RQOjcfgd/U2NU2pNxovPSjrAcsyJPT2KvLNv5F4cfn SLRrrXb/vXYb2ntt+FsXNrzIFUH/FVBhi/gojqz0LQsCkobCazniFZDeQpa++s0Y+lIa urFg==
X-Gm-Message-State: APf1xPA7/SOgB1zsF30JSEYeXmj71rNODa0yLDxfDC4DZoMGK8GEfZ+X jkxETOdJHGqWGlzHqTDibTFc3yuI7+vF3/yQlWM=
X-Google-Smtp-Source: AH8x225x4o/f+O39B55Lr0Hw0JJgxG+sc6MH5JvnE9rqcYJZvvdXbW7kF9QGFPXrW1gVIVb2OsdraKD2rQoyNQ4Noeg=
X-Received: by 10.98.25.207 with SMTP id 198mr5573728pfz.83.1518253208292; Sat, 10 Feb 2018 01:00:08 -0800 (PST)
MIME-Version: 1.0
Received: by 10.236.156.11 with HTTP; Sat, 10 Feb 2018 01:00:07 -0800 (PST)
In-Reply-To: <6937_1518251684_5A7EAEA4_6937_191_1_5A7EAEA5.2000605@orange.com>
References: <1d386744-c46a-842a-b172-24e290e03668@gmail.com> <CABkgnnVRn+1sNZQFB8BZc4VyzN5usLmYJ3xLo+p2uTeW_0Ji_Q@mail.gmail.com> <CAN1APdfpJ0rYPPiOgfcdDRx3noh+YYvJatP0MYTqRRXMBwF6pA@mail.gmail.com> <3d558827-f2a7-877c-e00a-d6a22ef241c5@gmail.com> <CANatvzzZEuJ3TY=+0BMLqbBE5mScG_Jnrypg3xkciykOX78G8A@mail.gmail.com> <CAN1APdfov8Q3E+5NkT5pmMeU=eB=fsnDFe_=BK7TDE0TpXD3yA@mail.gmail.com> <142211e0-c7c9-642f-69ef-5f0d722b77cc@gmail.com> <529ac475-5291-2b2e-acf9-05efe720d584@huitema.net> <6937_1518251684_5A7EAEA4_6937_191_1_5A7EAEA5.2000605@orange.com>
From: Kazuho Oku <kazuhooku@gmail.com>
Date: Sat, 10 Feb 2018 18:00:07 +0900
Message-ID: <CANatvzz_2BeRns5E-OO=CKKwK66LgMd=3vVCM84_+OAxj8CutQ@mail.gmail.com>
Subject: Re: Questions about Version Negotiation Concerning Possible Handshake Interruption
To: alexandre.ferrieux@orange.com
Cc: Christian Huitema <huitema@huitema.net>, Lingmo Zhu <zlm2006@gmail.com>, Mikkel Fahnøe Jørgensen <mikkelfj@gmail.com>, "quic@ietf.org" <quic@ietf.org>, Martin Thomson <martin.thomson@gmail.com>
Content-Type: text/plain; charset="UTF-8"
Archived-At: <https://mailarchive.ietf.org/arch/msg/quic/DXGe3ZLPwJw4upiZwVnDVo9iNFA>
X-BeenThere: quic@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Main mailing list of the IETF QUIC working group <quic.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/quic>, <mailto:quic-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/quic/>
List-Post: <mailto:quic@ietf.org>
List-Help: <mailto:quic-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/quic>, <mailto:quic-request@ietf.org?subject=subscribe>
X-List-Received-Date: Sat, 10 Feb 2018 09:00:11 -0000

2018-02-10 17:34 GMT+09:00  <alexandre.ferrieux@orange.com>:
> On 10/02/2018 07:24, Christian Huitema wrote:
>>
>>
>>
>> On 2/9/2018 3:06 PM, Lingmo Zhu wrote:
>>>
>>>
>>>  IMHO we can see that such interference is pretty easy to be used and
>>>  it could leading to aborted QUIC connection and probably a fallback to
>>>  any old approach for higher level protocol. Even virus targeting home
>>>  routers could do that, without gov involved. For what outcome, I think
>>>  it's pretty simple: forcing higher level protocol fallback to other
>>>  transport protocol. Since QUIC has been designed much more secure than
>>>  older protocols, it could be hard to do some eavesdropping or
>>>  hijacking. But if fallback happens, it would be another story.
>>>  Considering DNS over QUIC, a virus-infected home router could
>>>  interfere with QUIC handshake cause fallback to TLS, then RST may
>>>  cause fallback to clear text, which is easy to be hijacked and leads
>>>  client to some phishing site.
>>>
>>
>> In theory, it should be possible to protect against "man on the side"
>> attacks. Do some kind of speculative execution on the first packet that
>> you receive, but also keep the context available for some time in case a
>> "better" packet comes later. With that approach, the attacker could not
>> just inject a "packet of death"; they will also need to suppress the
>> correct response from the actual server. That's an interesting idea.
>> Have you tried some experiments?
>
>
> Alternatively, what about a "no fallback" mode for sensitive applications
> like DNS ?

I agree that providing such an option would narrow the attack window.
The other option is to let the client propose multiple versions and
the server select one, as proposed in my previous mail.

But even if we do that, there's still the chance of an attacker
injecting a Handshake packet that contains a corrupt ServerHello
message. In such case, the client would fail to complete the handshake
with the server.

To evade such attacks, a client is required to create a backup of its
TLS context before handling the Handshake packet that might have been
sent from an attacker, so that it could restore the context one the
TLS handshake ends up in an error.

However, I am not sure if any of the TLS stacks provide such a feature
(personally I would be interested in adding one in picotls, though).


> _________________________________________________________________________________________________________________________
>
> Ce message et ses pieces jointes peuvent contenir des informations
> confidentielles ou privilegiees et ne doivent donc
> pas etre diffuses, exploites ou copies sans autorisation. Si vous avez recu
> ce message par erreur, veuillez le signaler
> a l'expediteur et le detruire ainsi que les pieces jointes. Les messages
> electroniques etant susceptibles d'alteration,
> Orange decline toute responsabilite si ce message a ete altere, deforme ou
> falsifie. Merci.
>
> This message and its attachments may contain confidential or privileged
> information that may be protected by law;
> they should not be distributed, used or copied without authorisation.
> If you have received this email in error, please notify the sender and
> delete this message and its attachments.
> As emails may be altered, Orange is not liable for messages that have been
> modified, changed or falsified.
> Thank you.
>



-- 
Kazuho Oku