Re: [hybi] Handshake was: The WebSocket protocol issues.

Eric Rescorla <ekr@rtfm.com> Sat, 09 October 2010 00:42 UTC

Return-Path: <ekr@rtfm.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 096C33A696D for <hybi@core3.amsl.com>; Fri, 8 Oct 2010 17:42:02 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -101.976
X-Spam-Level:
X-Spam-Status: No, score=-101.976 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, FM_FORGED_GMAIL=0.622, HTML_MESSAGE=0.001, 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 l+DfWu1IRNi6 for <hybi@core3.amsl.com>; Fri, 8 Oct 2010 17:42:01 -0700 (PDT)
Received: from mail-gw0-f44.google.com (mail-gw0-f44.google.com [74.125.83.44]) by core3.amsl.com (Postfix) with ESMTP id D9DAC3A6359 for <hybi@ietf.org>; Fri, 8 Oct 2010 17:42:00 -0700 (PDT)
Received: by gwb20 with SMTP id 20so621252gwb.31 for <hybi@ietf.org>; Fri, 08 Oct 2010 17:43:06 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.90.66.18 with SMTP id o18mr1972235aga.59.1286584986588; Fri, 08 Oct 2010 17:43:06 -0700 (PDT)
Received: by 10.91.190.1 with HTTP; Fri, 8 Oct 2010 17:43:06 -0700 (PDT)
In-Reply-To: <4CAFB9C4.6030905@caucho.com>
References: <4CABCBFA.6020100@caucho.com> <AANLkTi=5wbCXWpOtUQT1MndgCxt9gj6uR_3U=nONpjKc@mail.gmail.com> <4CABD11F.3060500@caucho.com> <AANLkTiksehiSp7DB17MBVBb457p6pN5E8vma6FHz1c9j@mail.gmail.com> <4CACA667.3040309@caucho.com> <4CAF9589.1060007@caucho.com> <AANLkTinnnT5Oib7FvDdZF2q_WUT8=q8KNmfkfajE0Mor@mail.gmail.com> <4CAFA043.10101@caucho.com> <AANLkTi=eo-cjBz160FN0cn53v4-CpDSYaEneqkr_ZP7k@mail.gmail.com> <4CAFAC2B.5000800@caucho.com> <55bva61goeqtn0lifgjt5uihf50obh7kf4@hive.bjoern.hoehrmann.de> <4CAFB9C4.6030905@caucho.com>
Date: Fri, 08 Oct 2010 17:43:06 -0700
Message-ID: <AANLkTinv5Ym5jwUEqS76z3UkVa7GpmOBT_WXhBbFK0-m@mail.gmail.com>
From: Eric Rescorla <ekr@rtfm.com>
To: Scott Ferguson <ferg@caucho.com>
Content-Type: multipart/alternative; boundary="0016362839ae195661049224690b"
Cc: hybi <hybi@ietf.org>, Bjoern Hoehrmann <derhoermi@gmx.net>
Subject: Re: [hybi] Handshake was: The WebSocket protocol issues.
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: Sat, 09 Oct 2010 00:42:02 -0000

On Fri, Oct 8, 2010 at 5:39 PM, Scott Ferguson <ferg@caucho.com> wrote:

> Bjoern Hoehrmann wrote:
>
>> * Scott Ferguson wrote:
>>
>>
>>> So the attacker has a PHP script running on the same physical machine as
>>> the target site, on the same VM guest as the target, and using the same
>>> shared web server as the target, and has decided that a cross protocol
>>> attack is the appropriate vector against a target on the same machine as his
>>> PHP script.
>>>
>>>
>>
>> In the scenario the browser thinks it is talking Websocket while the
>> server thinks the browser is talking HTTP, so basically
>>
>>  +----------------+                    +------------------+
>>  | User's browser | -- "Websocket" +-- | attacker.example |
>>  +----------------+                |   +------------------+
>>                                  HTTP
>>                                    |   +------------------+
>>                                    +-- | target.example   |
>>                                        +------------------+
>>
>> How attacker.example and target.example are organized is up to the
>> web server, it could just be some kind of firewall where the two sites
>> are actually hosted on physically separate machines behind it and they
>> may be unable to talk to each other. I do think this is something that
>> the Websocket protocol needs to address.
>>
>>
>
> To consider the original scenario, do you think the case where the
> attacker's PHP script is on the same physical and virtual machine as the
> target is something WebSockets needs to address? Or that the shared machine
> configuration is already so compromised that complicating WebSockets to
> address that scenario adds no real value.
>
>
This case definitely needs to be addressed. It's a completely standard
hosting
configuration.

-Ekr