一次摸魚摸到某網站的滲透測試
找到注入點
故事的起因還是因為我太閑了,上班摸魚。

摸著摸著就摸到了某個網站的查詢框。

接著老毛病就犯了,上去就輸入了個1查詢

接著輸入了1’

嘖嘖嘖,這明顯有SQL注入哇。

果斷掏出SQLMAP神器。
結局很完美,不僅存在注入,還是DBA的權限。

網站get shell
利用SQL注入去get shell有幾種常見的方法,一種是跑數據,跑目錄找到網站的管理后臺,進入到后臺想辦法通過文件上傳的等方法去拿shell;
要么就通過報錯,phpinfo界面,404界面等一些方式知道網站絕對路徑,然后去寫入shell,不過相對于mysql來說條件還是有些苛刻的。
接著就是掏出御劍開始掃網站目錄,目錄還挺多。

隨意點開了個admin

我去,竟然存在目錄遍歷。
接著又點開了00/

一口老血噴出,這,還沒開始就結束了???
絕對路徑不請自來,竟然還是最常見的路徑,早知道直接--os-shell跑常見路徑了--

含淚拿著絕對路徑,直接SQLMAP中--os-shell

這里有個點要了解一下,sqlmap中mysql數據庫--os-shell的時候,sqlmap先寫入一個文件上傳shell tmpxxxx.php,再通過文件上傳shell上傳命令執行shell tmpxxxx.php,再利用命令執行shell執行命令。
具體可以去雨九九大佬博客學習一波。
https://www.cnblogs.com/Rain99-/p/13755496.html
所以這里我就直接用sqlmap文件上傳的shell去上傳我的shell了

這里還出現了一個問題,不可以使用assert函數的一句話木馬

最終換了一個木馬成功拿下shell

由于先前拿shell過程太過順利,所以目錄遍歷也沒有仔細看,但是在寫本文的時候,仔細看了下目錄遍歷的文件
成功找到了一個未授權的上傳點,也就是說
也可以通過未授權上傳+目錄遍歷找到文件上傳的文件夾去拿shell。

初步信息搜集
既然拿到了shell,那么第一步肯定是信息搜集了。



從上面可以得知,當前用戶為system,server2012的服務器,有內網環境,安裝了殺軟ESET NOD32。
接下來看下內網的存活機器。
探測內網存活機器的方法很多,Nbtscan,icmp 協議,arp-scan,scanline等等都可以,這里為了方便操作,直接上線到CS上再進行操作。
免殺shellcode完美上線

這里我用的K8gege的 Ladon插件進行掃描內網得,主要掃描出來的結果格式比較好看。

以下是掃描的部分結果

可以看出內網是存在大量存活的主機的,雖然這臺WEB服務器并沒有域環境,但是掃描的結果中有著AD等敏感詞匯,初步估計內網至少有兩個域環境,這時候就需要橫向進一步做信息搜集,并刻畫出內網拓撲圖。
橫向滲透&進一步信息搜集
內網第一波那必須的是MS17-010了,這里我同樣用K8gege的Ladon。

可以看出內網確實有幾臺機器可能存在MS17-010,這里一臺一臺打太浪費時間了,主要有不確定性,他的WEB服務器是裝了殺軟的,內網也應該是有殺軟的,所以這里我將目標放在一臺可能是域內主機的服務器上。

接著就是cs開啟socks代理,準備代理MSF開懟。

本地KALI虛擬機掛代理也很簡單,先
sudo vim /etc/proxychains.conf
在最下面插入一行CS的ip和剛剛開的端口

保存后再proxychains msfconsole 啟動MSF就可以了
接著EXP打目標機器時出了點問題,應該是機器上有殺軟攔截了交互執行。所以找了個每次只能加載一條命令的EXP添加了一個用戶上去。
由于上一次看這個站在一個月之前,寫本文的時候復現17010沒有成功,因為先前在目標機器添加了個賬號,所以就登上去看了下,發現服務器已經被某位不知名的大黑闊給上了勒索軟件。

所以接下來的復現過程就沒有繼續,后面也沒有繼續看這個內網了。
接下來域環境滲透大概的思路講下吧:
先判斷目標機器是否處于域環境,如果處于域環境,
首先上線CS提權讀HASH,看看能不能讀到域管賬號,或者看看有沒有域管進程,去進程注入,然后通過HASH傳遞去拿下域控,然后導出域內所有HASH。
如果上面方法不行的話,MS14-068、MS14-025、CVE-2020-1472這些常見域內提權方式也可以嘗試一下。
如果還不行,掃描域內的WEB或者常見設備,從設備漏洞或者WEB漏洞入手獲取權限,再一步一步往域控機器上打。
但是要注意一點,整個內網滲透的過程中,一定要明確目標,否則會浪費很多時間,同時思路要靈活多變,不要死磕一個點。
后記:
復現內網沒有完成,感覺人生很失敗。