En uno de mis últimos proyectos había que revisar la seguridad de nuestros publicadores web situados en una DMZ, concretamente revisar las posibles vulnerabilidades existentes en el puerto 443.
Recordé a mi compañero John, experto en Seguridad, que me había hablado sobre una herramienta denominada SSLScan y desde la Comunidad DragonJar, hace poco había comentado algo sobre ella. Bien pues os hago una breve introducción.
SSLScan
Es una escaner de puertos SSL la cual nos facilita información sobre que tipo de cifrado soporta el puerto al que nos conectamos, que tipo de cifrado es el preferido, que protocolos SSL están soportados, información sobre el certificado instalado, permitiéndonos una salida a fichero en formato XML con el que, posteriormente, podemos elaborar informes, etc.
SSLScan [Opciones] [host:puerto | host]
Opciones:
– Targets=<file> Un archivo que contiene una lista de hosts para comprobar. Los anfitriones pueden ser suministrados con los puertos de host (por ejemplo: puerto).
– no-failed Indique solamente cifras aceptadas (por defecto es de enumerar todos los cifrados).
– SSL2 Sólo comprobar cifras SSLv2.
– SSL3 Sólo comprobar cifras SSLv3.
– pk=<file> Un archivo que contiene la clave privada o PKCS # 12 del archivo que contiene una clave privada / certificado par (como la producida por MSIE y Netscape).
– pkpass=<password> La contraseña de la clave privada o archivo PKCS # 12.
– certs=<file> Un archivo que contiene certificados de cliente con formato PEM/ASN1.
– starttls Ejecuta un TLS de inicio para poner a prueba las capacidades SSL de un servicio de SMTP con soporte TLS. Esta opción fuerza automáticamente cifrados TLS, no es necesario especificarlo.
– xml=<file> Los resultados se exportan a un archive XML.
– version = Muestra la version del programa
– help = Muestra la pantalla de ayuda
Lo podemos descargar desde aqui, Sourceforge.net.
Os dejo un ejemplo:
_
___ ___| |___ ___ __ _ _ __
/ __/ __| / __|/ __/ _` | ‘_
__ __ __ (_| (_| | | | |
|___/___/_|___/_____,_|_| |_|Version 1.8.2-win
http://www.titania.co.uk
Copyright Ian Ventura-Whiting 2009
Compiled against OpenSSL 0.9.8m 25 Feb 2010Testing SSL server www.bolsasymercados.es on port 443
Supported Server Cipher(s):
Rejected SSLv2 168 bits DES-CBC3-MD5
Rejected SSLv2 56 bits DES-CBC-MD5
Rejected SSLv2 128 bits IDEA-CBC-MD5
Rejected SSLv2 40 bits EXP-RC2-CBC-MD5
Rejected SSLv2 128 bits RC2-CBC-MD5
Rejected SSLv2 40 bits EXP-RC4-MD5
Rejected SSLv2 128 bits RC4-MD5
Rejected SSLv3 256 bits ADH-AES256-SHA
Rejected SSLv3 256 bits DHE-RSA-AES256-SHA
Rejected SSLv3 256 bits DHE-DSS-AES256-SHA
Rejected SSLv3 256 bits AES256-SHA
Rejected SSLv3 128 bits ADH-AES128-SHA
Rejected SSLv3 128 bits DHE-RSA-AES128-SHA
Rejected SSLv3 128 bits DHE-DSS-AES128-SHA
Rejected SSLv3 128 bits AES128-SHA
Rejected SSLv3 168 bits ADH-DES-CBC3-SHA
Rejected SSLv3 56 bits ADH-DES-CBC-SHA
Rejected SSLv3 40 bits EXP-ADH-DES-CBC-SHA
Rejected SSLv3 128 bits ADH-RC4-MD5
Rejected SSLv3 40 bits EXP-ADH-RC4-MD5
Rejected SSLv3 168 bits EDH-RSA-DES-CBC3-SHA
Rejected SSLv3 56 bits EDH-RSA-DES-CBC-SHA
Rejected SSLv3 40 bits EXP-EDH-RSA-DES-CBC-SHA
Rejected SSLv3 168 bits EDH-DSS-DES-CBC3-SHA
Rejected SSLv3 56 bits EDH-DSS-DES-CBC-SHA
Rejected SSLv3 40 bits EXP-EDH-DSS-DES-CBC-SHA
Accepted SSLv3 168 bits DES-CBC3-SHA
Rejected SSLv3 56 bits DES-CBC-SHA
Rejected SSLv3 40 bits EXP-DES-CBC-SHA
Rejected SSLv3 128 bits IDEA-CBC-SHA
Rejected SSLv3 40 bits EXP-RC2-CBC-MD5
Accepted SSLv3 128 bits RC4-SHA
Accepted SSLv3 128 bits RC4-MD5
Rejected SSLv3 40 bits EXP-RC4-MD5
Rejected SSLv3 0 bits NULL-SHA
Rejected SSLv3 0 bits NULL-MD5
Rejected TLSv1 256 bits ADH-AES256-SHA
Rejected TLSv1 256 bits DHE-RSA-AES256-SHA
Rejected TLSv1 256 bits DHE-DSS-AES256-SHA
Rejected TLSv1 256 bits AES256-SHA
Rejected TLSv1 128 bits ADH-AES128-SHA
Rejected TLSv1 128 bits DHE-RSA-AES128-SHA
Rejected TLSv1 128 bits DHE-DSS-AES128-SHA
Rejected TLSv1 128 bits AES128-SHA
Rejected TLSv1 168 bits ADH-DES-CBC3-SHA
Rejected TLSv1 56 bits ADH-DES-CBC-SHA
Rejected TLSv1 40 bits EXP-ADH-DES-CBC-SHA
Rejected TLSv1 128 bits ADH-RC4-MD5
Rejected TLSv1 40 bits EXP-ADH-RC4-MD5
Rejected TLSv1 168 bits EDH-RSA-DES-CBC3-SHA
Rejected TLSv1 56 bits EDH-RSA-DES-CBC-SHA
Rejected TLSv1 40 bits EXP-EDH-RSA-DES-CBC-SHA
Rejected TLSv1 168 bits EDH-DSS-DES-CBC3-SHA
Rejected TLSv1 56 bits EDH-DSS-DES-CBC-SHA
Rejected TLSv1 40 bits EXP-EDH-DSS-DES-CBC-SHA
Accepted TLSv1 168 bits DES-CBC3-SHA
Rejected TLSv1 56 bits DES-CBC-SHA
Rejected TLSv1 40 bits EXP-DES-CBC-SHA
Rejected TLSv1 128 bits IDEA-CBC-SHA
Rejected TLSv1 40 bits EXP-RC2-CBC-MD5
Accepted TLSv1 128 bits RC4-SHA
Accepted TLSv1 128 bits RC4-MD5
Rejected TLSv1 40 bits EXP-RC4-MD5
Rejected TLSv1 0 bits NULL-SHA
Rejected TLSv1 0 bits NULL-MD5Prefered Server Cipher(s):
SSLv3 128 bits RC4-MD5
TLSv1 128 bits RC4-MD5SSL Certificate:
Version: 2
Serial Number: -4294967295
Signature Algorithm: sha1WithRSAEncryption
Issuer: /C=US/O=Thawte, Inc./CN=Thawte SSL CA
Not valid before: Jun 29 00:00:00 2012 GMT
Not valid after: Jun 29 23:59:59 2014 GMT
Subject: /C=ES/ST=Madrid/L=Madrid/O=Bolsas Mercados Espanoles soc Holding Mercados Sistemas Finan SA/OU=Desarrollo de Mercado/CN=www.bolsasymercados.es
Public Key Algorithm: rsaEncryption
RSA Public Key: (2048 bit)
Modulus (2048 bit):
00:dd:2c:c5:f1:76:d0:05:41:5f:7a:c7:57:a4:6b:
61:1e:91:27:f4:cf:1a:3f:48:1d:80:6d:1e:80:6e:
aa:f3:b1:44:36:3c:a8:7a:79:74:ea:41:90:39:5d:
3c:70:2d:fa:08:15:54:c4:0c:3a:61:0c:81:ba:d7:
d9:16:b5:a9:5d:99:06:c5:74:73:c3:b5:12:ab:38:
1e:97:3a:21:72:99:05:b5:a8:51:ab:9c:37:25:cc:
1f:08:f8:a9:b9:81:fb:53:13:bc:d8:7c:d8:eb:1f:
75:46:c7:f1:40:bd:e8:7f:c1:fe:8c:63:cf:75:20:
53:36:4f:23:d4:13:ea:02:a9:b6:fb:07:6a:9c:e8:
3f:aa:64:fa:90:e0:4a:0f:aa:0c:dc:0d:67:c7:25:
37:ee:06:fd:e8:4e:cf:82:bd:5e:66:2b:92:80:9f:
95:88:5c:3e:87:0c:e2:ea:8e:3e:ef:7a:f8:d8:6e:
a0:cb:ef:1a:28:a1:73:ec:d1:b2:ac:d6:1d:ea:84:
c8:47:8f:13:8e:66:b1:bf:b8:c0:e5:49:09:1c:e0:
15:03:dd:d0:ae:68:b1:33:78:8a:79:43:29:14:0b:
8d:9e:65:ef:bc:c3:bc:bc:1e:0d:0d:bb:3d:2d:75:
dd:63:ce:56:6a:36:85:cb:3b:ac:34:96:87:69:fa:
30:31
Exponent: 65537 (0x10001)
X509v3 Extensions:
X509v3 Subject Alternative Name:
DNS:www.bolsasymercados.es
X509v3 Basic Constraints: critical
CA:FALSE
X509v3 CRL Distribution Points:
URI:http://svr-ov-crl.thawte.com/ThawteOV.crlX509v3 Extended Key Usage:
TLS Web Server Authentication, TLS Web Client Authentication
Authority Information Access:
OCSP – URI:http://ocsp.thawte.comVerify Certificate:
unable to get local issuer certificate
De las opciones más útiles está la de poder cargar en un fichero un listado de dominios/direcciones para poder erscanearlas una detrás de otra.
[youtube=http://www.youtube.com/watch?v=pQJfZr3HJRk&w=420&h=315]
Otros artículos muy interesants al respecto: