
Herramienta avanzada de pruebas de penetración en MSSQL para movimiento lateral, ejecución de comandos, relé NTLM y ataques de fuerza bruta a través de servidores vinculados y múltiples métodos de autenticación.
MSSqlPwner es una herramienta de pentesting avanzada y versátil diseñada para interactuar y comprometer servidores MSSQL de manera fluida.
Esta herramienta está basada en impacket, lo que permite a los atacantes autenticarse en bases de datos mediante contraseñas en texto claro, hashes NTLM y tickets Kerberos.
Con MSSqlPwner, los usuarios pueden ejecutar comandos personalizados a través de diversos métodos, incluyendo ensamblados personalizados, xp_cmdshell, sp_oacreate (Procedimientos de Automatización OLE) y mucho más.
La herramienta comienza con una enumeración recursiva de servidores vinculados y posibles suplantaciones para recopilar todas las cadenas posibles para la ejecución de comandos.
Además, MSSqlPwner se puede utilizar para capacidades de retransmisión NTLM, utilizando funciones como xp_dirtree, xp_subdirs, xp_fileexist.
Esta herramienta puede ser utilizada para evaluaciones de movimiento lateral y exploración de servidores vinculados.
Si el usuario autenticado de MSSQL no tiene permiso para realizar ciertas operaciones, la herramienta puede encontrar la cadena correcta que permita la ejecución de comandos. Por ejemplo, si tu usuario no puede ejecutar comandos en el contexto actual, la herramienta construirá una cadena que utilice un servidor vinculado y se conecte de vuelta a nuestro servidor con privilegios elevados.
Empezar con mssqlpwner es muy sencillo. Puedes hacerlo extrayendo directamente del repositorio:
pip install 'mssqlpwner@git+https://github.com/ScorpionesLabs/MSSqlPwner.git'
O, usando pipx —y deberías—, prueba esto:
pipx install 'git+https://github.com/ScorpionesLabs/MSSqlPwner.git'
Y ahora puedes usar tu nueva herramienta favorita:
mssqlpwner -hashes ':0CB6948805F797BF2A82807973B89537' 'Administrator'@172.16.2.12 -windows-auth interactive
Esta herramienta es compatible con múltiples métodos de autenticación que se describen a continuación.
Esta herramienta está diseñada para profesionales de seguridad e investigadores únicamente con fines de prueba y no debe utilizarse para fines ilegales.
interactive: permite usar la herramienta de forma interactiva con ejecución en vivo.enumerate: enumera los servidores vinculados y las cadenas.get-chain-list obtiene la lista de cadenas:
-filter-hostname HOSTNAME - Obtiene resultados filtrados con un nombre de host específico.get-link-server-list obtiene la lista de servidores vinculados.set-chain Establece el ID de la cadena (¡Solo para modo interactivo!)
CHAIN - El ID de la cadena a establecer.set-link-server Establece el servidor vinculado (¡Solo para modo interactivo!)
LINK - El servidor vinculado a establecer.get-rev2self-queries recupera consultas para revertir a SELF (¡Solo para modo interactivo!).get-adsi-provider-list recupera la lista de proveedores ADSI.rev2self revierte a SELF (¡Solo para modo interactivo!).exec Ejecuta comandos usando exec en el servidor local o en servidores vinculados.
COMMAND - El comando a ejecutar.-command_execution_method - El método de ejecución de comandos a utilizar.
xp_cmdshell - Ejecuta comandos usando el procedimiento xp_cmdshell (Por defecto).sp_oacreate - Ejecuta comandos usando el procedimiento Ole Automation Procedure (Debe usarse como "cmd /c algo").retrieve-password Recuperación de contraseñas de proveedores ADSI.
-listen-port - El puerto en el que escuchar (Por defecto: 1389).-adsi-provider - Proveedor ADSI a utilizar (si no se define, se elegirá automáticamente).-arch - La arquitectura a utilizar (si no se define, se elegirá automáticamente).
x86 - Usar arquitectura x86.x64 - Usar arquitectura x64.ntlm-relay - Fuerza retransmisión NTLM a un servidor.
SMB_SERVER - El servidor SMB al que retransmitir.-relay-method - El método de retransmisión a utilizar.
xp_dirtree - Usar procedimiento xp_dirtree (Por defecto).xp_subdirs - Usar procedimiento xp_subdirs.xp_fileexist - Usar procedimiento xp_fileexist (En algunas situaciones este módulo debe ejecutarse desde una cadena privilegiada).