<menu id="guoca"></menu>
<nav id="guoca"></nav><xmp id="guoca">
  • <xmp id="guoca">
  • <nav id="guoca"><code id="guoca"></code></nav>
  • <nav id="guoca"><code id="guoca"></code></nav>

    DLL 攻擊漫談 || 什么是 DLL 攻擊 ? DLL 攻擊利用過程

    Andrew2020-10-26 11:05:26

    動態鏈接庫(DLL)的方式以及Windows API指示使用它們的方式都可以用作任意代碼執行的接口,并協助惡意行為者實現其目標。

    動態鏈接庫是Microsoft實施共享庫的產品。

    這些庫通常具有文件擴展名DLL,并且它們也是PE文件,與exe文件完全一樣。

    DLL可以包含PE文件可以包含的任何類型的內容,這些內容可能與代碼,資源或數據的任何組合不同。

    DLL主要用于在系統上的應用程序和進程之間共享此內容,以便在為Windows創建應用程序時為程序員提供高度的靈活性。

    DLL以相同的訪問權限在調用過程的內存中執行。這意味著,如果DLL包含任何異常,則不會為調用EXE提供任何保護。惡意攻擊者可以通過使用諸如DLL劫持或DLL代理之類的方法來執行其惡意代碼來利用這一事實。

    DLL搜索順序簡介

    在整個日常工作中,我們將大量流程加載到我們的系統中。使用Windows操作系統時,進程加載算法的關鍵步驟包括將動態鏈接庫(DLL)加載到內存中,以利用其功能并滿足其進程與DLL之間的依賴關系。每當啟動進程時,都會發生此操作。

    Windows操作系統可能包含同一DLL的大量版本。由于一個系統可能承載可能需要同一個DLL的許多進程這一事實,因此應采用一種系統來確保從正確的路徑加載所需的DLL,同時確保已找到該DLL的最相關版本。

    應用程序制造商通過使用LoadLibraryExA或LoadLibraryA函數來使用加載特定庫的操作。這些函數接收一個路徑參數,該參數導致所請求的DLL,并向調用過程返回模塊的句柄。

    1.當前目錄

    2.啟動過程的目錄

    3.C:\ Windows \ System32

    4.C:\ Windows \ System

    5.C:\ Windows

    6.“ PATH”的SYSTEM環境變量中包含的目錄

    7.USER環境變量“ PATH”中包含的目錄

    DLL攻擊

    DLL包含要由加載過程執行的代碼,這會造成一種情況,即可以利用丟失的DLL或以不安全的方法實現的DLL來誘騙正在運行的系統執行惡意有效負載,在這種情況下,它利用本機DLL搜索順序。惡意行為者可能會使用此技術來加載自己的DLL,該DLL可能包含任何類型的代碼。

    攻擊利用過程

    當我們確定某個進程按某個搜索順序搜索DLL,并且缺少DLL 或者錯誤實現的DLL的進程之后,才能夠進行下一步攻擊

    第一步:確定DLL

    首先,我們從Sysinternals設置ProcMon來篩選未找到以DLL結尾的路徑的任何操作:

    ProcMon下載:https://docs.microsoft.com/en-us/sysintern...

    我們可以看到“ Bginfo64.exe”找不到的對應DLL。

    第二步:查找DLL和利用

    在查找這些DLL時,得出的結論是Riched32.DLL是非本地DLL,因此,注冊表中沒有該DLL的默認搜索路徑。但是如果我們正確配置它,系統最終也會加載它。

    現在所需要做的就是在請求的路徑中創建該DLL:

    那么我們在請求路徑中創建該DLL(Riched32.dll),為了方便演示,我們的DLL

    如果執行了,就彈窗 hello HBT黑白天 來證明我們的DLL可以執行命令

    #define WIN32_LEAN_AND_MEAN

    我們把這個DLL命名為Riched32.dll放進Bginfo64.exe的dll文件夾中。

    然后重新打開進程“ Bginfo64.exe。

    出現該消息框,并且我們可以觀察到該進程加載了DLL:

    那如果我們的DLL中包含惡意代碼呢。是不是可以繼承Bginfo64.exe執行命令??

    最后一步:拿一個shell

    確定了進程和易受攻擊的路徑之后,所缺少的就是創建我們希望執行的DLL有效負載。

    我們可以使用一個“ DLLicious”的工具(https://github.com/J3wker/DLLicous-MaliciousDLL)來快速編譯包含的shell的DLL

    用法

    用法非常簡單,只需使用Python3或“。\ DLLicous.py”運行腳本

    我們可以使用

    1.用C語言將反向Shell編寫DLL

    2.Base64nc.exe 對NC二進制文件進行編碼和解碼,然后將其寫入
    DLL的工作目錄中,然后從該目錄中發起攻擊。另一個新功能是:nc.exe在DLL中也包含base64代碼,而不是從Web下載或從SMB服務器復制它。

    通過使用PowerShell和DLL代碼中包含的NetCat的反向Shell

    并嘗試與kali上的偵聽器聯系,然后使用PowerShell打開shell

    我們可以看到執行劫持的進程后,將加載DLL并打開shell:

    https://www.cynet.com/attack-techniques-ha...

    https://github.com/J3wker/DLLicous-Malicio...

    https://docs.microsoft.com/en-us/sysintern...

    原創:李木 黑白天
    原文鏈接:https://mp.weixin.qq.com/s/Wp3345NNCZUsgCu...

    httpsshell
    本作品采用《CC 協議》,轉載必須注明作者和本文鏈接
    下載dll,并添加至ext中在php.ini 中添加該擴展修改configure.ini;?具體步驟通過phpinfo獲取擴展信息,根據不同的加密擴展進行嘗試利用默認密鑰進行加密,通過訪問webshell來判斷密鑰是否正確,當然,這種方法其實只能用于權限維持需要拿到權限后獲取擴展文件破解后,才能穩定獲取密鑰,進而加密webshell
    Bughound是一款開源的靜態代碼分析工具,可以幫助廣大研究人員分析自己的代碼,并將結果發送至Elasticsearch和Kibana,以更好地審查代碼中潛在的安全漏洞。
    最近的研究表明,中非和西非超過 85% 的金融機構多次遭受包括盜取信息、盜竊用戶身份、轉賬欺詐和用虛假支票取款等多重網絡攻擊。DangerousSavanna 迅速加入了惡意攻擊的趨勢。
    shellcode動態注入!
    2023-01-24 10:15:10
    聲明:本人堅決反對利用文章內容進行惡意攻擊行為,一切錯誤行為必將受到懲罰,綠色網絡需要靠我們共同維護,推薦大
    Ceye DNS:DNS oob平臺 http://ceye.io/. TLS證書信息查詢Censys:https://censys.io. 網絡空間搜索Fofa:https://fofa.info/
    Ceye DNS:DNS oob平臺 http://ceye.io/. TLS證書信息查詢Censys:https://censys.io. 網絡空間搜索Fofa:https://fofa.info/
    到達客戶現場后第一時間告知負責網絡相關的人員請勿對被篡改文件進行刪除或修改,這樣做的原因是方便后續對入侵途徑進行溯源分析。發生安全事件的服務器為Windows還是Linux或者其他的操作系統,確認好操作系統類型方便取證工作。是否為用戶誤操作所導致觸發告警。Windows系統下:使用“MD5校驗器”打開原有文件與疑似篡改文件,獲得MD5值后進行比對,如果兩文件MD5不一樣證明該文件被篡改。
    防守方工具包集合
    2022-06-27 06:25:50
    藍隊工具包集合??企業安全之做好這三點,護網沒在怕!
    今天給大家安利幾個不錯的在線安全工具,無需安裝配置即可使用,在實際工作中能夠幫助我們提升效率,順序的話,就根據滲透的順序來。
    ICMP隧道攻擊
    2022-04-27 21:50:29
    ICMP一般用于檢測網絡的可通性
    Andrew
    暫無描述
      亚洲 欧美 自拍 唯美 另类