初探偽裝在Office巨集裡的反彈Shell
*本文原創作者:si1ence,本文屬FreeBuf原創獎勵計劃,未經許可禁止轉載
0×0背景
通常的釣魚郵件場景中office的安全問題一直都受到關注,惡意巨集文件製作簡單,相容性強,並且攻擊成本較小,所以整體佔比較大。但是使用惡意巨集進行攻擊,往往需要使用者進行互動,攻擊的隱蔽性不強,結合Powershell的攻擊方式二者結合還是可以搞一點大事情的。
前段時間在接觸到一些基於魚叉郵件攻擊的案例時針對裡面的銀行木馬與攻擊方式進行了簡單的分析,對powershell與office的巨集巧妙結合的方式產生了一些興趣。
0×1主要思路
巨集病毒是一種寄存在文件或模板的巨集中的計算機病毒。一旦開啟這樣的文件,其中的巨集就會被執行,於是巨集病毒就會被啟用,轉移到計算機上,並駐留在Normal模板上。
我們通過工具生成一個有powershelldownloader功能的一個excel,victim伺服器開啟此excel之後會從CC伺服器下載並執行一個基於powershell的payload到本地的計算機後就可以通過CC伺服器當中的Metasploit操控Victim伺服器。
0×2攻擊方法
首先在kali下面生成一個powershell的後門,設定好相關的引數。
本地開啟http的伺服器,kali2整合好了apache的服務,將生成好的後門改名為payload.txt後門複製到網站的根目錄。
通過瀏覽器訪問,確認可以訪問成功。
之後本地設定好Metasploit的引數,開始監聽,這裡的payload主要reverse_https可以避開一些基於流量檢測的安全裝置。
在github下載一個powershell工具用於生成excel後門,這裡使用了Generate-Macro一個評價很不錯的小工具。
連線如下: ofollow,noindex" target="_blank">https://github.com/enigma0x3/Generate-Macro
本地生成excel的後門excel文件設定好相關的引數選項,比較溫馨的是會自動的將巨集與文件打包到一起,目前只支援http協議和https協議,在選擇後門的自啟動方式這裡還是有很多選擇,設定計劃任務也是很多後門常用的手段之一。
victim端開啟此文件後啟用巨集之後,會執行相關的巨集程式碼連線到Metasploit的客戶端,使用shell命令可以可以獲得一個命令列對應的windows系統此時應該會拉起一個cmd.exe
0×3 程序拉起順序
在victim埠檢視相關程序可以發現依次的啟動順序為:svchost.exe-> WmiPrvSE.exe -> powershell.exe ->powershell.exe ->cmd.exe
待使用者執行了巨集程式碼之後,會呼叫windows系統的當中的wmi拉起powershell進行下載並連線遠端CC端。
關鍵程式碼如下:
可以在第一個powershell.exe的啟動引數找到痕跡
第一個powershell.exe之後拉起第二個powershell.exe執行儲存在payload.txt裡面的惡意程式碼,會設定自啟動。
之後在執行了shell命令執行,第二個powershell.exe會主動拉起一個cmd.exe 進行遠端命令執行。
0×4其他行為
可以在登錄檔當中找到已經設定好的自啟動專案,主要內容儲存在C盤C:\Users\Public\config.vbs目錄下並設定隱藏屬性。
生成開機啟動的惡意檔案程式碼如下:
新增到登錄檔的惡意程式碼如下:
通過抓包分析獲取到的流量資料基本都是是亂碼,流量分析起來有一定的困難。
0×5總結
1.如果投遞特定主題及內容的電子郵件來進行攻擊,安全意識薄弱的使用者很容易中招。攻擊者從遠端獲取惡意軟體或者攻擊負載powershell指令碼經過混淆之後進行base64編碼,對於檢測這些攻擊行為無論是靜態掃描還是動態檢測都造成了一定的難度。
2.office本身也有CVE2017-0262、CVE–2017–8759、CVE-2017-0199、CVE-2017-11882等多個安全問題,攻擊手法也有了較多的差異性,作為普通使用者在日常的工作生活當中還是應該提升自身的安全意識,安裝防毒軟體支援國產office,對於陌生的郵件一定要慎點。
*本文原創作者:si1ence,本文屬FreeBuf原創獎勵計劃,未經許可禁止轉載