hackmyvm--Decode

Pres1X發表於2024-07-12

環境

靶機:ip未知

攻擊機kali:192.168.233.128 192.168.56.101

主機探測

鎖定靶機ip為108

埠掃描

nmap -p- -T4 -A 192.168.56.108

常規套路80和22

web打點

dirsearch -u http://192.168.56.108/

訪問robots,txt檔案

訪問/decode

發現其自動新增了/,懷疑是本地檔案包含漏洞,即可以實現目錄穿越

我們對其進行目錄掃描,來確定/decode在目錄的第幾層

返回結果顯示/decode的上面一層就是/

我們讀取/etc/passwd檔案

發現root、steve、ajneya、decoder這四個使用者的可執行檔案是/bin/bash

因為伺服器開放了22埠,所以思路是獲取使用者密碼使用ssh登入

爆破steve使用者的密碼,無果

發現steve的使用者目錄在/usr/share

讀取使用者目錄下的bash歷史命令檔案

decode.csr是一個證書檔案,下載下來使用openssl命令檢視

發現使用者密碼

成功登入steve使用者

檢視網路資訊驗證

提權

我們要拿到user.txt的檔案,但是放在了ajneya使用者的目錄下,需要從steve轉到ajneya使用者

suid提權

find / -user root -perm -4000 -print 2>/dev/null

發現doas,這是一個類似於sudo的二進位制程式

檢視其配置資訊

配置資訊非常簡單,當使用cp命令時steve使用者可以獲取ajneya使用者的許可權

cp是複製命令,結合ssh,靶機作者是引導我們透過ssh的公私鑰驗證去或得ajneya使用者的許可權

思路是透過doas程式短暫使steve使用者擁有ajneya使用者的許可權執行cp命令將ssh公鑰放入/home/ajneya目錄下的authorized_keys檔案中,再使用私鑰去登入使用者

sudo -l檢視sudoers中ajneya使用者的許可權,發現ajneya使用者可以使用root的許可權執行ssh-keygen命令,以此為提權的突破口

首先透過kali的msfvemon製作一個shellcode木馬

ip是本機

埠為9001,並開啟監聽

將製作好的木馬檔案透過ssh後門傳入主機

這裡的id是ajneya使用者的私鑰檔案

透過scp命令成功傳輸

再次觀察ajneya使用者的sudo許可權

需要將檔案存入/opt/目錄下,ajneya方可有許可權執行

聯想到steve使用者的許可權,可以透過steve使用者將lib.so檔案傳入/opt目錄

成功寫入,此時只需要執行ssh-keygen -D 命令即可反彈shell

成功拿到root許可權!

知識點

目錄掃描、埠探測、主機發現、目錄穿越、ssh後門、suid提權、sudo提權、msf木馬

參考

https://nepcodex.com/2022/05/decode-from-hackmyvm-full-walkthrough/

https://pwn.ar/n/decode