Searchsploit是命令列(command line)形式的Exploit-DB,它能夠離線時使用。Exploit-DB列出了很多已知的漏洞,加速滲透測試工程師尋找漏洞時不需要自己編寫程式碼,只需要修改部分的參數,抑或是按照步驟一步一步就能夠進行攻擊。
這個範例使用靶機Optimum來說明什麼時候能夠用searchsploit,目前我們已知該網頁使用HttpFileServer,簡稱HFS,下一步利用searchsploit搜尋相關的漏洞。
searchsploit hfs
如果想搜尋hfs的漏洞只需要searchsploit後面加hfs,如果是想搜尋wordpress的漏洞就可以輸入searchsploit wordpress
。這種搜尋會尋找所有路徑以及漏洞的名稱,如果吻合就會列出結果。
searchsploit還有其他的選項能夠指定
-c
指定搜尋時大小寫是敏感的,例如Apache不等於apache-t
指定只搜尋漏洞的名稱-s
指嚴格搜尋,例如wordpress 5.6.2,那搜尋結果就不會包含wordpress 5.6.2 < 5.6.x-cve
指定某個收錄至cve漏洞的paylaod從網頁資訊可得知,HFS的版本為2.3,我們利用49584.py嘗試遠端存取目標靶機。
將python檔下載下來,並查看裡面編寫的內容。
searchsploit -m 49584.py
vim 49584.py
-m
將檔案下載至本地,如果單純想先瀏覽內容是否可行,可以輸入指令-examine
這個綁案裡指定本地主機、本地的port、遠端主機以及遠端的port,這個參數是根據機器的不同而有所差異,所以需要修改。
這個python檔案裡執行了reverse shell,我們須先監聽指定的port,這裡我指定port 4444。
nc -lvnp 4444
接著執行程式碼
python3 49584.py
最後,我們就取得了目標靶機的控制權。
Searchsploit這個工具有時候會需要使用者具備一定的程式語言能力,了解程式碼的編寫目的,才能夠進行修改的動作,它並不會自動化整個流程,對於沒有程式語言基礎能力的人來說會有點吃力。