Proving Grounds Play : Tre Walkthrough
Proving Grounds Play : Tre Walkthrough
Foothold :
- 預設字典檔 "/usr/share/dirb/wordlists/common.txt" 沒有掃到利用的路徑
- 改用大一點的字典檔 "/usr/share/dirb/wordlists/big.txt" 掃到 mantisbt & adminer.php
- /mantisbt 繼續往下掃發現一個文字檔記錄著 MySQL 連線相關資訊
- 透過找到的 MySQL 連線資訊利用 /adminer.php 登入查到帳號密碼
- 後續利用 hydra 測試找到的一組憑證有效,SSH 登入
PE :
- [CVE-2021-3156] sudo Baron Samedit 標準利用成為 Root
- sudo -l 有 shutdown 權限,以及可以對 /usr/bin/check-system 檔案有修改權限
- 利用修改權限執行 SUID 的利用後提權成功
注意事項 :
- 找不到利用點,且是 Web 時記得換大一點的字典檔
- sudo -l 提供的指令要思考可以如何整合應用
第一步 Rustscan,└─$ rustscan -a 192.168.224.84 --scripts none --ulimit 5000 | tee rustscan
snmp check,└─$ sudo nmap -sU -p 161 192.168.224.84 | tee snmp
nmap check,└─$ sudo nmap -sCV -A -p 22,80,8082 192.168.224.84 | tee nmap
80/tcp open http Apache httpd 2.4.38 ((Debian))
whatweb
80 /
80 /robots.txt
HTTP Header
Page Source
gobuster 發現 /cms、/mantisbt、/adminer.php、etc...
80 /cms
80 /cms/cache
80 /cms/custom
8082 /
8082 /robots.txt
gobuster 8082 沒有發現
80 /mantisbt 是個 php bug tracker 好用的 CMS
繼續往下 gobuster 發現一個文字檔 http://192.168.224.84/mantisbt/config/a.txt
看來是 MySQL 的連線資訊,憑證是 mantissuser:password@123AS
資料庫名稱 : mantis
因為在另外一個網址 /adminer.php 有發現 adminer 4.7.7
adminer 是一個跟 phpmyadmin 相似的工具,但相對較輕量
早年使用雲端 WordPress 時,Azure 提供管理後端 MySQL 資料庫就是採用這個工具
利用剛剛找到的資料庫名稱與帳號密碼登入測試看看
直接進入資料庫管理介面了
在 mantis_user_table 裡面看來有 password
查看內容發現兩組帳號密碼
administrator:XiBejMub
tre:Tr3@123456A!
原本還在想是不是要拿帳號密碼登入到 mantisbt 再做進一步的利用
好在每次有新的帳號密碼都會 hydra 測試一下 SSH
還真的發現了一組有效的憑證 tre:Tr3@123456A!
SSH 進去了,也拿到了第一個 local.txt
開始 PE,cat /etc/passwd,僅有一個 tre 帳號
cat /etc/crontab
sudo -l,可以關機看來沒用
SUID check,指令不多但沒找到可利用的
執行 linpeas
看到熟悉的 [+] [CVE-2021-3156] sudo Baron Samedit
參考 : https://github.com/worawit/CVE-2021-3156
下載 exploit_nss.py 直接利用後提權成功
補充說明 :
解完後看 WriteUP 發現希望我們走的是另外一條路
因為在 sudo -l 中有看到可以執行 shutdown 的指令
另外在確認可寫入的檔案與權限時如下圖,特別顯示了紅字
/usr/bin/check-system
check-system 是系統開機時執行的一支程式,讓我們直接寫一行指令進去吧
chmod +s /usr/bin/bash
接著重新開機 sudo shutdown -r now
開機後登入再度確認 /usr/bin/bash 確認有 s 權限
SUID 利用後 root
留言
張貼留言