91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

差異分析定位Ring 3保護模塊

發布時間:2020-07-27 05:56:23 來源:網絡 閱讀:339 作者:博文視點 欄目:安全技術

差異分析定位Ring 3保護模塊

由于保護模塊通常會Hook操作系統的原生DLL接口來進行保護,所以可以采用差異比較原生DLL文件和加載到內存中的原生DLL直接的差別來定位Ring 3模塊。

在分析的過程中,為了防止被Ring 3保護模塊發現,暫時可以先把除了自己線程外的其他線程暫停,如圖8-14所示。

 

差異分析定位Ring 3保護模塊

8-14  懸掛除自己線程外的其他線程

從圖8-14中可以看出,除自己線程外,該游戲有58個線程,可以通過SuspendThread()函數懸掛這些線程以便后續的分析(GS的命令就是ste序號)。

下面,我們再對3個常用原生DLL——ntdll.dllkernel32.dlluser32.dll進行文件和內存的比較,如圖8-15所示。

差異分析定位Ring 3保護模塊

 

8-15  差異分析原生DLL的變化

從圖8-15中可以看出,ntdll.dll3處地址發生了變化,分別是0x7c9212300x7c92DEB60x7c97077B。下面讓我們看看這3處地址目前的指令是什么,如圖8-16所示。

差異分析定位Ring 3保護模塊

 

8-16  兩處地址jmp指令

在圖8-16中,有一處jmp指令是跳入地址0x45320F0。讓我們看看它屬于哪個模塊,如圖8-17所示。

差異分析定位Ring 3保護模塊

 

8-17  模塊節信息

從圖8-17的地址區間來看,是包含0x45320F0的,所以,在ntdll.dll中地址0x7c92deb6會跳入X.dll模塊。到目前為止,我們基本可以判斷ring 3下的游戲保護模塊是X.dll

為了能更準確地判斷X.dll是否是真的保護模塊,下面讓我們看看ntdll.dll3處發生變化的地址在原生ntdll.dll中的作用。

可以用IDAntdll.dll進行分析,然后定位地址0x7c9212300x7c92DEB60x7c97077B

8-18所示,原來此處地址是DbgBreakPoint函數。這個函數是供調試器下軟件斷點用的,而在游戲中卻被改成了ret指令,這樣做能起到防止下軟件斷點的作用。

差異分析定位Ring 3保護模塊

 

8-18  0x7c921230地址所處函數

如圖8-19所示,0x7c97077B地址是屬于DbgUiRemoteBreakin函數的,這個函數的詳細介紹可以參見張銀奎老師的《軟件調試》一書的第10.6.4節。這里還是簡單說明一下這個函數的作用,以便讀者能了解。

差異分析定位Ring 3保護模塊

 

8-19  0x7c97077B地址所處函數

DbgUiRemoteBreakinntdll提供的用于在目標進程中創建遠線程下軟件斷點的函數,其偽代碼如下。

DWORD WINAPI DbgUiRemoteBreakin( LPVOID lpParameter)

{

   __try

{

       if(NtCurrentPeb->BeingDebugged)

           DbgBreakPoint();

}

__except(EXCEPTION_EXECUTE_HANDLER)

{

       Return 1;

}

RtlExitUserThread(0);

}

當調試器通過CreateRemoteThread函數在目標程序中創建DbgUiRemoteBreakin線程的時候,從代碼上來看是下了int 3軟件斷點。由于在被調試狀態,所以調試器可以捕獲這個異常。如果目標程序沒有被調試的話,DbgUiRemoteBreakin中的S.H.E顯然可以捕獲并處理它。

所以,游戲保護系統在對DbgUiRemoteBreakin進行jmp操作,很明顯是為了防止被調試。下面再看看保護系統從DbgUiRemoteBreakin跳到了哪里。

如圖8-20所示是保護系統從DbgUiRemoteBreakin跳入執行的函數,很明顯,LdrShutdownProcess是一個關閉進程的函數。

差異分析定位Ring 3保護模塊

 

8-20  0x7C943DEF地址所處函數

下面再讓我們看看地址0x7c92DEB6處的含義。

如圖8-21所示,保護模塊對ZwProtectVirtualMemory函數進行了Hook,以防止虛擬內存所在頁面的保護屬性被改變。


差異分析定位Ring 3保護模塊

8-21  0x7c92DEB6地址所處函數

關于更多分析游戲保護方案的思路見<<游戲外掛***藝術>>8章。

 

差異分析定位Ring 3保護模塊

作者簡介

徐勝,2009年于電子科技大學獲得計算機科學與工程碩士學位,現就職于阿里巴巴,從事移動安全的研究和移動產品的研發,主要研究方向包括:Windows平臺下的***、外掛、Rootkit、防火墻和二進制逆向分析,AndroidiOS客戶端軟件安全,以及WebWAP安全。

本文節選自《游戲外掛***藝術》一書。徐勝 著,由電子工業出版社出版。

 

 

 

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

彩票| 兴安盟| 鄄城县| 高陵县| 志丹县| 孝义市| 军事| 普宁市| 齐河县| 庐江县| 沙湾县| 甘泉县| 景德镇市| 黄浦区| 湄潭县| 太仓市| 蒲江县| 大城县| 林口县| 合山市| 阿勒泰市| 河源市| 仪陇县| 田东县| 股票| 柏乡县| 五寨县| 涿州市| 赤峰市| 英超| 黄龙县| 利川市| 邹城市| 涪陵区| 利辛县| 张北县| 南澳县| 北票市| 广州市| 阿瓦提县| 松滋市|