2022-10-13 分類: 網站建設
關于aDLL
aDLL是一款功能強大的代碼分析工具,可以幫助廣大研究人員以自動化的方式識別并發現DLL劫持漏洞。該工具可以分析加載至內存中的源碼鏡像,并在加載過程中搜索DLL,并且利用了微軟Detours代碼庫來攔截針對LoadLibrary/LoadLibraryEx函數的調用,然后分析在代碼運行時過程中加載的DLL文件。
該工具的主要目標就是幫助廣大研究人員搜索可執行程序所使用的DLL列表,并從中識別出潛在的DLL劫持漏洞。
DLL劫持攻擊
DLL劫持指的是,病毒通過一些手段來劫持或者替換正常的DLL,欺騙正常程序加載預先準備好的惡意DLL。
首先我們要了解Windows為什么可以DLL劫持呢?主要是因為Windows的資源共享機制。為了盡可能多得安排資源共享,微軟建議多個應用程序共享的任何模塊應該放在Windows的系統目錄中,如kernel32.dll,這樣能夠方便找到。但是隨著時間的推移,安裝程序會用舊文件或者未向后兼容的新文件來替換系統目錄下的文件,這樣會使一些其他的應用程序無法正確執行,因此,微軟改變了策略,建議應用程序將所有文件放到自己的目錄中去,而不要去碰系統目錄下的任何東西。
為了提供這樣的功能,在Window2000開始,微軟加了一個特性,強制操作系統的加載程序首先從應用程序目錄中加載模塊,只有當加載程序無法在應用程序目錄中找到文件,才搜索其他目錄。利用系統的這個特性,就可以使應用程序強制加載我們指定的DLL做一些特殊的工作。快速開始
首先,我們需要使用下列命令將該項目源碼克隆至本地:git clone https://github.com/ideaslocas/aDLL.git
接下來,我們就可以在項目的Binaries文件夾中找到已編譯好的aDLL可執行文件了。我們建議廣大用戶使用版本架構(32為或64位)對應的版本來分析目標可執行文件。
為了保證該工具可以正常運行,我們必須將“hook32”、“hook64”、“informer*32”和“informer64”放置于“aDLL.exe”的相同目錄下。工具要求
aDLL是在Windows 10操作系統平臺上開發和測試的,如果你所使用的操作系統版本比較老,或者沒有安裝Visual Studio的話,那么工具在運行時可能會拋出例如“VCRUNTIME140.dll not found”之類的錯誤,此時我們就需要安裝Visual C++ Redistributable更新了。【下載地址】項目編譯
如需對項目代碼進行修改或重新編譯,建議使用Visual Studio 2015或更高版本。工具使用
該工具提供了一個-h選項,可以幫助我們獲取aDLL全部可用的參數選項:.\aDLL -h
針對aDLL的使用,我們需要提供至少一個運行參數,即需要分析的可執行程序路徑: .\aDLL -e "C:\System32\notepad.exe"工具選項 -h:顯示工具的幫助信息,并簡要說明每個選項的功能。 -e:指定aDLL要分析的可執行文件的路徑。 -t:指定文本文件的路徑,其中包含可執行路徑列表。 -o:指定掃描報告的存儲目錄路徑,每個掃描的可執行文件都將在其中存儲報告。 -m:搜索可執行文件的清單列表并將其顯示在屏幕上。aDLL將會搜索嵌入在二進制文件中的清單列表,如果清單列表作為外部文件存在,aDLL將無法找到該清單列表。 -w:定義在運行時搜索加載的DLL時可執行進程保持打開狀態的秒數。默認時間為20秒。 -aDLL:如果搜索到了待測DLL,則會自動檢測該DLL是否會通過偽裝成合法DLL來執行(惡意DLL偽裝)。 -d:與-a選項結合使用,此選項允許我們選擇惡意DLL的路徑。 -r:可執行文件導入的每個DLL都可以作為依賴項導入其他DLL。將對aDLL找到的所有未重定向(ApiseSchema或WinSxS)且不屬于系統已知DLL列表的DLL進行“n”次遞歸搜索。 項目地址
aDLL:【GitHub傳送門】
新聞標題:如何使用aDLL自動識別DLL劫持漏洞
分享路徑:http://m.newbst.com/news46/204896.html
成都網站建設公司_創新互聯,為您提供網站維護、App設計、營銷型網站建設、網頁設計公司、網站收錄、域名注冊
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯
猜你還喜歡下面的內容