Hoy vamos a realizar pruebas de penetración de Microsoft SQL usando scripts NMAP para recuperar información básica como el nombre de la base de datos, nombres de usuario, nombre de tablas, etc. desde el servidor SQL que se ejecuta en el sistema operativo Windows. En nuestro artículo anterior , habíamos configurado el servidor Microsoft SQL en Windows 10.
Requisito
Atacante: Kali Linux (NMAP)
Destino: Windows 10 (MS SQL Server)
¡¡Empecemos!!
Escanear puerto 1433
Abra el terminal en Kali Linux y escanee la IP de destino para el puerto 1433 usando el comando nmap.
Enumerar información de versión
El siguiente comando intentará determinar la información de configuración y versión para las instancias de Microsoft SQL Server.Atacante de fuerza bruta
El siguiente comando intentará determinar el nombre de usuario y la contraseña mediante un ataque de fuerza bruta contra MS-SQL por medio del diccionario de nombre de usuario y contraseña.- Nombre de usuario: ignite y contraseña: 12345
- Nombre de usuario: sa y contraseña: admin123
Ejecute la consulta MS-SQL
Una vez que haya recuperado la credencial de inicio de sesión, use estas credenciales en el script NMAP para ejecutar la consulta MS –SQL. A continuación se intentará ejecutar cierta consulta "sp_database" contra el servidor Microsoft SQL.La consulta especificada "sp_databases" forma parte de los procedimientos almacenados de registro y volca una lista de nombres de bases de datos de una instancia de SQL Server.
Verifique la configuración del servidor Microsoft SQL
El siguiente comando intentará describir la configuración del servidor Microsoft SQL pasando la credencial de inicio de sesión como argumento a través de la secuencia de comandos nmap.Obtenga una lista de tablas
El siguiente comando intentará obtener una lista de tablas desde el servidor Microsoft SQL pasando la credencial de inicio de sesión como argumento a través del script nmap.Enumerar información de NetBIOS
La siguiente secuencia de comandos NMAP enumerará la información de los servicios remotos de Microsoft SQL con la autenticación NTLM habilitada.El envío de una solicitud de autenticación NTLM de MS-TDS con un dominio no válido y credenciales nulas hará que el servicio remoto responda con un mensaje NTLMSSP que revela información que incluye NetBIOS, DNS y la versión de compilación del sistema operativo.
Volcar hashes de contraseñas
El siguiente comando volcará los valores hash de contraseña de un servidor MS-SQL en un formato adecuado para descifrar por herramientas como John-the-ripper. Para hacerlo, el usuario debe tener los privilegios de base de datos apropiados.Identificar el propietario de la base de datos.
El siguiente comando ejecutará una consulta en las instancias de Microsoft SQL Server para obtener una lista de las bases de datos a las que un usuario tiene acceso. Para hacerlo, el usuario debe tener los privilegios de base de datos apropiados. Por lo tanto, hemos pasado el nombre de usuario y la contraseña como argumento a través del script NMAP.Ms-SQL permite la opción XP_cmdshell
El xp_cmdshell es una función de Microsoft SQL Server que permite a los administradores del sistema ejecutar un comando del sistema operativo. Por defecto, la opción xp_cmdshell está deshabilitada.De la imagen a continuación puede ver que hemos habilitado la función xp_cmdshell ejecutando la siguiente declaración dentro de la base de datos maestra.
EXEC sp_configure 'xp_cmdshell';
Ahora guarde la configuración anterior a través de la siguiente declaración:
Reconfiguración;
Explotar Función Xp_cmdshell
Ahora, el siguiente script NMAP intentará ejecutar un comando utilizando el shell de comandos de Microsoft SQL Server si se encuentra que xp_cmdshell está habilitado en el servidor de destino.Contraseña en blanco conduce a acceso no autorizado
Si el administrador de Microsoft-SQL Server dejó la contraseña en blanco para iniciar sesión, entonces el atacante puede iniciar sesión en el servidor de la base de datos, de la siguiente imagen puede ver que estamos explorando la propiedad de la cuenta de un usuario "sa".Aquí se mantuvo el "espacio en blanco" como contraseña para el usuario "sa". Como sabemos de forma predeterminada, sa es el administrador del servidor MS-SQL y ahora su contraseña es un espacio en blanco, por lo tanto, las posibilidades de que el atacante obtenga acceso no autorizado al servidor aumentarán.
No hay comentarios:
Publicar un comentario