sábado, octubre 09, 2010

Fingerprinting SQL Server

Uno de los fallos de seguridad más tontos que ha tenido a lo largo de su historia el motor SQL Server de Microsoft fue de configuración por defecto. La posibilidad de poder instalar los motores con el usuario sa como administrador por defecto, y poder dejarlo sin contraseña, hizo que los ataques buscando el puerto 1433 proliferaran por doquier.

Cuando ayer vi que se había publicado una herramienta que hace fingerprinting en SQL Server pensé que para probarla iba a tener que montar un entorno, ya que, erróneamente, supuse que todo el mundo habría capado el puerto 1433 de SQL Server y no habría ningún servidor expuesto a Internet que tuviera abierto este puerto.

Sin embargo, como con nmap se pueden escanear grandes rangos sin despeinarse, decidí probar suerte en mis rangos de red vecinales. Y sí, encontré muchos más servidores SQL Server expuestos a Internet que lo que previamente mal-supuse. Obtuve varios ejemplos con un sencillo y rápido:

nmap -p 1433 83.60.0.0/16 -Pn -n

La herramienta para hacer fingerprinting a SQL Server se llama Exploit Next Generation SQL Fingerprint. Tendrá licencia GPLv3, y su funcionamiento es muy sencillo. Basta con darle la dirección IP y esperar resultados.



Figura 1: SQL Server 2000 SP3a


Figura 2: SQL Server no detectado. Han filtrado las pruebas


Figura 3: SQL Server 2000 SP4

También me llamó la atención encontrar muchos SQL Servers antiguos. Pensé que encontraría versiones más modernas, pero esas deben estar detrás de firewalls como Dios manda.

Con la nueva reorientación basada en roles para FOCA, tal vez vayamos incorporando este tipo de soluciones cuando se catalogue un servidor con un determinado rol, así que si conoceís cosas que os molen del estilo, pasádnoslas.

Saludos Malignos!

Entradas populares