On Mon, 16 Dec 2013 22:29:39 -0600
"William A. Rowe Jr." <wr...@rowe-clan.net> wrote:

> On Sat, 14 Dec 2013 10:25:00 +0100
> Kaspar Brand <httpd-dev.2...@velox.ch> wrote:
> 
> > On 14.12.2013 09:36, William A. Rowe Jr. wrote:
> > > I beg to differ.  We are left with a question of whether you are
> > > responsible to defend the current behavior, or whether I can
> > > simply rely on RFC2817 to document that you are wrong,
> > 
> > RFC 2817 is irrelevant in the context of https: URIs (see its
> > abstract and section 8.1).
> 
> Kaspar, I point you to section 5.2 for the definition of CONNECT.
> 
> Are you aware of a more authoritative source for the CONNECT HTTP
> verb? I'm happy to parse that with you.
> 
> My defect is really very simple, Here's a request to proxy.example.com
> created in order to tunnel an https connection to server.example.com;
> 
>    CONNECT server.example.com:443 HTTP/1.1
>    Host: server.example.com:443
>    Proxy-Authorization: basic aGVsbG86d29ybGQ=
> 
> In this case, the admin wants no other network user to share the same
> auth identity, therefore the server-to-proxy connection is https://.
> 
> In receiving the request, server.example.com != proxy.example.com and
> things fall apart.  The defect is really that simple to describe.

The defect is actually a little more insideous.  If you toggle the Host
to break RFC2616's definition, and use the proxy.example.com identity
instead, the end result will be the same - it will still mismatch and
report that the SNI host should have matched server.example.com.  That
is even true when connecting non-ssl to server.example.com:80.

If the hostname header value was already transposed from the user-agent
request headers into a proxy request headers at the time that test
occurs then we might have a more complex problem.

Reply via email to