Cat Pictures 2 - Writeup

Table of contents

Chào mọi người! là mình đây, người viết blog CTF hôm nay mình chia sẻ với các bạn một bài có tên là Cat Pictures 2
Bước 1: Khởi động máy victim và tiến hành rà quét hệ thống
┌──(root㉿attacker)-[~]
└─# nmap -sV -sC 10.10.108.14
Sau khi rà quét thấy hệ thống mở khá nhiều cổng bao gồm: 22,80,222, 3000, 8080
02 cổng dịch vụ chạy SSH và HTTP, mình sẽ đi khai thác xem sao
Bước 2: Khai thác dịch vụ
Mình truy cập dịch vụ website trên xem có gì
Đầu tiên, trên cổng 80, mình thấy mỗi con mèo ngồi trong hộp :)))
Mình click vào bức ảnh Public mình xuất ra một mớ ảnh nhiều mèo đáng yêu 😺😺😺
Nhìn góc bên trái mình thấy một phím login mình click và phát hiện nền tảng website là Lychee 3.1.1
Kiểm tra trên cổng 8080 là dịch vụ Nginx
Kiểm tra thông tin trên cổng 3000 một trang gitea
Qua đây mình vẫn chưa có thông tin gì để khai thác, mình thử nghiên cứu phần các bức ảnh tại website trên cổng 80 xem có gì không nhé
Đa phần các ảnh đều có dung lượng nhỏ trừ bức ảnh này dung lượng lên đến 7.1 MB khá lớn một cách lạ thường, mình sẽ tải về và xem sao
Sau khi tải về mình thử dùng công cụ giải mã hình ảnh exiftool
chạy và phát hiện một thông tin :8080/764efa883dda1e11db47671c4a3bbd9e.txt
trong phần Title
Mình thử truy cập thử xem sao. Sau khi truy cập mình thấy thông tin đăng nhập trên gitea.
Mình sử dụng thông tin này đăng nhập xem có gì không!
Thấy một lưu trữ có tên là samarium/ansible
Sau đó, mình truy cập sâu vào trong xem mã nguồn mình thấy tập tin flag1.txt
Ok tuyệt vời, sau khi submit xong cờ 1, mình tiếp tục tìm cờ số 2
Bước 3: Khai thác tiếp tục trên nền tảng gitea
Mình đọc nội dung file playbook.yml
Nhận thấy ở đây nó chạy chương trình shell, chạy câu lệnh whoami
và có cả quyền chỉnh sửa file, mình sẽ thử nghiệm chạy thử playbook này. Bạn còn nhớ lúc giải mã file ảnh để lấy thông tin đăng nhập, hệ thống dùng thêm một cổng 1337, do đó, mình chạy thử xem sao nhé
Tại đây có mục Run Ansible Playbook và xem logs trả ra tại Logs
Mình thấy trả ra user: bismuth
Mình thử chỉnh sửa lệnh command thành: ls -la
xem có gì mới mẻ không.
Sau khi chạy xong mình thấy nó trả ra thông tin hay ho, trong đó, có flag2.txt mình sẽ đọc file đó bằng thay thế lệnh cat flag2.txt
và chạy lại tương tự như chạy lệnh ls -la
Kết quả mình đọc được cờ số 2
Bước 4: Khai thác dịch vụ SSH
Qua khai thác ở bước 3 mình thấy cùng đường dẫn của flag2.txt có thư mục .ssh/
mình sẽ truy cập vào đó kiểm tra xem có nhưng tệp tin gì.
Kết quả trả ra:
Mình tiến hành đọc tệp tin id_rsa để có thông tin truy cập SSH
Kết quả tra ra:
Mình sẽ đem mã này và thực hiện xóa đi ký tự thừa
Kết quả trả ra giá trị id_rsa, mình sử dụng để đăng nhập ssh với user bismuth
Kết quả đăng nhập
Bước 5: Leo thang đặc quyền
Mình kiểm tra một số lệnh như id
hoặc sudo -l
không có thông tin gì hữu ích nên mình tải công cụ Linpeas lên máy victim thử khai thác xem sao
Tiến hành chạy linpeas.sh trên máy victim
Mình thấy một loạt lỗ hổng có thể khai thác và thấy CVE-2021-3156 liên quan đến lệnh sudo, mã lỗi này ảnh hưởng từ phiên bản 1.8.31 trở về trước
Kéo lên một đoạn phát hiện version Sudo của hệ điều hành là Version 1.8.21p2 => có thể leo thăng
Thực hiện leo thang đặc quyền, mình sẽ tải mã độc về máy chủ victim
Chạy tạo exploit
$ make
$ ./exploit
Subscribe to my newsletter
Read articles from Mai Thanh Thang directly inside your inbox. Subscribe to the newsletter, and don't miss out.
Written by

Mai Thanh Thang
Mai Thanh Thang
🔹 BlogLabCTF – Khám Phá Thế Giới CTF & An Ninh Mạng 🔹 🚀 Chia sẻ kiến thức về Capture The Flag (CTF), bảo mật web, khai thác lỗ hổng và hacking mũ trắng. 📖 Hướng dẫn thực hành, write-up thử thách, mẹo và kỹ thuật tấn công/phòng thủ. 💻 Dành cho những ai đam mê cybersecurity, muốn nâng cao kỹ năng và tham gia cộng đồng CTF. 👉 Theo dõi để không bỏ lỡ các bài viết mới nhất!