Recopilar Información y Realizar un Ataque por Fuerza Bruta contra SQL Server utilizando SQLPing 3

  • Posted on: 28 June 2016
  • By: ReYDeS

Una técnica para capturar información desde un servidor SQL Server es utilizando la herramienta SQLPing 3. Como SQL Server soporta varias instancias, es necesario para el servidor comunicar hacia el cliente los detalles de cada instancia SQL Server existentes en el servidor. SQLPing 3 utiliza el mecanismo de descubrimiento inherente en SQL Server para consultar al servidor por información detallada sobre la capacidad de conectividad del servidor y mostrarlas al usuario.

El servicio de resolución SQL o el servicio de navegación SQL operan sobre el puerto 1434 UDP. Las consultas pueden ser enviadas como paquetes de difusión hacia subredes específicas de tal manera en muchos casos, donde existe una firewall con floja seguridad, es posible consultar una subred completa con un simple paquete.

Se ejecuta la herramienta SQLPing 3, la cual es una herramienta visual.

Existen tres tipos de escaneos disponibles factibles de realizar utilizando la herramienta. Activa (Un Rango de direcciones IP), Activa (Una lista de dirección IP), y oculta.

Se selecciona el primer tipo de escaneo, definiendo adicionalmente la dirección IP de inicio en el campo “Start” o Inicio, y la dirección IP final en el campo “End” o final. Luego se procede a hacer clic en el botón de nombre “Scan” o Escan.

En la respuesta obtenida por la herramienta SQLPing 3, se puede encontrar información sobre el nombre del servidor SQL, nombre de la instancia (MSSQLServer es el nombre por defecto de la instancia). Estado del cluster (¿El servidor es parte de un cluster?), versión (devuelve sólo la versión base, pero es fácil identificar diferentes versiones). Netlib soporta detalles (Incluyendo puertos TCP, nombres de tubería, etc).

SQLPing 3 también permite realizar un ataque por fuerza bruta contra usuarios y contraseñas. Para la siguiente demostración se define en el campo “User List” o Lista de Usuarios, un archivo conteniendo los nombres de usuarios a evaluar. En el campo “Password List” o “Lista de Contraseñas”, se define un archivo conteniendo las probables contraseñas. En este escenario de evaluación ha sido factible identificar la contraseña correcta para el usuario “sa”.

De hecho se pueden encontrar administradores quienes han cambiado el puerto TCP por defecto de un servidor SQL atendiendo en un socket TCP/IP, pero un atacante utilizando SQLPing 3 puede fácilmente preguntar al servidor hacia donde se movió el puerto.

La información recogida por SQLPing 3 puede también identificar objetivo suculentos, los cuales son usualmente de misión crítica. Toda esta información expuesta ayuda al atacante a comprometer de alguna manera la instalación del SQL Server. Eso sin mencionar la capacidad de identificar usuarios y contraseñas válidos.

Fuentes:

http://www.sqlsecurity.com/downloads

Sobre el Autor


Alonso Eduardo Caballero Quezada - ReYDeS
Instructor y Consultor Independiente en Ciberseguridad
Correo Electrónico: ReYDeS@gmail.com
Twitter: https://twitter.com/Alonso_ReYDeS
LinkedIn: https://pe.linkedin.com/in/alonsocaballeroquezada/
Facebook: https://www.facebook.com/alonsoreydes
Youtube: https://www.youtube.com/c/AlonsoCaballero


Curso de Informática Forense