初探偽裝在Office宏里的反彈Shell
0x0
背景
通常的釣魚郵件場景中office的安全問題一直都受到關注,惡意宏文檔製作簡單,兼容性強,並且攻擊成本較小,所以整體佔比較大。但是使用惡意宏進行攻擊,往往需要用戶進行交互,攻擊的隱蔽性不強,結合Powershell的攻擊方式二者結合還是可以搞一點大事情的。
前段時間在接觸到一些基於魚叉郵件攻擊的案例時針對裡面的銀行木馬與攻擊方式進行了簡單的分析,對powershell與office的宏巧妙結合的方式產生了一些興趣。
0x1
主要思路
宏病毒是一種寄存在文檔或模板的宏中的計算機病毒。一旦打開這樣的文檔,其中的宏就會被執行,於是宏病毒就會被激活,轉移到計算機上,並駐留在Normal模板上。
我們通過工具生成一個有powershelldownloader功能的一個excel,victim伺服器打開此excel之後會從CC伺服器下載並執行一個基於powershell的payload到本地的計算機後就可以通過CC伺服器當中的Metasploit操控Victim伺服器。
0x2
攻擊方法
首先在kali下面生成一個powershell的後門,設置好相關的參數。
本地開啟http的伺服器,kali2集成好了apache的服務,將生成好的後門改名為payload.txt後門複製到網站的根目錄。
通過瀏覽器訪問,確認可以訪問成功。
之後本地設置好Metasploit的參數,開始監聽,這裡的payload主要reverse_https可以避開一些基於流量檢測的安全設備。
在github下載一個powershell工具用於生成excel後門,這裡使用了Generate-Macro一個評價很不錯的小工具。
連接如下:https://github.com/enigma0x3/Generate-Macro
本地生成excel的後門excel文檔設置好相關的參數選項,比較溫馨的是會自動的將宏與文檔打包到一起,目前只支持http協議和https協議,在選擇後門的自啟動方式這裡還是有很多選擇,設置計劃任務也是很多後門常用的手段之一。
victim端打開此文檔後啟用宏之後,會執行相關的宏代碼連接到Metasploit的客戶端,使用shell命令可以可以獲得一個命令行對應的windows系統此時應該會拉起一個cmd.exe
0x3 進程拉起順序
在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 進行遠程命令執行。
0x4
其他行為
可以在註冊表當中找到已經設置好的自啟動項目,主要內容保存在C盤C:UsersPublicconfig.vbs目錄下並設置隱藏屬性。
生成開機啟動的惡意文件代碼如下:添加到註冊表的惡意代碼如下:
通過抓包分析獲取到的流量數據基本都是是亂碼,流量分析起來有一定的困難。
0x5
總結
1.如果投遞特定主題及內容的電子郵件來進行攻擊,安全意識薄弱的用戶很容易中招。攻擊者從遠程獲取惡意軟體或者攻擊負載powershell腳本經過混淆之後進行base64編碼,對於檢測這些攻擊行為無論是靜態掃描還是動態檢測都造成了一定的難度。
2.office本身也有CVE2017-0262、CVE–2017–8759、CVE-2017-0199、CVE-2017-11882等多個安全問題,攻擊手法也有了較多的差異性,作為普通用戶在日常的工作生活當中還是應該提升自身的安全意識,安裝殺毒軟體支持國產office,對於陌生的郵件一定要慎點。
*本文原創作者:si1ence,本文屬FreeBuf原創獎勵計劃,未經許可禁止轉載
※從惡意流量看2018十大互聯網安全趨勢
※Vdex Extractor:從Vdex文件反編譯和提取Android Dex位元組碼
TAG:FreeBuf |