資源共享吧|易語(yǔ)言論壇|逆向破解教程|輔助開(kāi)發(fā)教程|網(wǎng)絡(luò)安全教程|rigasin.com|我的開(kāi)發(fā)技術(shù)隨記

 找回密碼
 注冊(cè)成為正式會(huì)員
查看: 1611|回復(fù): 3
打印 上一主題 下一主題

[PC逆向破解] C++游戲逆向高級(jí)培訓(xùn)班第11課-hook之后兩次收包之后游戲崩潰

[復(fù)制鏈接]

4

主題

63

帖子

0

精華

終身高級(jí)VIP會(huì)員

Rank: 7Rank: 7Rank: 7

資源幣
7
積分
67
貢獻(xiàn)
0
在線時(shí)間
27 小時(shí)
注冊(cè)時(shí)間
2021-3-17
最后登錄
2023-2-11

終身VIP會(huì)員

跳轉(zhuǎn)到指定樓層
樓主
發(fā)表于 2021-5-8 15:14:43 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
1資源幣
只運(yùn)行hook,注釋掉自己的代碼,可以正常運(yùn)行,說(shuō)明hook沒(méi)問(wèn)題。
x32dbg 調(diào)試顯示EXCEPTION_ACCESS_VIOLATION

回復(fù)

使用道具 舉報(bào)

23

主題

57

帖子

0

精華

資源共享吧金牌老師

Rank: 6Rank: 6

資源幣
34
積分
80
貢獻(xiàn)
0
在線時(shí)間
40 小時(shí)
注冊(cè)時(shí)間
2021-3-28
最后登錄
2022-10-25

超級(jí)版主終身VIP會(huì)員原創(chuàng)先鋒

沙發(fā)
發(fā)表于 2021-5-8 16:50:03 | 只看該作者
有具體截圖嗎
回復(fù)

使用道具 舉報(bào)

23

主題

57

帖子

0

精華

資源共享吧金牌老師

Rank: 6Rank: 6

資源幣
34
積分
80
貢獻(xiàn)
0
在線時(shí)間
40 小時(shí)
注冊(cè)時(shí)間
2021-3-28
最后登錄
2022-10-25

超級(jí)版主終身VIP會(huì)員原創(chuàng)先鋒

板凳
發(fā)表于 2021-5-8 16:51:29 | 只看該作者
應(yīng)該是訪問(wèn)的問(wèn)題 指針?
回復(fù)

使用道具 舉報(bào)

4

主題

63

帖子

0

精華

終身高級(jí)VIP會(huì)員

Rank: 7Rank: 7Rank: 7

資源幣
7
積分
67
貢獻(xiàn)
0
在線時(shí)間
27 小時(shí)
注冊(cè)時(shí)間
2021-3-17
最后登錄
2023-2-11

終身VIP會(huì)員

地板
 樓主| 發(fā)表于 2021-5-8 18:39:40 | 只看該作者
本帖最后由 bs0303 于 2021-5-8 18:44 編輯
  1. Hook* hook2;
  2. struct {
  3.         DWORD dwBase;
  4.         DWORD dwLen;
  5.         BYTE* strBuff;
  6.         CString strRecv;
  7.         CString strTempRecv;
  8. }recvPack;

  9. __declspec(naked) void recvHook(){
  10.         __asm pushad
  11.         //自己代碼
  12.         __asm{
  13.                 mov recvPack.dwBase,ebx
  14.                 mov ecx,[edi]
  15.                 mov ecx,[ecx+0x8]
  16.                 mov edx,[edi]
  17.                 mov edx,[edx+0x4]
  18.                 sub ecx,edx
  19.                 add ecx,2
  20.                 mov recvPack.dwLen,ecx
  21.         }
  22.         recvPack.strBuff = new BYTE[recvPack.dwLen];
  23.         ReadProcessMemory((HANDLE)-1,(LPCVOID)recvPack.dwBase,recvPack.strBuff,recvPack.dwLen,NULL);
  24.         for(DWORD i=0; i<recvPack.dwLen; i++){
  25.                 recvPack.strTempRecv.Format(L"%02X ",recvPack.strBuff[i]);
  26.                 recvPack.strRecv+=recvPack.strTempRecv;
  27.         }
  28.         OutputDebug(L"包地址:0X%08X   包長(zhǎng):0X%02X===%08d   包內(nèi)容:%s",recvPack.dwBase,recvPack.dwLen,recvPack.dwLen,recvPack.strRecv);
  29.         delete[] recvPack.strBuff;
  30.         recvPack.strBuff = nullptr;
  31.         recvPack.strRecv = "";

  32.         __asm{
  33.                 popad
  34.                 mov ebp,dword ptr ds:[esi+0x2874]
  35.                 retn
  36.         }
  37. }

  38. void CDLG::OnBnClickedButton10()
  39. {
  40.         // TODO: 在此添加控件通知處理程序代碼
  41.         hook2 = new Hook();
  42.         hook2->onHook((DWORD)0x00B92931,(DWORD)recvHook,(BYTE)0xE8,6);
  43. }


  44. void CDLG::OnBnClickedButton11()
  45. {
  46.         // TODO: 在此添加控件通知處理程序代碼
  47.         hook2->unHook();
  48.         delete hook2;
  49.         hook2 = nullptr;
  50. }
復(fù)制代碼


傳的和視頻一樣的ebx
回復(fù)

使用道具 舉報(bào)

 點(diǎn)擊右側(cè)快捷回復(fù)  

本版積分規(guī)則

小黑屋|資源共享吧 ( 瓊ICP備2023000410號(hào)-1 )

GMT+8, 2024-12-22 00:53 , Processed in 0.066814 second(s), 11 queries , MemCached On.

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2021, Tencent Cloud.

快速回復(fù) 返回頂部 返回列表