RE: AD review of draft-ietf-httpbis-alt-svc-10

Mike Bishop <> Fri, 15 January 2016 21:13 UTC

Return-Path: <>
Received: from localhost ( []) by (Postfix) with ESMTP id 4DCB31B3293 for <>; Fri, 15 Jan 2016 13:13:36 -0800 (PST)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -7.002
X-Spam-Status: No, score=-7.002 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_HI=-5, RP_MATCHES_RCVD=-0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001] autolearn=unavailable
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id HZBhdvj7bvQR for <>; Fri, 15 Jan 2016 13:13:32 -0800 (PST)
Received: from ( []) (using TLSv1.2 with cipher DHE-RSA-AES128-SHA (128/128 bits)) (No client certificate requested) by (Postfix) with ESMTPS id 694F91B3292 for <>; Fri, 15 Jan 2016 13:13:32 -0800 (PST)
Received: from lists by with local (Exim 4.80) (envelope-from <>) id 1aKBdq-0000tJ-Ct for; Fri, 15 Jan 2016 21:10:42 +0000
Resent-Date: Fri, 15 Jan 2016 21:10:42 +0000
Resent-Message-Id: <>
Received: from ([]) by with esmtps (TLS1.2:DHE_RSA_AES_128_CBC_SHA1:128) (Exim 4.80) (envelope-from <>) id 1aKBdj-0000sX-Sm for; Fri, 15 Jan 2016 21:10:35 +0000
Received: from ([] by with esmtps (TLS1.2:RSA_AES_256_CBC_SHA256:256) (Exim 4.80) (envelope-from <>) id 1aKBdc-0000JO-TX for; Fri, 15 Jan 2016 21:10:35 +0000
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;; s=selector1; h=From:To:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=d1qGN80hrGESXhVHeHiRUdbgflKdkacZKLtvf9LEGYM=; b=arr4p0gbr983WZ00LkCInstVgBNpPNrwEP2sbW5EtcXEDfXrnR8ML0xaeFLuaRItt50XyYZD2L1c4Hh4/QAP87xwfdDpM8YPGjSY6Zu+aE1cBSP7zGYxX5MSxqgbxzM9NJcJZBcGy2BkdMNMal1CC2fIL2pRwIlqYHBNjoqWcHY=
Received: from ( by ( with Microsoft SMTP Server (TLS) id 15.1.365.19; Fri, 15 Jan 2016 21:09:59 +0000
Received: from ([]) by ([]) with mapi id 15.01.0365.023; Fri, 15 Jan 2016 21:10:00 +0000
From: Mike Bishop <>
To: Chris Bentzel <>, Mark Nottingham <>, Stephen Farrell <>
CC: Barry Leiba <>, "Julian F. Reschke" <>, "" <>, HTTP Working Group <>
Thread-Topic: AD review of draft-ietf-httpbis-alt-svc-10
Date: Fri, 15 Jan 2016 21:09:59 +0000
Message-ID: <>
References: <> <> <> <> <> <> <> <> <> <> <> <> <> <>
In-Reply-To: <>
Accept-Language: en-US
Content-Language: en-US
authentication-results: spf=none (sender IP is );
x-originating-ip: []
x-ms-office365-filtering-correlation-id: 6fe05a91-a4da-4cdd-eeb5-08d31df03a8a
x-microsoft-exchange-diagnostics: 1; CY1PR03MB1373; 5:KbJAy8w19W15a2wAFB65EIg0Dam/NbRqCtbByvDZ9qDpVAFHnC28O++Tjr/G871Gq0+x82sz1lViWTSRPOkiFjO6yedq8aqWtVtT1q0UDAOWyYJYkVFWSpkONfshZRIRMxJCN42lAItLVh8pVkIo4w==; 24:x0veuydJPNnR21MW3AyAKA+wW/rMYs2V/h8F4flv4+D/eDBEK3vwveG+nW4p+64NN4e1gBbptu04Mo2DRwBwV97nlRbfrutsnXTXQ0u66zQ=
x-exchange-antispam-report-test: UriScan:; BCL:0; PCL:0; RULEID:; SRVR:CY1PR03MB1373; UriScan:(32856632585715);
x-o365ent-eop-header: Message processed by - O365_ENT: Allow from ranges (Engineering ONLY)
x-microsoft-antispam-prvs: <>
x-exchange-antispam-report-cfa-test: BCL:0; PCL:0; RULEID:(61425038)(601004)(2401047)(8121501046)(5005006)(520078)(10201501046)(3002001)(61426038)(61427038); SRVR:CY1PR03MB1373; BCL:0; PCL:0; RULEID:; SRVR:CY1PR03MB1373;
x-forefront-prvs: 08220FA8D6
x-forefront-antispam-report: SFV:NSPM; SFS:(10019020)(13464003)(377454003)(24454002)(479174004)(199003)(189002)(74316001)(97736004)(99286002)(106356001)(561944003)(76176999)(19300405004)(54356999)(93886004)(87936001)(106116001)(50986999)(86612001)(16236675004)(19625215002)(33656002)(101416001)(19580395003)(19617315012)(230783001)(19580405001)(105586002)(86362001)(77096005)(5003600100002)(790700001)(4326007)(10090500001)(92566002)(81156007)(122556002)(5001770100001)(19609705001)(2900100001)(5008740100001)(8990500004)(10400500002)(1220700001)(1096002)(5004730100002)(2950100001)(102836003)(189998001)(76576001)(3846002)(2906002)(10290500002)(5001960100002)(587094005)(16601075003)(66066001)(6116002)(5005710100001)(5002640100001)(586003)(40100003)(15975445007)(7059030); DIR:OUT; SFP:1102; SCL:1; SRVR:CY1PR03MB1373;; FPR:; SPF:None; PTR:InfoNoRecords; A:1; MX:1; LANG:en;
received-spf: None ( does not designate permitted sender hosts)
spamdiagnosticoutput: 1:23
spamdiagnosticmetadata: NSPM
Content-Type: multipart/alternative; boundary="_000_CY1PR03MB137453C7B22E473C757581C987CD0CY1PR03MB1374namp_"
MIME-Version: 1.0
X-MS-Exchange-CrossTenant-originalarrivaltime: 15 Jan 2016 21:09:59.9818 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 72f988bf-86f1-41af-91ab-2d7cd011db47
X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY1PR03MB1373
Received-SPF: pass client-ip=;;
X-W3C-Hub-Spam-Status: No, score=-4.1
X-W3C-Hub-Spam-Report: AWL=-2.568, BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001, W3C_NW=0.5
X-W3C-Scan-Sig: 1aKBdc-0000JO-TX 7081c8c3a2bef54587515f9383f15d2a
Subject: RE: AD review of draft-ietf-httpbis-alt-svc-10
Archived-At: <>
X-Mailing-List: <> archive/latest/30943
Precedence: list
List-Id: <>
List-Help: <>
List-Post: <>
List-Unsubscribe: <>

The concern goes the other way, too – Alt-Svc mappings that you’ve previously discovered continuing to be used in Incognito.  If a server gave you an Alt-Svc of “” previously and you used it once you entered Incognito, they could persist your identity into that mode regardless of whether you persist updates you see while Incognito.

Having a separate cache of Alt-Svc mappings that gets used only for that session would seem like a reasonable mitigation.

From: Chris Bentzel []
Sent: Friday, January 15, 2016 1:04 PM
To: Mark Nottingham <>; Stephen Farrell <>
Cc: Mike Bishop <>; Barry Leiba <>; Julian F. Reschke <>;; HTTP Working Group <>
Subject: Re: AD review of draft-ietf-httpbis-alt-svc-10

Chiming in (very) late on the "In particular, clients configured for anonymous usage SHOULD NOT use alternative services."

I'm actually not sure what folks here have in mind when they think of "anonymous usage" configurations.

Assuming that something like Chrome's Incognito Mode falls under that bucket, it is likely that Chrome would use alternative services within an incognito session but not persist the alternative service mappings - they'd go away when the incognito session ends.

On Thu, Jan 14, 2016 at 10:32 PM Mark Nottingham <<>> wrote:
In some side discussions, I've come across other people who are unhappy with this state of affairs, so I don't think you're alone. I'll leave it up to them to decide how to participate here.

To be explicit -- we are opening up a potential same machine attack (specifically, someone on a shared HTTP server who has the ability to both add response headers -- such as with .htaccess or a CGI script -- and listen to another port (possibly, ANY port) on the same box can then hijack traffic intended for other users.

The motivation for doing so is to enable the HTTP Opportunistic Security specification, which offers weak protection against pervasive monitors, but is vulnerable to active attackers, and doesn't improve Web security in other (and important) ways that HTTPS does. We have only one implementation of that specification in a browser, and no sign that it will be adopted by others.

Is this a reasonable tradeoff? We are planning to publish this is Experimental, so the question might also be "is this a responsible experiment to run?"


> On 14 Jan 2016, at 6:18 am, Stephen Farrell <<>> wrote:
> On 13/01/16 19:16, Mike Bishop wrote:
>> Yes, that's obviously a mitigation servers can set up, but that means
>> we're telling existing servers they need to disallow something that's
> Well s/need/can/ I think, but sure.
>> newly defined in order to prevent their users from hijacking them.
>> And I don't believe retroactive guidance like that is reasonable --
>> that will lag actual deployment of the protocol, and will never be
>> 100%.
>> My proposal was that ~eve remains able to advertise an Alt-Svc, but
>> that alternative must then authenticate itself as<>
>> (which Eve's proxy cannot do) before clients will use it.
>> I remain a little unhappy with this as it stands, but if no one else
>> thinks it's a problem, I'll stop now.
> Yeah, ditto:-)
> Cheers
> S
>> -----Original Message----- From: Stephen Farrell
>> [<>] Sent: Wednesday, January 13, 2016
>> 2:19 AM To: Barry Leiba <<>>; Mike Bishop
>> <<>> Cc: Julian Reschke
>> <<>>;<>; HTTP
>> Working Group <<>> Subject: Re: AD review of
>> draft-ietf-httpbis-alt-svc-10
>> Hiya,
>> Yes, I'm fine that ~eve in Mike's scenario can muck with ~alice as
>> specified. (And such servers still do exist, we have one still.)
>> I'd say best would be to call that attack out in the draft, but I
>> don't think the mitigation for the misbehaviour is to authenticate
>> ~eve, which is what the text below seems to be saying. Authenticating
>> the web server for the name will help of course, but surely the real
>> mitigation for that attack is for the server to scrub the alt-svc
>> headers? (And to be clear, yes the port number thing is fine, I don't
>> think system ports is a deal these days.)
>> All of the above of course also assumes that the "changing host"
>> stuff is worked out well, which I'm sure it is or will be, but
>> haven't checked.
>> S
>> On 13/01/16 00:34, Barry Leiba wrote:
>>> The point with all this, in my mind and with respect to the text we
>>> have, is whether it makes any practical difference any more
>>> whether Eve sets this up on port 23412 or on port 1000.  My
>>> contention is that it doesn't, these days (while it might have in
>>> the past), and that implying that it's safe if the alt-svc is on a
>>> low-numbered port, but not safe (or less safe) if it's on a
>>> high-numbered port isn't doing any service to anyone.
>>> I think we should alert people to the possible
>>> attack/issues/whatever, but that we should not imply that any set
>>> of ports enjoy any sort of immunity against or resistance to those
>>> attacks.
>>> b
>>> On Tue, Jan 12, 2016 at 5:09 PM, Mike Bishop
>>> <<>> wrote:
>>>> More whether you're okay with that text as mitigation to this
>>>> hypothetical attack:
>>>> is a shared server which hosts user home
>>>> pages.  Eve places a config file in her wwwpages directory to add
>>>> an Alt-Svc header to pages served out of
>>>> announcing an alternative service
>>>> for on port 23412.  Bob is using an
>>>> Alt-Svc-capable browser.  After Bob has visited
>>>>, he visits
>>>>  His browser, obeying Eve's
>>>> Alt-Svc header, accesses the alternative service on port 23412,
>>>> where Eve is running a forward proxy that replaces all pages
>>>> except her own with dancing hamsters.
>>>> The original mitigations proposed in the text were "prohibit
>>>> normal users from setting the Alt-Svc header" (which is
>>>> retroactive on pre-Alt-Svc servers) or "prohibit normal users
>>>> from listening for incoming requests" (which is contrary to the
>>>> security model of any shared machine I've used).  This scenario
>>>> originally made me want to require strong auth on any change of
>>>> endpoint, but that breaks the opportunistic security draft.  The
>>>> current text, which I agree does very little, was as strong as we
>>>> could think of a way to make it without breaking the way Opp-Sec
>>>> wanted to work.
>>>> I haven't seen such a server since I was in college, so I don't
>>>> know whether they still actually exist and run that way.  I
>>>> presume they do, even if rare, but I have no data.
>>>> -----Original Message----- From: Stephen Farrell
>>>> [<>] Sent: Tuesday, January 12,
>>>> 2016 12:32 PM To: Mike Bishop <<>>;
>>>> Barry Leiba <<>>; Julian Reschke
>>>> <<>> Cc:<>;
>>>> HTTP Working Group <<>> Subject: Re: AD review
>>>> of draft-ietf-httpbis-alt-svc-10
>>>> On 11/01/16 16:45, Stephen Farrell wrote:
>>>>> On 11/01/16 16:34, Mike Bishop wrote:
>>>>>> Haven't heard back from Stephen on the port-change issue we
>>>>>> wanted him to weigh in on; I sent him a reminder.
>>>>> 2nd one worked:-)
>>>>> Lemme go back and read the mail. Please hassle me if I've not
>>>>> gotten back by tomorrow sometime
>>>> So as I understand it (thanks Barry), the issue is whether or not
>>>> this text is ok:
>>>> "Clients can reduce this risk by imposing stronger requirements
>>>> (e.g. strong authentication) when moving from System Ports to
>>>> User or Dynamic Ports, or from User Ports to Dynamic Ports, as
>>>> defined in Section 6 of [RFC6335]."
>>>> FWIW, I have no problem with that. I'm not sure quite what it's
>>>> telling a client to do, but I don't think there's much difference
>>>> these days between lower numbered and higher numbered ports. (If
>>>> that's wrong, I'm sure someone will correct me:-)
>>>> Note that I've not read the rest of the document, just that bit.
>>>> Cheers, S.
>>>>> Cheers, S.
>>>>>> -----Original Message----- From:<>
>>>>>> [<>] On Behalf Of Barry Leiba Sent:
>>>>>> Sunday, January 10, 2016 9:20 AM To: Julian Reschke
>>>>>> <<>> Cc:
>>>>>><>; HTTP Working Group
>>>>>> <<>> Subject: Re: AD review of
>>>>>> draft-ietf-httpbis-alt-svc-10
>>>>>>>>> I don't think this is a 2119 "MAY": what *else* can it
>>>>>>>>> do?  You have no other guidance about which alternative
>>>>>>>>> alternative to pick, so....  I think this should just
>>>>>>>>> say, "it chooses the most suitable...."
>>>>>>>> Agreed. I haven't changed that yet as it affects
>>>>>>>> normative language but I will unless somebody wants to
>>>>>>>> defend it soonish.
>>>>>>> <
> 6c
>>>>>>> 9b
>>>>> 441bfca5bbc04fff80d1>
>>>>>> Nice.  Is this the last of the updates, or are we still
>>>>>> working on any?  Whenever you're ready to post a new I-D
>>>>>> version, I'll give it a check and request last call.
>>>>>> Barry

Mark Nottingham