當前位置:
首頁 > 新聞 > 利用global API hooks在Win7系統下隱藏進程

利用global API hooks在Win7系統下隱藏進程

0x00 前言


在之前的文章《Powershell tricks::Hide Process by kd.exe》介紹過通過kd.exe隱藏進程的技巧,最大的缺點是需要開啟Local kernel debugging模式,等待重啟才能生效


這次介紹另外一個隱藏進程的方法——利用global API hooks


優點是即時生效,不需要等待系統重啟


0x01 簡介

本文將要參照Sergey Podobry的文章,對該方法進行介紹,分析實際測試中需要注意的細節,並補全在64位下具體的參數設置


參考鏈接:


https://www.codeproject.com/articles/49319/easy-way-to-set-up-global-api-hooks?display=print


https://github.com/subTee/AppInitGlobalHooks-Mimikatz


0x02 原理


在用戶層,通過global API hooks將測試dll注入到系統的所有進程,實現對指定進程的隱藏


hook方式


修改註冊表鍵值AppInit_DLLs


位置:


HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionWindows

參數說明:


LoadAppInit_DLLs:(REG_DWORD) Value that globally enables or disables AppInit_DLLs. ·0x0 – AppInit_DLLs are disabled. ·0x1 – AppInit_DLLs are enabled.AppInit_DLLs:(REG_SZ) Space - or comma -separated list of DLLs to load. The complete path to the DLL should be specified using short file names. C:PROGRA~1TestTest.dllRequireSignedAppInit_DLLs:(REG_DWORD) Require code-signed DLLs. ·0x0 – Load any DLLs. ·0x1 – Load only code-signed DLLs.


代碼實現


通過Mhook library實現API hooking


優點:


開源


支持x86和x64


使用簡便


參考地址:


http://codefromthe70s.org/mhook22.aspx

0x03 實際測試


測試環境:Win7x86


1.設置註冊表鍵值AppInit_DLLs


參照代碼:


https://github.com/subTee/AppInitGlobalHooks-Mimikatz/blob/master/AppInit.reg


.reg文件如下:


Windows Registry Editor Version 5.00[HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionWindows]"AppInit_DLLs"="C:ToolsAppInitHookx64.dll,C:ToolsAppInitHook.dll""LoadAppInit_DLLs"=dword:00000001"RequireSignedAppInit_DLLs"=dword:00000000


表示


AppInit_DLLs are enabledLoad any DLLs,do not need code-signed DLLsDLL path:C:ToolsAppInitHookx64.dll,C:ToolsAppInitHook.dll


註:

設置的路徑不能存在空格,否則失效


2.編譯生成AppInitHook.dll並放在C:Tools下


參照工程:


https://github.com/subTee/AppInitGlobalHooks-Mimikatz


3.運行mimikatz.exe


任務管理器進程列表不存在mimikatz.exe


Process Explorer不存在mimikatz.exe


Tasklist.exe不存在mimikatz.exe


註:


此處沒有完全隱藏進程,是將進程名設置為conhost.exe,這是因為mimikatz是控制台應用程序

如果換成putty.exe或calc.exe這種Win32項目,則不存在這個問題,能夠完全隱藏進程


使用Process Explorer查看新建的進程,均載入了AppInitHook.dll,如圖

利用global API hooks在Win7系統下隱藏進程



註:


管理員許可權運行Process Explorer,可查看高許可權進程載入的dll


4.Win7x64測試


64位系統同32位系統的區別在註冊表也有所體現


註:


詳情可參考之前的文章《關於32位程序在64位系統下運行中需要注意的重定向問題》

64位程序對應註冊表位置:


HKEY_LOCAL_MACHINESOFTWAREMicrosoft


32位程序對應註冊表位置:


HKEY_LOCAL_MACHINESOFTWAREWow6432NodeMicrosoft


所以,如果要hook 64位系統下的所有進程(32位和64位),需要修改兩處註冊表鍵值


64位的註冊表鍵值位置:


[HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsNTCurrentVersionWindows]


32位的註冊表鍵值位置:


[HKEY_LOCAL_MACHINESOFTWAREWow6432NodeMicrosoftWindows NTCurrentVersionWindows]


具體修改代碼已上傳至github,地址如下:

https://github.com/3gstudent/AppInitGlobalHooks-Mimikatz/blob/master/AppInit64.reg


修改後使用Process Explorer查看如圖

利用global API hooks在Win7系統下隱藏進程


利用global API hooks在Win7系統下隱藏進程



成功注入32位和64位進程


0x04 補充


該方法只支持Win7 和 Windows Server 2008 R2,不支持更高版本如Win8、Server2012

利用global API hooks在Win7系統下隱藏進程


如上圖,在Win8系統,雖然成功載入AppInitHook.dll,但是無法隱藏進程


原因如下:


從Win8系統開始,微軟對AppInit_DLLs做了限制:bios中默認開啟的secure boot將會禁用AppInit_DLLs,使其失效


詳情可參照:


https://msdn.microsoft.com/en-us/library/windows/desktop/dn280412(v=vs.85).aspx


0x05 防禦


只針對Win7 和 Windows Server 2008 R2及以下系統


1.查看註冊表鍵值


[HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsNTCurrentVersionWindows][HKEY_LOCAL_MACHINESOFTWAREWow6432NodeMicrosoftWindows NTCurrentVersionWindows]

AppInit_DLLs項有無可疑dll路徑


2.通過Process Explorer查看進程有無載入可疑的dll


0x06 小結


本文對利用global API hooks在Win7系統下隱藏進程的方法做了介紹,結合利用思路,幫助大家對這種利用方式進行更好的防禦。當然,利用global API hooks能做的還有更多


喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 嘶吼RoarTalk 的精彩文章:

TAG:嘶吼RoarTalk |

您可能感興趣

隱藏於陰影之下 Nike Air Force 1 High 「Dark Stucco」
使用BurpSuite的Collaborator查找.Onion隱藏服務的真實IP地址
Sean Wotherspoon 上腳 OFF-WHITE x Nike 隱藏鞋款!
Giannis Antetokounmpo 曝光 UNDEFEATED x Nike Kobe 1 Protro 隱藏版配色
非常實用的Android 9 Pie隱藏功能:Lockdown
非常實用Android 9 Pie隱藏功能:Lockdown!
Nike Zoom Streak Spectrum Plus還有隱藏配色?你希望出現在Supreme下周發售里嗎?
在GoogleUserContent上的圖片中隱藏惡意軟體
Supreme隱藏款T-Shirt曝光!GZA經典專輯《Liquid Swords》封面印花設計來襲!
iOS 12「隱藏功能」,AirPods 支持 Live Listen 變身助聽器
ACRONYM? x Nike Air VaporMax Moc 2「隱藏版」配色諜照曝光 | HB Daily
Supreme Week 2 隱藏聯名鞋款竟是與 Vans
angularjs 點擊div外面,隱藏該div
Supreme隱藏合作款將發售,M+RC NOIR 將在北京開設 Pop-up Store
pyt:檢測 Python Web 應用安全漏洞的靜態掃描工具;DoxyCannon:ip隱藏
為防手機信息泄露,Android 9.0新加「Lockdown」隱藏功能
如何在 Linux/Unix/Windows 中發現隱藏的進程和埠
Supreme隱藏合作款即將發售,M+RC NOIR 將在北京開設 Pop-up Store|潮聞快食
ACRONYM? x Nike Air VaporMax Moc 2「隱藏版」配色最新諜照曝光
Google Chrome 69隱藏域名中的www遭批