欧美成人精品手机在线观看_69视频国产_动漫精品第一页_日韩中文字幕网 - 日本欧美一区二区

LOGO OA教程 ERP教程 模切知識交流 PMS教程 CRM教程 開發(fā)文檔 其他文檔  
 
網(wǎng)站管理員

新型持久化之WinSxS二進制文件依賴劫持(支持Win10,Win11)

admin
2024年1月10日 10:22 本文熱度 789

1.技術(shù)背景



我們探索了一種創(chuàng)新方法, 該方法利用了受信任的WinSxS文件夾中常見的可執(zhí)行文件, 并配合經(jīng)典的DLL搜索順序劫持技術(shù)來利用。該方法允許威脅行為者繞過高權(quán)限要求, 在Windows文件夾(特別是WinSxS)內(nèi)的應(yīng)用程序中執(zhí)行惡意代碼, 并且無需在攻擊鏈中添加額外的二進制文件。除此以外, 該技術(shù)還有助于從任何位置執(zhí)行惡意代碼, 并且與WIndow10和Windows11兼容。

在這篇文章中, 詳細(xì)解釋了攻擊流的基本原理, 我們將討論DLL搜索順序劫持的經(jīng)典實現(xiàn)優(yōu)缺點, 并將其與我們最新的實現(xiàn)進行比較, 此外我們還描述了該技術(shù)的功能和含義,闡明了其有效性、潛在影響和防御者檢測的方法。

借助自己的相關(guān)工具, 我們探索了WinSxS文件夾中的每個二進制文件, 并識別了該文件夾中可用的多個可執(zhí)行文件, 這些可執(zhí)行文件可以被濫用來加載和執(zhí)行惡意文件。與經(jīng)典的DLL搜索順序劫持相比, 這種方法降低了防御軟件和事件響應(yīng)程序檢測命中的可能性, 因為惡意代碼是從位于Windows文件夾WinSxS下的受信任二進制文件的內(nèi)存空間運行的。

這種方法使我們能夠改進和簡化經(jīng)典DLL搜索順序劫持的一般感染流程, 雖然可以檢測到此活動, 但它并不是操作系統(tǒng)的直接漏洞, 相反,這種行為可能是由Windows本身的本地行為和為開發(fā)人員和最終用戶提供的功能引起的。


2.Dll搜索順序劫持



DLL搜索順序劫持是威脅行為者的一種簡單但高效的技術(shù)。該技術(shù)利用Windows 應(yīng)用程序加載動態(tài)鏈接庫 (DLL) 和外部可執(zhí)行文件的方式,利用那些未指定所需文件 (EXE/DLL) 完整路徑的應(yīng)用程序。與之相反,這些應(yīng)用程序依賴于預(yù)定義的搜索順序來定位必要的 DLL,使其容易受到威脅行為者的操控。

根據(jù)MITRE ATT&CK 的說法,攻擊者可以采用多種方法來劫持 DLL 加載過程。然而,所有這些方法都有一個共同的要求:目標(biāo)應(yīng)用程序不應(yīng)指定所需內(nèi)容的完整路徑。這種情況常常是由于軟件開發(fā)中的疏忽而出現(xiàn)的。隨后,威脅行為者將惡意 DLL 放置在搜索順序優(yōu)先于合法 DLL 目錄的目錄中。通常,此操作的首選位置是目標(biāo)應(yīng)用程序的工作目錄,因為它在搜索順序中占據(jù)顯著位置。

了解 Windows 如何加載 DLL 和可執(zhí)行文件對于掌握這項技術(shù)至關(guān)重要。當(dāng)應(yīng)用程序啟動加載過程時,它遵循特定的順序,該順序指示系統(tǒng)為查找和利用必要的組件(例如 DLL 和可執(zhí)行文件)而采取的步驟。此過程可確保應(yīng)用程序的高效運行,使它們能夠無縫訪問共享資源和功能。它還提供了一種替代方法來遞歸地定位可能需要但開發(fā)人員未包含在應(yīng)用程序安裝包中的資源。

Windows操作系統(tǒng)搜索和加載外部資源時遵循的大致流程如下:

  1. 啟動應(yīng)用程序的目錄。

  2. 文件夾“C:\Windows\System32”。

  3. 文件夾“C:\Windows\System”。

  4. 文件夾“C:\Windows”。

  5. 當(dāng)前工作目錄。

  6. 系統(tǒng) PATH 環(huán)境變量中列出的目錄。

  7. 用戶的 PATH 環(huán)境變量中列出的目錄。

操控此加載過程允許威脅參與者在受信任進程的內(nèi)存空間中注入和執(zhí)行未經(jīng)授權(quán)的代碼,從而有效地欺騙安全工具和分析人員。

如前所述,這種技術(shù)在網(wǎng)絡(luò)安全領(lǐng)域并不新鮮,并且被威脅行為者廣泛使用,無論其目標(biāo)、原籍國或所使用的工具類型如何。根據(jù) MITRE 的說法,我們總結(jié)了一些已知在入侵中使用此技術(shù)的威脅行為者,以供參考:

組織利用方法
APT41APT41 使用搜索順序劫持來執(zhí)行惡意負(fù)載,例如 Winnti RAT
Aquatic PandaAquatic Panda 使用 DLL 搜索順序劫持將 exe、dll 和 dat 文件加載到內(nèi)存中
BackdoorDiplomacyBackdoorDiplomacy 執(zhí)行了DLL搜索順序劫持
EvilnumEvilnum 使用惡意軟件變種 TerraTV 加載位于 TeamViewer 目錄中的惡意 DLL,而不是位于系統(tǒng)文件夾中的原始 Windows DLL
menuPassmenuPass使用了DLL搜索順序劫持
RTMRTM使用搜索順序劫持來強制TeamViewer加載惡意DLL
Threat Group-3390Threat Group-3390 已執(zhí)行 DLL 搜索順序劫持來執(zhí)行其有效負(fù)載
Tonto TeamTonto團隊濫用合法且經(jīng)過簽名的Microsoft可執(zhí)行文件來啟動惡意 DLL
WhiteflyWhitefly 使用搜索順序劫持來運行加載程序 Vcrodat

威脅行為者采用DLL搜索順序劫持的動機源于其微妙性和有效性。通過操控受信任的應(yīng)用程序,威脅行為者可以實現(xiàn)未經(jīng)授權(quán)的訪問、執(zhí)行任意代碼,并在看似合法的進程中隱藏其活動。這種技術(shù)只是為他們提供了一種破壞系統(tǒng)、逃避檢測和實現(xiàn)惡意目標(biāo)的隱秘手段。


3.WinSxS怎么樣?



WinSxS(Windows Side by Side)文件夾是Windows操作系統(tǒng)維護和恢復(fù)中的關(guān)鍵組件,通常位于C:\Windows\WinSxS。它的主要功能是并排存儲重要系統(tǒng)文件的各個版本。當(dāng) Windows 進行更新時,它會在 WinSxS 文件夾中保留以前版本的組件。因此,WinSxS 文件夾的大小往往會隨著每次 Windows 更新而增加。

WinSxS 文件夾的主要用途包括:

  1. 版本管理:它存儲動態(tài)鏈接庫(DLL)和系統(tǒng)文件的多個版本,確保根據(jù)需要進行高效訪問。此功能對于保持與各種應(yīng)用程序的兼容性至關(guān)重要,因為不同的程序可能需要同一組件的特定版本。

  2. 系統(tǒng)完整性: WinSxS 文件夾通過防止不正確或損壞的系統(tǒng)文件版本替換正確的系統(tǒng)文件來幫助維護系統(tǒng)的完整性。這種保護措施保證了操作系統(tǒng)的穩(wěn)定性和可靠性。

  3. 動態(tài)激活:該文件夾有助于動態(tài)激活或停用 Windows 功能,無需單獨安裝。這種靈活性允許用戶根據(jù)需要啟用或禁用特定功能。

實際上,在安裝 Windows 組件、更新或軟件應(yīng)用程序期間,文件系統(tǒng)地存儲在 WinSxS 目錄中。該目錄充當(dāng)系統(tǒng)文件(特別是 DLL)的集中存儲庫,這些文件在各種應(yīng)用程序和組件之間共享,以確保兼容性并防止?jié)撛诘臎_突。

在 Windows Server 等服務(wù)器操作系統(tǒng)中,WinSxS 文件夾充當(dāng)增強服務(wù)器功能的附加角色。它保存系統(tǒng)恢復(fù)所需的關(guān)鍵文件,有助于恢復(fù)過程。此外,它還充當(dāng)一種保護機制,使用戶能夠在必要時從有問題的系統(tǒng)更新恢復(fù)到穩(wěn)定狀態(tài),從而有助于系統(tǒng)的彈性和可靠性。

雖然依賴 WinSxS 文件夾的漏洞利用并不是全新的,并且之前已被用于繞過用戶帳戶控制 (UAC),但這是該 Windows 功能在紅隊操作或真實攻擊場景中的潛力首次得到廣泛記錄與經(jīng)典的 DLL 搜索順序劫持技術(shù)相結(jié)合。


4.WinSxS二進制文件依賴劫持



我們的研究團隊通過關(guān)注位于 Windows WinSxS 文件夾中的應(yīng)用程序,改進了經(jīng)典的DLL搜索順序劫持技術(shù)。此方法與以前已知的實現(xiàn)的區(qū)別在于,故意針對駐留在WinSxS文件夾中的文件。

這種方法的主要優(yōu)點包括:

  1. 規(guī)避高權(quán)限要求:通過針對WinSxS文件夾中的應(yīng)用程序,無需提升權(quán)限即可在Windows文件夾中的應(yīng)用程序中執(zhí)行惡意代碼。

  2. 消除對額外二進制文件的需求:利用 WinSxS 文件夾無需在攻擊鏈中引入額外的、可能可檢測到的二進制文件。由于 Windows 已經(jīng)在 WinSxS 文件夾中索引了這些文件,因此無需攜帶自己的易受攻擊的應(yīng)用程序。

  3. 增強隱蔽性:在從 WinSxS 文件夾運行的應(yīng)用程序的內(nèi)存空間中執(zhí)行惡意代碼可以增強隱蔽性并最大限度地降低檢測風(fēng)險。安全工具和分析師可能不太可能標(biāo)記這種方法,因為它利用了 Windows 環(huán)境中已有的可信組件。

通過以這種方式優(yōu)化經(jīng)典的 DLL 搜索順序劫持技術(shù),我們發(fā)現(xiàn)了一種更有效、更規(guī)避的方法,用于危害系統(tǒng)并在受信任的應(yīng)用程序中執(zhí)行未經(jīng)授權(quán)的代碼。這一發(fā)現(xiàn)強調(diào)了理解 Windows 組件的復(fù)雜性及其交互對于防御者和安全從業(yè)者的重要性。

在調(diào)查的早期階段,我們的主要目標(biāo)是識別 WinSxS 文件夾中的二進制文件中的潛在漏洞。為了實現(xiàn)這一目標(biāo),我們結(jié)合使用了兩個關(guān)鍵工具:進程監(jiān)視器和專門為此調(diào)查目的開發(fā)的定制工具。我們的目標(biāo)是深入了解執(zhí)行 WinSxS 文件夾中的二進制文件時系統(tǒng)的行為,并識別駐留在此受信任 Windows 文件夾中的易受攻擊的文件。

一旦識別出有漏洞的二進制文件,我們的注意力就轉(zhuǎn)移到理解 Windows 在搜索系統(tǒng)文件(包括 DLL)時遵循的精確加載順序。正如前面提到的,序列需要評估各種位置,包括啟動應(yīng)用程序的目錄、幾個 Windows 文件夾、系統(tǒng) PATH 環(huán)境變量中指定的目錄,尤其是當(dāng)前工作目錄。

有了這些信息,我們通過策略性地將自定義 DLL 放入指定的目錄中來結(jié)束利用過程,密切模仿目標(biāo)二進制文件所需的合法 DLL 的名稱。當(dāng)執(zhí)行易受攻擊的二進制文件時,它會嘗試加載所需的 DLL。Windows 根據(jù)已建立的加載順序系統(tǒng)地執(zhí)行此搜索,并在此過程的早期對當(dāng)前工作目錄進行關(guān)鍵檢查。此時,我們的自定義 DLL 已被發(fā)現(xiàn)并加載,而不是合法的對應(yīng)項。

針對WinSxS應(yīng)用程序的DLL搜索順序劫持執(zhí)行流程


5.概念驗證Poc



我們開始在進程監(jiān)視器中創(chuàng)建過濾器,以篩選具有“PATH NOT FOUND”、“CreateFile”和“NAME NOT FOUND”值的結(jié)果。此外,重點關(guān)注包含指定路徑“NOT_A_SYSTEM_FOLDER_MS”的結(jié)果,該路徑是在桌面上創(chuàng)建的文件夾,其中包含將用于研究目的的文件。

在Process Monitor中創(chuàng)建的過濾器有助于檢測WinSxS中易受攻擊的文件

在我們創(chuàng)建的文件夾中,放置了一個自定義 DLL,它將使用 DLL 搜索順序劫持技術(shù)注入到內(nèi)存中。除了自定義 DLL 之外,我們還開發(fā)了一個可執(zhí)行文件,其唯一目的是執(zhí)行 WinSxS 文件夾中的所有其他二進制文件并監(jiān)視其操作。此可執(zhí)行文件旨在識別 WinSxS 文件夾中存在的易受攻擊的文件。

自定義的文件夾

執(zhí)行自定義工具后,已經(jīng)識別出諸如“ngentask.exe”和“aspnet_wp.exe”之類的二進制文件,它們試圖在當(dāng)前目錄中搜索各自的 DLL,標(biāo)記為“NOT_A_SYSTEM_FOLDER_MS”。這一觀察結(jié)果表明,只需重命名自定義 DLL,以匹配這些可執(zhí)行文件所尋求的預(yù)期 DLL 文件,就可以加載它。然后我們的研究集中在“ngentask.exe”二進制文件上以進行進一步分析。

監(jiān)視器活動日志

本質(zhì)上,只需從使用文件夾“NOT_A_SYSTEM_FOLDER_MS”作為當(dāng)前目錄的 shell 啟動命令行即可觸發(fā)漏洞,而無需將易受攻擊的文件復(fù)制或移動到 WinSxS 之外。此操作將導(dǎo)致目標(biāo)二進制文件執(zhí)行我們的 DLL,因為它只會將其定位在我們的目錄中。這凸顯了我們實現(xiàn)的強大功能,只需要注入一個命令行和一個 DLL。無需攜帶自己的易受攻擊的應(yīng)用程序,這在涉及 DLL 搜索順序劫持的攻擊中很常見,例如TrendMicro過去報告的 PlugX 案例,該案例濫用了與開源調(diào)試器 x32dbg 相關(guān)的二進制文件加載惡意代碼。

濫用WinSxS文件夾中二進制程序劫持成功

通過將自定義 DLL 重命名為“mscorsvc.dll”并從當(dāng)前目錄執(zhí)行前面提到的命令行(專門針對“ngentask.exe”進程),成功注入了自定義 DLL。通過使用 Process Explorer,我們能夠驗證 DLL 是否成功導(dǎo)入到位于 WinSxS 文件夾中的“ngentask.exe”中。

位于WinSxS文件夾中應(yīng)用程序ngentask.exe加載的DLL

重要的是要承認(rèn),隨著系統(tǒng)進行新的更新,WinSxS 文件夾中可能會存在其他易受攻擊的二進制文件。下面我們添加了一個表格,總結(jié)了我們研究過程中位于 WinSxS 文件夾中的易受攻擊的可執(zhí)行文件以及在其執(zhí)行過程中搜索的相應(yīng)資源。需要澄清的是,這些文件的標(biāo)識并不自動暗示它們的漏洞,而是作為一個強有力的指示,必須在每個二進制文件中進行額外的測試以確認(rèn)其漏洞:

進程名加載的資源
Conhost.exeClipUp.exe
Conhost.exeipconfig.exe
Conhost.exeroute.exe
Conhost.exemcbuilder.exe
Forfiles.execmd.exe
Iediagcmd.exeipconfig.exe
Stordiag.exeSystemInfo.exe
Aspnet_wp.exewebengine.dll
Aspnet_wp.exewebengine4.dll
Aspnet_regiis.exewebengine4.dll
Aspnet_state.exewebengine4.dll
Csc.exeVCRUNTIME140_1_CLR0400.dll
Cvtres.exeVCRUNTIME140_1_CLR0400.dll
Ilasm.exefusion.dll
Ilasm.exeVCRUNTIME140_1_CLR0400.dll
Ngentask.exemscorsvc.dll
Ngen.exeVCRUNTIME140_1_CLR0400.dll
NisSrv.exempclient.dll


6.如何檢測



我們向社區(qū)提供以下策略,以便在自己的環(huán)境中有效解決這種利用方法。

父進程分析:

檢查進程之間的父子關(guān)系,特別關(guān)注受信任的二進制文件。尋找涉及以下內(nèi)容的活動:

  • 從 WinSxS 文件夾調(diào)用二進制文件的異常進程。

  • WinSxS 文件夾中的合法二進制文件生成意外的子進程。

行為分析:

密切監(jiān)視 WinSxS 文件夾中的二進制文件執(zhí)行的所有活動。專注于網(wǎng)絡(luò)通信和文件操作。您可以查找以下活動:

  • 連接到遠(yuǎn)程服務(wù)器的 WinSxS 二進制文件。

  • WinSxS 二進制文件從不常見的文件夾加載模塊。


該文章在 2024/1/10 10:22:09 編輯過
關(guān)鍵字查詢
相關(guān)文章
正在查詢...
點晴ERP是一款針對中小制造業(yè)的專業(yè)生產(chǎn)管理軟件系統(tǒng),系統(tǒng)成熟度和易用性得到了國內(nèi)大量中小企業(yè)的青睞。
點晴PMS碼頭管理系統(tǒng)主要針對港口碼頭集裝箱與散貨日常運作、調(diào)度、堆場、車隊、財務(wù)費用、相關(guān)報表等業(yè)務(wù)管理,結(jié)合碼頭的業(yè)務(wù)特點,圍繞調(diào)度、堆場作業(yè)而開發(fā)的。集技術(shù)的先進性、管理的有效性于一體,是物流碼頭及其他港口類企業(yè)的高效ERP管理信息系統(tǒng)。
點晴WMS倉儲管理系統(tǒng)提供了貨物產(chǎn)品管理,銷售管理,采購管理,倉儲管理,倉庫管理,保質(zhì)期管理,貨位管理,庫位管理,生產(chǎn)管理,WMS管理系統(tǒng),標(biāo)簽打印,條形碼,二維碼管理,批號管理軟件。
點晴免費OA是一款軟件和通用服務(wù)都免費,不限功能、不限時間、不限用戶的免費OA協(xié)同辦公管理系統(tǒng)。
Copyright 2010-2025 ClickSun All Rights Reserved