Skip to content

Latest commit

 

History

History
215 lines (118 loc) · 6.42 KB

File metadata and controls

215 lines (118 loc) · 6.42 KB

Agent Sudo

首先拿到機器 ip 10.10.158.25,確認機器已上線

ping 10.10.158.25

使用 nmap 掃描有哪些服務,同樣地分別使用快速以及慢速但資訊較多的方法來掃

nmap -v 10.10.158.25

nmap -v -sV -p- -sC --min-rate 5000 10.10.158.25

可以看到機器開了以下這些服務:

21      ftp     vsftpd 3.0.3
22      ssh     openssh 7.6
80      http    apache 2.4.29

而既然有 ftp 服務,則可以嘗試使用 anonymous 身分來進行免密碼登入並取得檔案,不過該機器似乎沒有啟用該身分因此無法利用

(忘記截圖ㄌ)

除了 ftp 之外,該機器還有 web 服務,因此可以嘗試打開瀏覽器來看看

可以看到我們會需要修改 HTTP header 的 user-agent 部分成某個 codename

此外我也同時使用 dirsearch 和 gobuster 工具來嘗試找可能的隱藏路徑

dirsearch --url http://10.10.158.25/

gobuster dir -u http://10.10.158.25/ -w /usr/share/seclists/Discovery/Web-Content/common.txt

可以看到沒有太特別的路徑

此外我也嘗試使用 burp 的 sitemap 功能,但是也沒有找到其他 endpoint

因此看起來是要爆破 User-agent,所以往常是使用 burp 的 intruder 工具搭配 Seclists 中的 Usernames/Names/names.txt 字典檔進行爆破

由於一直爆破很久找不出來,因此我偷偷看了一下題目的提示,發現其實把 User-agent 設定成 C 即可導向到 /agent_C_attention.php endpoint,猜測可能是這邊的 codename 就像是網頁中顯示的 R 這樣一個單一字母而非像是名字那樣,加上我粗略檢視及猜測時眼殘沒注意到 http 狀態碼有變 (畢竟內容都長的一樣)

總之,/agent_C_attention.php endpoint 的內容如下

從內容中我們可以注意到有使用者名稱為 chris (代號為 C),而他有弱密碼的問題,因此嘗試用 hydra 工具搭配 rockyou.txt 爆破 ftp 及 ssh 密碼

hydra -l chris -P ~/Desktop/temp/rockyou.txt 10.10.158.25 ftp

hydra -l chris -P ~/Desktop/temp/rockyou.txt 10.10.158.25 ssh

ssh 部分因一直爆破不出,放棄爆破

爆破出了 chris 在 ftp 上的密碼為 crystal,直接進行登入

ftp 10.10.158.25

查看當前目錄

發現有一個 txt 檔案及兩個圖片檔,使用 more 指令查看該文字檔

more To_agentJ.txt

可以看到 agent J 的密碼在另外兩個圖片中,看來是時候進行 stego 了

首先使用 mget 指令下載兩張圖片

mget cute-alien.jpg mget cuie.png

經過一些 stego 的嘗試過後,在使用 binwalk 時發現 cutie.png 裡面有一個 zip 檔案

binwalk -e cutie.png

嘗試使用 unzip 解開,但是出現了 need PK compat. v5.1 (can do v4.6) 的訊息,在上網搜尋一下之後找到這篇文章,改用 7z 進行解壓縮

7z x 8702.zip

解壓過程中發現需要密碼才能解開檔案

嘗試使用 zip2john 搭配 john 及 rockyou.txt,進行 zip 的密碼爆破

zip2john 8702.zip > hash.txt

john --wordlist=~/Desktop/temp/rockyou.txt hash.txt

找到 zip 的密碼為 alien

成功解壓

解壓出來一個 To_agentR.txt,內容如下

其中有一塊很像是 base64,使用工具解碼出來為 Area51

echo "QXJlYTUx" | base64 -d

推測這是另一個 jpg 的 steghide 密碼,嘗試萃取

steghide extract -sf cute-alien.jpg

萃取出一個 message.txt,內容如下

所以我們知道 james (agent J) 的登入密碼為 hackerrules!,嘗試使用 ssh 登入

ssh [email protected]

登入成功,查看目前身分及群組

看起來該帳號有 sudo 可以用,等等的提權應該很輕鬆 ? (才怪)

userflag 在當前家目錄下的 user_flag.txt

b03d975e8c92a7c04146cfa7a5a313c7

在提權之前還有一件事,在題目中有要求要找 the incident of the photo called,也可以看到在家目錄中有一個 Alien_autospy.jpg 的圖片,因此嘗試將圖片複製回 kali 工作環境中

scp [email protected]:~/Alien_autospy.jpg ./agent_sudo/

因為我英文很爛的原因,一直猜不透題目的答案,偷偷看了一下提示發現是要做圖片反向搜尋,而使用了 google 的力量後找到圖片的原網址,連結

然後該題的答案是 Roswell alien autopsy

接著到提權部分,剛才我們檢查身分時發現有 sudo 的權限,但是用 sudo -l 檢查時發現我們沒辦法用 root 身分使用 bash,所以需要想辦法用其他方式提權

根據題目,這邊我們需要找一個 CVE,起初我猜測是與 kernel 相關,因此先查詢 kernel 版本後使用 exploitdb 查找相關 CVE,雖然有找到 (CVE-2018-7273, CVE-2018-18955) 但都不是這題要的答案

查找 kernel version:

cat /proc/version

而後也嘗試使用 LinPEAS 工具進行枚舉,也有發現以下可能的 CVE 漏洞,但都不是這題要的答案

cve-2002-1614
cve-2011-1458
cve-2017-0358
cve-2017-5618
cve-2019-7304
cve-2019-13272
cve-2019-15666
cve-2019-18634
cve-2021-3156
cve-2021-4034
cve-2021-22555
cve-2022-2586
cve-2022-2588
cve-2022-32250

後來在尋找 cve 的過程中,突然想到這題題目名稱與 sudo 有關,於是用 exploitdb 查詢有關 sudo 的相關漏洞,找到了這個 exploit

https://www.exploit-db.com/exploits/47502

裡面的相關說明看起來也與我們前面觀察到的很像,因此推測就是這個 cve (CVE-2019-14287),果真也的確是這個

使用 sudo 漏洞提權,並確認成為了 root 的身分

sudo -u#-1 /bin/bash

rootflag 在 /rootroot.txt

b53a02f55b57d4439e3341834d70c062

此外也從 root.txt 中發現了 agent R 的名字是 Deskel

至此,已取得這台機器的完整權限