難以捉摸的惡意軟件歷險記第二部分:隱藏的 VBA 腳本

難以捉摸的惡意軟件歷險記第二部分:隱藏的 VBA 腳本

本文是無文件惡意軟件系列的一部分。 該系列的所有其他部分:

我是該網站的粉絲 混合分析 (混合分析,以下簡稱HA)。 這是一種惡意軟件動物園,您可以在安全距離內安全地觀察野生“掠食者”而不會受到攻擊。 HA 在安全環境中運行惡意軟件,記錄系統調用、生成的文件和互聯網流量,並為您提供其分析的每個樣本的所有這些結果。 這樣,您就可以不用浪費時間和精力親自解決混淆代碼,而是立即了解黑客的所有意圖。

引起我注意的 HA 示例使用編碼的 JavaScript 或 Visual Basic for Applications (VBA) 腳本,作為宏嵌入到 Word 或 Excel 文檔中並附加到網絡釣魚電子郵件中。 打開後,這些宏會在受害者的計算機上啟動 PowerShell 會話。 黑客通常會將 Base64 編碼的命令流發送到 PowerShell。 這樣做的目的是使響應某些關鍵字的網絡過濾器和防病毒軟件難以檢測到該攻擊。
幸運的是,HA 自動解碼 Base64 並立即以可讀的形式顯示所有內容。 本質上,您不必關注這些腳本的工作原理,因為您將能夠在相應的 HA 部分中看到運行進程的命令的完整輸出。 請參閱下面的示例:

難以捉摸的惡意軟件歷險記第二部分:隱藏的 VBA 腳本

混合解析攔截發送到 PowerShell 的 Base64 編碼命令:

難以捉摸的惡意軟件歷險記第二部分:隱藏的 VBA 腳本

...然後為您解碼它們。 #神奇地

В 上一篇 我創建了自己的稍微混淆的 JavaScript 容器來運行 PowerShell 會話。 然後,我的腳本與許多基於 PowerShell 的惡意軟件一樣,從遠程網站下載以下 PowerShell 腳本。 然後,作為一個例子,我下載了一個無害的 PS,它在屏幕上打印了一條消息。 但時代在變化,現在我建議讓情況復雜化。

PowerShell Empire 和反向 Shell

此練習的目的之一是展示黑客如何(相對)輕鬆地繞過經典的外圍防禦和防病毒軟件。 如果像我這樣沒有編程技能的 IT 博主可以在幾個晚上內 創建無法檢測的惡意軟件 (完全未被發現,FUD),想像一下一個感興趣的年輕黑客的可能性!

如果您是 IT 安全人員,但您的經理不了解這些威脅的潛在影響,只需向他們展示本文即可。

黑客夢想能夠直接訪問受害者的筆記本電腦或服務器。 這很容易做到:黑客所需要的只是獲取首席執行官筆記本電腦上的一些機密文件。

不知何故我已經 我寫的 關於後期製作 PowerShell Empire 運行時。 讓我們記住它是什麼。

它本質上是一個基於 PowerShell 的滲透測試工具,除了許多其他功能之外,還可以輕鬆運行反向 shell。 您可以在以下位置更詳細地探索它 PSE 主頁.

讓我們做一個小實驗。 我在 Amazon Web Services 雲中建立了一個用於惡意軟件測試的安全環境。 您可以按照我的示例快速、安全地展示此漏洞的工作示例(並且不會因在企業範圍內運行病毒而被解僱)。

如果運行 PowerShell Empire 控制台,您將看到如下內容:

難以捉摸的惡意軟件歷險記第二部分:隱藏的 VBA 腳本

首先,在您的黑客計算機上啟動偵聽器進程。 輸入“listener”命令,並使用“set Host”指定係統的IP 地址。 然後使用“執行”命令啟動偵聽器進程(如下)。 因此,在您這邊,您將開始等待來自遠程 shell 的網絡連接:

難以捉摸的惡意軟件歷險記第二部分:隱藏的 VBA 腳本

對於另一方,您需要通過輸入“啟動器”命令來生成代理代碼(見下文)。 這將為遠程代理生成 PowerShell 代碼。 請注意,它是 Base64 編碼的,代表有效負載的第二階段。 換句話說,我的 JavaScript 代碼現在將拉動此代理來運行 PowerShell,而不是無害地在屏幕上顯示文本並連接到我們的遠程 PSE 服務器來運行反向 shell。

難以捉摸的惡意軟件歷險記第二部分:隱藏的 VBA 腳本
反轉貝殼魔法。 此編碼的 PowerShell 命令將連接到我的偵聽器並啟動遠程 shell。

為了向您展示這個實驗,我扮演了一個無辜受害者的角色並打開了 Evil.doc,從而運行了我們的 JavaScript。 還記得第一部分嗎? PowerShell 已配置為不彈出,因此受害者不會注意到任何異常情況。 然而,如果你打開Windows任務管理器,你會看到一個後台PowerShell進程,這對大多數人來說仍然不會引起任何警報。 因為它是常規的 PowerShell,不是嗎?

難以捉摸的惡意軟件歷險記第二部分:隱藏的 VBA 腳本

現在,當您運行 Evil.doc 時,隱藏的後台進程將連接到運行 PowerShell Empire 的服務器。 戴上滲透測試黑客的白帽子,我返回到 PowerShell Empire 控制台,現在我看到一條消息,表明我的遠程代理處於活動狀態。

難以捉摸的惡意軟件歷險記第二部分:隱藏的 VBA 腳本

然後我輸入“interact”命令在 PSE 中打開 shell - 我就在這裡! 簡而言之,我黑進了我前段時間自己搭建的 Taco 服務器。

難以捉摸的惡意軟件歷險記第二部分:隱藏的 VBA 腳本

我剛剛演示的內容不需要您做太多工作。 您可以在午休時間一到兩個小時內輕鬆完成這一切,以提高您的信息安全知識。 這也是了解黑客如何繞過外部安全邊界防禦並潛入您的系統的好方法。

那些認為自己已經建立了牢不可破的防禦體係來抵禦任何類型的入侵的 IT 經理可能會發現它也很有教育意義——當然,如果你能說服他們在你身邊坐得足夠長的話。

回到現實

正如我所料,真正的黑客行為對於普通用戶來說是不可見的,只是我剛才描述的內容的一種變體。 為了收集下一次出版物的材料,我開始在 HA 上尋找示例,它的工作方式與我發明的示例相同。 而且我不需要花很長時間去尋找它——網站上有很多針對這種攻擊技術的選擇。

我最終在 HA 上發現的惡意軟件是嵌入在 Word 文檔中的 VBA 腳本。 也就是說,我什至不需要偽造文檔擴展名,這個惡意軟件實際上是看起來最普通的 Microsoft Word 文檔。 如果您想知道,我選擇了這種名為 RFQ.doc.

我很快了解到,通常無法直接從文檔中提取惡意 VBA 腳本。 黑客將它們壓縮並隱藏,並且它們在Word內置宏工具中不可見。 您將需要一個特殊的工具來提取它。 幸運的是我遇到了掃描儀 Office惡意掃描儀 弗蘭克·鮑德溫. 謝謝弗蘭克。

使用這個工具,我能夠提取出高度混淆的 VBA 代碼。 它看起來像這樣:

難以捉摸的惡意軟件歷險記第二部分:隱藏的 VBA 腳本
混淆是由其領域的專業人士完成的。 令我印象深刻!

攻擊者非常擅長混淆代碼,這與我創建 Evil.doc 的努力不同。 好的,在下一部分中,我們將使用 VBA 調試器,更深入地研究此代碼,並將我們的分析與 HA 結果進行比較。

來源: www.habr.com

添加評論