Re: Comments on Explicit/Trusted Proxy

Yoav Nir <ynir@checkpoint.com> Sat, 27 April 2013 20:11 UTC

Return-Path: <ietf-http-wg-request@listhub.w3.org>
X-Original-To: ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com
Delivered-To: ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 231B321F98C9 for <ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com>; Sat, 27 Apr 2013 13:11:35 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -10.599
X-Spam-Level:
X-Spam-Status: No, score=-10.599 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, RCVD_IN_DNSWL_HI=-8]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id xhveyUPKnE-4 for <ietfarch-httpbisa-archive-bis2Juki@ietfa.amsl.com>; Sat, 27 Apr 2013 13:11:34 -0700 (PDT)
Received: from frink.w3.org (frink.w3.org [128.30.52.56]) by ietfa.amsl.com (Postfix) with ESMTP id D755121F98C8 for <httpbisa-archive-bis2Juki@lists.ietf.org>; Sat, 27 Apr 2013 13:11:33 -0700 (PDT)
Received: from lists by frink.w3.org with local (Exim 4.72) (envelope-from <ietf-http-wg-request@listhub.w3.org>) id 1UWBRW-0000px-5c for ietf-http-wg-dist@listhub.w3.org; Sat, 27 Apr 2013 20:09:58 +0000
Resent-Date: Sat, 27 Apr 2013 20:09:58 +0000
Resent-Message-Id: <E1UWBRW-0000px-5c@frink.w3.org>
Received: from lisa.w3.org ([128.30.52.41]) by frink.w3.org with esmtp (Exim 4.72) (envelope-from <ynir@checkpoint.com>) id 1UWBRN-0000pC-GY for ietf-http-wg@listhub.w3.org; Sat, 27 Apr 2013 20:09:49 +0000
Received: from smtp.checkpoint.com ([194.29.34.68]) by lisa.w3.org with esmtp (Exim 4.72) (envelope-from <ynir@checkpoint.com>) id 1UWBRL-0000QC-TM for ietf-http-wg@w3.org; Sat, 27 Apr 2013 20:09:49 +0000
Received: from DAG-EX10.ad.checkpoint.com ([194.29.34.150]) by smtp.checkpoint.com (8.13.8/8.13.8) with ESMTP id r3RK9Gwe005159; Sat, 27 Apr 2013 23:09:16 +0300
X-CheckPoint: {517C2F5E-1-1B221DC2-1FFFF}
Received: from IL-EX10.ad.checkpoint.com ([169.254.2.54]) by DAG-EX10.ad.checkpoint.com ([169.254.3.48]) with mapi id 14.02.0342.003; Sat, 27 Apr 2013 23:09:15 +0300
From: Yoav Nir <ynir@checkpoint.com>
To: Peter Lepeska <bizzbyster@gmail.com>
CC: Stephen Farrell <stephen.farrell@cs.tcd.ie>, HTTP Working Group <ietf-http-wg@w3.org>
Thread-Topic: Comments on Explicit/Trusted Proxy
Thread-Index: AQHOQfUoCWVqQcjQZk+AE3cF54VbB5joH3qAgAAiEgCAAg5rgA==
Date: Sat, 27 Apr 2013 20:09:15 +0000
Message-ID: <D6607F77-16B6-4434-82A5-2862615F673C@checkpoint.com>
References: <14A09626-8397-4656-A042-FEFDDD017C9F@mnot.net> <CANmPAYH60+wmeYQAikUd4ps3HdPQSm80TeZbMW37LioBYVj-7A@mail.gmail.com> <CAA4WUYjOPgCse6giEmy3f_MzRTC3K25oAWeAavHnzywc5pL91w@mail.gmail.com> <CANmPAYGr8QDhmLR50UzWYWK_fNYzGbF_P9EN0dOadmL-wQy61g@mail.gmail.com> <CAA4WUYjDoRFwPJNWzRqQHdBbV+DjF0mv8OO4RWTBSmh6=Dcnxw@mail.gmail.com> <CANmPAYEirEfpM6kEuxaM3OF7hsjWu8_Lr0aWfQ+btkEGOH3Vsw@mail.gmail.com> <CAA4WUYjGaZRVm3NtmT5qO3j7QKNZZiX7zBEV-pDhK0VGGSxuUg@mail.gmail.com> <896F1026-30C6-4397-B265-67285BFA9DDA@gmail.com> <517A5A3D.8030600@cs.tcd.ie> <19554DFB-5B05-495A-B006-EE55A32F3C44@gmail.com>
In-Reply-To: <19554DFB-5B05-495A-B006-EE55A32F3C44@gmail.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-originating-ip: [172.31.20.113]
x-kse-antivirus-interceptor-info: scan successful
x-kse-antivirus-info: Clean
x-cpdlp: 110f31b70c6962969f465d7d1c8a2fea09887f49c1
Content-Type: text/plain; charset="utf-8"
Content-ID: <8064A3FC190AEE4A8762D2EF5826E437@ad.checkpoint.com>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
Received-SPF: permerror client-ip=194.29.34.68; envelope-from=ynir@checkpoint.com; helo=smtp.checkpoint.com
X-W3C-Hub-Spam-Status: No, score=-6.9
X-W3C-Hub-Spam-Report: AWL=0.001, BAYES_00=-1.9, RCVD_IN_DNSWL_HI=-5, RP_MATCHES_RCVD=-0.001
X-W3C-Scan-Sig: lisa.w3.org 1UWBRL-0000QC-TM 2498a62085c7138ba41fed5857fd84dd
X-Original-To: ietf-http-wg@w3.org
Subject: Re: Comments on Explicit/Trusted Proxy
Archived-At: <http://www.w3.org/mid/D6607F77-16B6-4434-82A5-2862615F673C@checkpoint.com>
Resent-From: ietf-http-wg@w3.org
X-Mailing-List: <ietf-http-wg@w3.org> archive/latest/17633
X-Loop: ietf-http-wg@w3.org
Resent-Sender: ietf-http-wg-request@w3.org
Precedence: list
List-Id: <ietf-http-wg.w3.org>
List-Help: <http://www.w3.org/Mail/>
List-Post: <mailto:ietf-http-wg@w3.org>
List-Unsubscribe: <mailto:ietf-http-wg-request@w3.org?subject=unsubscribe>

Here's one (I'm a co-author)

http://tools.ietf.org/html/draft-mcgrew-tls-proxy-server

One reason this was rejected is that MitM proxies are used for corporate firewalls and national firewalls, so the use case seems to be "Alice wants to post to Twitter trashing president Assad. Mallory who works for the secret police would like to catch her, so he installs a proxy."  The feedback said that if whoever wants the inspection (call them Mallory for now) can configure trust on Alice's client, they might as well install spyware instead. Another idea that was floated was to have the client send the keys to the trusted proxy. That way, the client could send just the encryption key (but not the hash key) so the proxy would be able to decrypt, but not forge. I didn't like that, but I did try to write a draft describing it:
 
http://tools.ietf.org/html/draft-nir-tls-keyshare

I still think this solution is unwieldy.

Anyway, the TLS WG can re-consider things. NPN was suggested several times. If there is a use case that is not "Mallory wants to see what Alice is telling Bob", a request from this WG would go a long way, regardless of which mechanism is preferred for enabling a trusted proxy.

Yoav

On Apr 26, 2013, at 3:45 PM, Peter Lepeska <bizzbyster@gmail.com> wrote:

> Hi Stephen. 
> 
> I was responding to Roberto's draft, which was submitted to this list. But my suggestion crosses over into TLS changes so I'll read up on the 5 previous discussions and post to the TLS group if appropriate.
> 
> Thanks,
> 
> Peter
> 
> 
> On Apr 26, 2013, at 6:43 AM, Stephen Farrell <stephen.farrell@cs.tcd.ie> wrote:
> 
>> 
>> Hi Peter,
>> 
>> If you want to modify TLS, then that's work that would
>> need to be done in the TLS working group and not here.
>> Note that this'd be about the 5th time someone has asked
>> if we want to standardise how to do a MITM attack on TLS,
>> which is a protocol designed specifically to deter MITM
>> attacks, and the answer has always been an emphatic no.
>> I cannot see that changing. As a current security AD I
>> know I'd have a huge problem with standardising that
>> attack as I believe would my co-AD who's responsible
>> for the TLS WG.
>> 
>> If you want to propose changes to the semantics of HTTP,
>> and supporting MITM proxies would be one such IMO, then
>> I guess take that up with Mark. Or not, since I don't
>> believe this WG is chartered to develop new semantics
>> for HTTP at present.
>> 
>> Regard,
>> Stephen.
>> 
>> On 04/25/2013 09:38 PM, Peter Lepeska wrote:
>>> Some comments on Roberto's doc:
>>> 
>>> In the case where the user-agent has been configured with Chris as a
>>>  trusted-proxy, either Anne's connect-stream MUST use either a null-
>>>  cipher, or Anne MUST provide the decryption key material to Chris
>>>  immediately after tunnel establishment, and before any data traverses
>>>  the tunnel.
>>> 
>>> This seems like a showstopper to me. Even if we can get past the problems associated with a trusted proxy in general, I can't see getting acceptance of any approach that involves sending a session key from one machine to another. But why not just use two full SSL sessions like the typical MITM proxy (http://crypto.stanford.edu/ssl-mitm/ or http://mitmproxy.org) approach? But instead of forging certificates like they do, just give the trusted proxy its own certificate and then display both the trusted proxy certificate and the content server certificate in the browser when the user wants info about the two point-to-point SSL sessions.
>>> 
>>> "For the purpose of this document, it is assumed that the user locates
>>>  a piece of paper upon a wall and reads it, typing these proxy
>>>  settings into a configuration field for their user-agent.  This is
>>>  obviously not the only possible configuration mechanism, but it may,
>>>  sadly, be the most secure.  It is assumed that alternate distribution
>>>  techniques may be discussed.
>>> "
>>> 
>>> While explicit proxy configuration may be the most secure, it is very difficult to manage for mobile devices especially, as others have mentioned on this list. Transparent interception is the more widely adopted approach -- not because of security but because of stability and manageability. 
>>> 
>>> What about "transparent" proxies that advertise themselves? Is it possible to use NPN (https://technotes.googlecode.com/git/nextprotoneg.html) to advertise the presence of an intercepting proxy for 443 traffic? Then the user can be notified that a proxy wants to be trusted for X reasons and the user would then make the opt in or opt out decision. Then, similar to SPDY, the presence of the trusted proxy in the end-to-end path could be signaled to the end user via icons in the browser.
>>> 
>>> MITM is used today with no user knowledge. At least in this approach, a user has the ability to opt in or out and to also be aware of the presence of the intermediate proxy.
>>> 
>>> Thoughts?
>>> 
>>> Peter
>>> 
>>> 
>>> On Apr 24, 2013, at 12:49 PM, William Chan (陈智昌) <willchan@chromium.org> wrote:
>>> 
>>>> Yep, but no, it hasn't gone anywhere.
>>>> 
>>>> 
>>>> On Wed, Apr 24, 2013 at 7:44 AM, Peter Lepeska <bizzbyster@gmail.com> wrote:
>>>> Hi William,
>>>> 
>>>> Is this draft by Roberto Peon the one you were referring to?
>>>> 
>>>> http://tools.ietf.org/html/draft-rpeon-httpbis-exproxy-00
>>>> 
>>>> Has this gone anywhere?
>>>> 
>>>> I'm looking to design and build a "trusted proxy" that aligns with the browser development roadmap/vision in order to provide web acceleration functionality and so would like to get involved in this process if still active.
>>>> 
>>>> Thanks,
>>>> 
>>>> Peter
>>>> 
>>>> 
>>>> On Mon, Apr 30, 2012 at 5:57 PM, William Chan (陈智昌) <willchan@chromium.org> wrote:
>>>> On the contrary, I think it's great to have multiple proposals. If you have your own vision for how this should work, please send it out! :) My statement was simply an FYI, not a "back off, we've got this!"
>>>> 
>>>> On Mon, Apr 30, 2012 at 2:45 PM, Peter Lepeska <bizzbyster@gmail.com> wrote:
>>>> Perfect then I'll sit tight.
>>>> 
>>>> Thanks,
>>>> 
>>>> Peter
>>>> 
>>>> 
>>>> On Mon, Apr 30, 2012 at 5:43 PM, William Chan (陈智昌) <willchan@chromium.org> wrote:
>>>> FYI, we (google spdy team) have been discussing a "trusted proxy" internally and I think Roberto's got a draft in the works.
>>>> 
>>>> 
>>>> On Mon, Apr 30, 2012 at 2:22 PM, Peter Lepeska <bizzbyster@gmail.com> wrote:
>>>> Hi Mark,
>>>> 
>>>> Earlier this group discussed the idea of a "trusted proxy". Does that fall under the HTTP/2.0 category?
>>>> 
>>>> I may have some cycles for this.
>>>> 
>>>> Thanks,
>>>> 
>>>> Peter
>>>> 
>>>> 
>>>> On Fri, Apr 27, 2012 at 1:28 AM, Mark Nottingham <mnot@mnot.net> wrote:
>>>> Just a reminder that we're still accepting proposals for:
>>>> 
>>>> 1. HTTP/2.0
>>>> 2. New HTTP authentication schemes
>>>> 
>>>> As per our charter <http://datatracker.ietf.org/wg/httpbis/charter/>.
>>>> 
>>>> So far, we've received the following proposals applicable to HTTP/2.0:
>>>> <http://trac.tools.ietf.org/wg/httpbis/trac/wiki/Http2Proposals>
>>>> 
>>>> But none yet for authentication schemes:
>>>> <http://trac.tools.ietf.org/wg/httpbis/trac/wiki/HttpAuthProposals>
>>>> 
>>>> As communicated in Paris, the deadline for proposals is 15 June, 2012. It's fine if your proposal isn't complete, but we do need to have a  good sense of it by then, for discussion.
>>>> 
>>>> Regards,
>>>> 
>>>> --
>>>> Mark Nottingham   http://www.mnot.net/
>>>> 
>>>> 
>>>> 
>>>> 
>>>> 
>>>> 
>>>> 
>>>> 
>>>> 
>>>> 
>>> 
>>> 
> 
> 
> 
> Email secured by Check Point