AnsweredAssumed Answered

Switching webserver vhosts based on the negotiated SSL cipher, is it possible?

Question asked by Peter Fischer on Nov 22, 2013

Discussing the flaws of SSL and its implementation in the wake of the Snowdon revelations, I found that my C{E,F}Os would like to have our web apps as secure as possible, but on the other hand not lose a single customer due to an unresponding browser.

 

 

Now I'm looking for a possibility to switch to different name-based vhosts, but not based on value of the HTTP-Host-header, but on the negotiated SSL cipher.

Is that possible?

 

 

The use case would be similar to the following:

 

 

Users access the

 

 

"insecure SSL-Webserver https://www.example.tld/"

- all and every cipher, even the "null" ones.

- configured to negotiate from the strongest to the weakest ciphers

- has no-cache policy set

- has all SEO tools set, this site will show up on your favourite search engine.

- all negotiations succeed always - *this is a feature* - this ssl webserver is a mere sensor for client abilities.

 

 

After the "officially safe, but really unsafe" connection is established, the "good ones" (above the "cipher strength border") will be served with a HTTP 302 to

 

 

"secure SSL-Webserver https://safe.example.tld/"

- the application runs here

- only strongest ciphers (above the "cipher strength border")

- only decent browsers can connect (but you have been warned).

- no-SEO headers, this site will not show up on your favourite search engine.

 

 

The "bad ones" (below the "cipher strength border" or without SNI) will be served with a HTTP 302 to

 

 

"non-SSL webserver" http://get-a-decent-browser.example.tld/en-EN/why-cant-i-access-this-website/?os-guess=WinXP&browser-guess=IE7"

which explains with scripted HOW-TOs how to get a decent web browsing setup, using the educated guess of https://www.example.tld/ appended as GET parameters.

 

 

Any shade between this two extremes are also imagineable, like starting ths safe application https://safe.example.tld/, but popping up a info bar that with the used cipher <name here> several flaws have been descovered and it will be phased-out in Q1 of 2014.

 

 

Is this feasable?

(Should I have expressed anything in a unclear way, please ask. I'm not a native english speaker, I think in my mother tongue and have to translate.)

Outcomes