[Ach] Idea: catching old clients with sni

Adi Kriegisch adi at kriegisch.at
Tue Nov 12 23:44:34 CET 2013


Hey!

> >> PS: For Java7 this trick will not work as Java7 supports sni and needs the
> >> "strong crypto pack" to enable stronger ciphers.
> > Are there _really_ any Browsers written in Java that people actually use? Or is Java “only” used to access Web-APIs? In the latter case one could specifically narrow access without impacting common browsers. Or am I totally thinking in the wrong direction here? (Or is it just that I'm allergic to Java that I try to find excuses to not support it?)
> Everybody is allergic to java except for java programmers. Java is used by so many things - you can’t work around it - There might come a time (like with flash) that it is in fact obsolete, but that will take a long time. Java is heavily used in webapps and GUIs that use HTTPS. We’ll need to find a solution.
Ok, another idea: not even sni config is needed. For apache, nginx and I am
sure and for lighttpd I assume the following is possible:
Add (for the sake of simplicity) on weak cipher supported by about every
client out there (something like DHE+AES128+RC4+SHA comes to my mind) as a
"last ressort". Then add a condition to your web server redirecting to a
special page based on the cipher:
in apache
 RewriteCond %{ENV:SSL_CIPHER} = "MY_CIPHER_STRING_FROM_ABOVE"
 RewriteRule ...whereever we want to send that guy...

in nginx
 if ($ssl_cipher ~ "MY_CIPHER_STRING_FROM_ABOVE") {
     rewrite ...whereever we want to send that guy...;
 }

This has three advantages:
It is more generic than the sni approach
It doesn't need a modification on the application level
It catches Java7 too

One may even extend that to detecting the client string and redirect to a
certain page for a client (like a page that tells Java people to enable
reasonable crypto).

The disadvantage is obvious: there is a certain overhead in checking that
conditional on every request. When using a default Apache with all/most
modules enabled, people are used to pain and won't notice the difference in
speed. Also compared to a complete SSL/TLS handshake the difference might
be negligible.

-- Adi
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 827 bytes
Desc: Digital signature
URL: <http://lists.cert.at/pipermail/ach/attachments/20131112/c6584439/attachment.sig>


More information about the Ach mailing list