You are on page 1of 9

Chạy Nmap để scan port:

Bị chặn ping, ta sử dụng “-Pn” để kiểm tra lại:

Truy cập http://49.236.211.69:8000/:

Có thông tin từ trang “index.php” về phiên bản của Framework được sử dụng:
Laravel v8.73.2 (PHP v7.4.30)
Sử dụng “Dirsearch” để tìm kiếm các path ẩn:
Sau khi kiểm tra các file như “robots.txt” hay “web.config” không có gì đáng lưu ý.
Chúng ta kiểm tra đến đường dẫn upload:

Kiểm tra source của page:


Thấy có file javascript khả nghi:

Sử dụng console của Chrome Developer Tool, tắt tính năng chạy Javascript:

Reload lại trang ta có kết quả:

Vì server sử dụng php, ta upload một đoạn mã php để kiểm tra phpinfo:
<?php phpinfo(); ?>
Kết quả thu được:
Server trả ra lỗi, điều này có nghĩa là chỉ được upload những định dạng ảnh hoặc gif, vậy
làm sao có thể upload được webshell php? Ta cùng nhớ về 1 trong những lỗ hổng nổi
tiếng nhất của PHP năm 2018: phar deserialization. Vậy ta thử đổi extension của file vừa
up sang .phar và thử lại:

Điều này cho thấy đoạn code php của chúng ta đã được thực thi bởi phía server.Giờ thì,
thực hiện việc upload webshell: <?php system($_GET['cmd']); ?>
Và kết quả thu được:
Sau một hồi mày mò, chúng ta biết được trên server có netcat:

Vì mình không có VPS nên sẽ dùng tạm ngrok để tunnel:

Set up listen với netcat:

Thành công lấy được reverse-shell.


Kiểm tra “ps aux” để xem các process đang chạy dưới quyền root:
( ngoài ra ta có thể dùng lệnh : find / -type f -perm -04000 -ls 2>/dev/null )

Nhận thấy php suid root, sử dụng GTFObins để tìm câu lệnh khai thác.
CMD="/bin/sh"
php -r "pcntl_exec('/bin/sh', ['-p']);"

Ta có thể lên quyền root:

Đọc file root.txt kết quả thu được:

Nhận thấy JFIF là header của file jpg. Ta thực hiện việc mã hóa content ảnh dưới dạng
base64:
a=$(php -r 'readfile(getenv("LFILE"));'|base64)
echo $a
(hoặc có thể dùng lệnh base64 root.txt > image ở đây cũng có thể get về bằng cách đưa ra
thư mục public rồi tải về)

Sử dụng Base64 to Image để decode ra ảnh:


Dowload hình ảnh về
Stegranoraphy
Đọc chuỗi file root vừa tìm được

Stegcracker
Sử dụng stegcracker để tìm passphrase
Ta đã được : freedom
Tiếp tục extract file ,tìm được 1 file data.zip

Unzip get flag thôi


Đời không như là mơ

Fcrackzip
Tiến hành crack tiếp :D

FLAG: Lab2{_c0ngr4tul4t0n_y0u_4r3_1s_th3_b3st_}

You might also like