« Changing Default Port Numbers in JBoss AS 4.x | Main | Apache: Error writing to log file. XXXXXXX messages lost »

01/09/2009

Verifying SSL Ciphers

I've mentioned in other posts that one popular tool for verifying that you have been able to disable SSL2, weak ciphers, null ciphers, etc on any specific web or application server that accepts SSL request is SSLDigger by Foundstone. If you are running Vista or a Mac or Linux workstation, though, SSLDigger isn't an easy option. The older .net framework that SSLDigger relies upon will not install on a Vista pc (at least for me) and the SSLDigger installer fails stating that it needs the .net framework version 1.1. It would behoove the folks at Foundstone/McAfee to update this tool because it is quite useful but I personally have stopped using it in favor of SSLThing.

All you need to run it is openssl and the ability to run shell scripts, which on the Mac and on Linux is quite easy. Cygwin on Windows Vista will give you this too.

Scanning a site to see what ciphers are supported is simply a matter of a one-time update of this script to tell it where to find openssl and then execute it by typing ./sslthing.sh www.hostnameofyoursite.com:sslPortNumber [-v]. The -v switch is optional and will dump some additional information regarding what ciphers were attempted, which ones passed and which ones failed. Here's a sample of the output taken from one of the sites I support:
Update:  I have ported sslthing.sh over to perl and renamed it CryptoNark.  Output is similar but it is colorized and it does a few things that sslthing.sh does not.  First, it tests Null and Anonymous Ciphers.  Secondly, it doesn't send any data over the channel, once the channel is established.  This is useful because you can test it against web servers that require some form of HTTP Authentication and gets results back without actually having to log on.  SSLThing.sh does not support this.  You can find more information about it from the main CryptoNark page on this site.
Testing SSL2...
Testing TLS1...
DHE-RSA-AES256-SHA - 256 bits
AES256-SHA - 256 bits
EDH-RSA-DES-CBC3-SHA - 168 bits
DES-CBC3-SHA - 168 bits
DHE-RSA-AES128-SHA - 128 bits
AES128-SHA - 128 bits
RC4-SHA - 128 bits
RC4-MD5 - 128 bits

The output from running sslthing shows that none of the SSL2 ciphers worked and the only ciphers that worked over TLS were the stronger ones.

If you need information on disabling SSLv2 and/or weak encryption ciphers as part of PCI Remediation activity, please consider the following links for a variety of platforms:

Disabling Weak Encryption and SSLv2 in Apache

Disabling SSLv2 and Weak Encryption on a BigIP LTM-Managed Site

Disabling SSLv2 and Weal Encryption in Tomcat and JBoss 4

Disabling SSLv2, Null, and Weak Ciphers in IIS

Disabling Weak Ciphers and SSLv2 in WebSEAL (part of Tivoli Access Manager for eBusiness

TrackBack

TrackBack URL for this entry:
http://www.typepad.com/services/trackback/6a01156fbc6fe6970c011572288315970b

Listed below are links to weblogs that reference Verifying SSL Ciphers:

Comments

Alibris connects people who love books, music, and movies to thousands of independent sellers around the world. Search over 60 million used & new books, music, & movies to find great deals!


Follow techstacks on Twitter


Add to favourite links

Add to Google Reader or Homepage

Subscribe in NewsGator Online

Add to netvibes

Subscribe in Bloglines

Subscribe to Blogging Techstacks in Rojo

Add Blogging Techstacks to Pageflakes

Add Blogging Techstacks to fwicki

Tip Jar

For Donations

Tip Jar
Creative Commons Attribution-ShareAlike 3.0 Unported
Powered by WebRing.