Re: [hybi] Extensibility mechanisms?

John Tamplin <jat@google.com> Thu, 22 July 2010 15:19 UTC

Return-Path: <jat@google.com>
X-Original-To: hybi@core3.amsl.com
Delivered-To: hybi@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 32EC13A6B5B for <hybi@core3.amsl.com>; Thu, 22 Jul 2010 08:19:21 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -105.976
X-Spam-Level:
X-Spam-Status: No, score=-105.976 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, FM_FORGED_GMAIL=0.622, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_MED=-4, USER_IN_WHITELIST=-100]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id dnoKhfNdvHQ9 for <hybi@core3.amsl.com>; Thu, 22 Jul 2010 08:19:20 -0700 (PDT)
Received: from smtp-out.google.com (smtp-out.google.com [216.239.44.51]) by core3.amsl.com (Postfix) with ESMTP id 3446F3A6826 for <hybi@ietf.org>; Thu, 22 Jul 2010 08:19:20 -0700 (PDT)
Received: from kpbe11.cbf.corp.google.com (kpbe11.cbf.corp.google.com [172.25.105.75]) by smtp-out.google.com with ESMTP id o6MFJahR011578 for <hybi@ietf.org>; Thu, 22 Jul 2010 08:19:36 -0700
DKIM-Signature: v=1; a=rsa-sha1; c=relaxed/relaxed; d=google.com; s=beta; t=1279811976; bh=Oc0jYi+2ahsTjXujE7uribrKXI4=; h=MIME-Version:In-Reply-To:References:From:Date:Message-ID:Subject: To:Cc:Content-Type; b=xJ8W8xbzERNNvLOvUr8uA0nqCUaHW0zxbLbSnsPQz1xEBVxJkoEi04VQsJqhOgZFr gjlFiRxEwbohv4Yi5MNFg==
DomainKey-Signature: a=rsa-sha1; s=beta; d=google.com; c=nofws; q=dns; h=mime-version:in-reply-to:references:from:date:message-id: subject:to:cc:content-type:x-system-of-record; b=KX+PG4CfhWozJ47N6MXvTBnijRNMnvInXnoFoEKABy/U67pLmhsqUo53yxQkVfIuC /rwgFhZPyt6UJkbASs6Bg==
Received: from gwj20 (gwj20.prod.google.com [10.200.10.20]) by kpbe11.cbf.corp.google.com with ESMTP id o6MFIVtf005984 for <hybi@ietf.org>; Thu, 22 Jul 2010 08:18:57 -0700
Received: by gwj20 with SMTP id 20so178045gwj.39 for <hybi@ietf.org>; Thu, 22 Jul 2010 08:18:57 -0700 (PDT)
Received: by 10.150.227.14 with SMTP id z14mr3866485ybg.243.1279811937556; Thu, 22 Jul 2010 08:18:57 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.151.60.3 with HTTP; Thu, 22 Jul 2010 08:18:35 -0700 (PDT)
In-Reply-To: <AANLkTingCdW6aXjw2xVEuZ9L4RkT5dD2ncJtvrytQFbH@mail.gmail.com>
References: <AANLkTikkfdlUxQ0MGNvVQKa5gfovkGHWdCgyN9juKSQJ@mail.gmail.com> <4C462F9E.9030207@caucho.com> <Pine.LNX.4.64.1007212153110.7242@ps20323.dreamhostps.com> <AANLkTiku76oSucTNDFdwgsFBNFa_cCpC-YktTnMfX47-@mail.gmail.com> <4C479130.4020500@caucho.com> <AANLkTikLDjBP-Xs5t6TxmJuq4nG8jwThQ=n34B4cEmup@mail.gmail.com> <4C479CE4.6070805@caucho.com> <AANLkTims1er0Rbv0ysP4gRs1Kd0He8hapHeJ3nON=JQa@mail.gmail.com> <4C47C5B0.3030006@caucho.com> <AANLkTi=ND-FOH8OoD=TCbiyeSZ-h0LhxQBXN5w-2hfvj@mail.gmail.com> <20100722055452.GL7174@1wt.eu> <F412C956-038F-400D-A431-C42B4C7B829C@apple.com> <AANLkTingCdW6aXjw2xVEuZ9L4RkT5dD2ncJtvrytQFbH@mail.gmail.com>
From: John Tamplin <jat@google.com>
Date: Thu, 22 Jul 2010 11:18:35 -0400
Message-ID: <AANLkTikY_7nPGrEmGPgYw4GaZZXSrzF8+K1k2qvnJucH@mail.gmail.com>
To: Mike Belshe <mike@belshe.com>
Content-Type: multipart/alternative; boundary="000e0cd51a72eadc60048bfb6f55"
X-System-Of-Record: true
Cc: Hybi <hybi@ietf.org>
Subject: Re: [hybi] Extensibility mechanisms?
X-BeenThere: hybi@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: Server-Initiated HTTP <hybi.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/hybi>, <mailto:hybi-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/hybi>
List-Post: <mailto:hybi@ietf.org>
List-Help: <mailto:hybi-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/hybi>, <mailto:hybi-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 22 Jul 2010 15:19:21 -0000

On Thu, Jul 22, 2010 at 11:07 AM, Mike Belshe <mike@belshe.com> wrote:

> BTW - Isn't the creation of this problem really because we allow arbitrary
> UTF-8 written by the JS application?  If we had a true framing layer (where
> frames have headers, instead of allowing UTF-8), would these attacks be
> real?  It seems to me that the simplest frame header would be sufficient to
> prevent all of these attack vectors, but the frame headers could contain
> nonces or whatever other security information is needed too.
>
> The reason I mention this is because as we look to using a TLS/NPN, we can
> potentially get rid of the first round trip.  There was a lot of support for
> that idea within the group.  But, we can *only* do so if we don't have JS
> able to write directly to the socket.  If JS is able to write UTF-8 to the
> socket, then skipping the first round trip opens a security vulnerability as
> depicted by Maciej & Adam here.
>

The JS API just has strings.  It is up to the browser to convert these
strings into UTF8 sequences for the protocol.  If current experience is any
guide, there will be differences among browsers, particularly regarding
non-BMP characters and combining marks.

-- 
John A. Tamplin
Software Engineer (GWT), Google