【Windows 逆向】使用 CE 工具挖掘关键数据内存真实地址 ( 逐层分析分析 静态地址 到 动态地址 的寻址 + 偏移 过程 ) ★
文章目錄
- 前言
- 一、上一篇博客中獲取到的靜態地址
- 二、第一層靜態地址 cstrike.exe+1100ABC
- 三、第二層地址
- 四、第三層地址
- 五、第四層地址
- 六、靜態地址 到 動態地址 的尋址 + 偏移 過程總結
前言
在博客 【Windows 逆向】使用 CE 工具挖掘關鍵數據內存真實地址 ( CE 找出子彈數據內存地址是臨時地址 | 挖掘真實的子彈數據內存地址 ) 中 , 沒有找到真實地址 , 本篇博客重新開始一個完整流程 ;
在博客 【Windows 逆向】使用 CE 工具挖掘關鍵數據內存真實地址 ( 完整流程演示 | 查找臨時內存地址 | 查找真實指針地址 ) 中 , 找到的地址是界面中顯示的子彈地址 , 并不是實際的子彈地址 , 查找比較簡單 ;
在博客 【Windows 逆向】使用 CE 工具挖掘關鍵數據內存真實地址 ( 查找子彈數據的動態地址 | 查找子彈數據的靜態地址 | 靜態地址分析 | 完整流程 ) ★ 中 , 查找真實子彈的地址 , 本篇博客中基于該博客的查找結果進行分析 ;
一、上一篇博客中獲取到的靜態地址
cstrike.exe+1100ABC 地址 , 是在博客 【Windows 逆向】使用 CE 工具挖掘關鍵數據內存真實地址 ( 查找子彈數據的動態地址 | 查找子彈數據的靜態地址 | 靜態地址分析 | 完整流程 ) ★ 中獲取到的靜態地址 ;
搜索到的動態地址為 05A59544 ;
調試 05A59544 內存地址 , 得到 05A59478 基址 ;
指針基址可能是 =05A59478 05C1C0ED - mov eax,[esi+000000CC]搜索 05A59478 基址 , 得到 0E1DC144 內存地址 ;
調試 0E1DC144 內存地址 , 得到 0E1DBB70 基址 ;
指針基址可能是 =0E1DBB70 05C03A42 - mov eax,[esi+000005D4]搜索 0E1DBB70 基址 , 得到 1032FC50 內存地址 ;
調試 1032FC50 內存地址 , 得到 1032FBD4 基址 ;
指針基址可能是 =1032FBD4 05C13D3C - mov eax,[eax+7C]搜索 1032FBD4 基址 , 得到 cstrike.exe+1100ABC 靜態地址 ;
構造如下指針 , 指向了子彈數據所在的動態地址 05A59544 ;
二、第一層靜態地址 cstrike.exe+1100ABC
cstrike.exe+1100ABC 靜態地址的 內存地址值為 02500ABC , 該內存地址存儲的值為 1032FBD4 ;
三、第二層地址
第一層靜態地址 指向的內存地址存儲的值為 1032FBD4 ;
第二層地址如下圖 :
該 1032FBD4 值 加上 7C 構成一個新地址 1032FC50 , 該 1032FC50 地址中存儲的值是 0E1DBB70 ;
四、第三層地址
第二層地址 指向的內存地址存儲的值為 0E1DBB70 ;
第三層地址如下圖 :
該 0E1DBB70 值 加上 5D4 構成一個新地址 0E1DC144 , 該 0E1DC144 地址中存儲的值是 05A59478 ;
五、第四層地址
第三層地址 指向的內存地址存儲的值為 05A59478 ;
第四層地址如下圖 :
該 05A59478 值 加上 CC 構成一個新地址 0E1DC144 , 該 0E1DC144 地址中存儲的值是 05A59544 ;
六、靜態地址 到 動態地址 的尋址 + 偏移 過程總結
這個 05A59544 地址 , 就是最終的子彈數據存儲的動態地址 ;
逆向的過程 就是 根據 動態地址 05A59544 地址 , 逐步分析 匯編代碼 調用 , 最終追溯到 靜態地址 cstrike.exe+1100ABC ;
程序正向運行時 , 根據靜態地址 , 及 尋址 + 偏移 等多步操作 , 就可以得到正確的 子彈數據的動態地址 ;
每次啟動應用 , 得到的動態地址值是不同的 ;
總結
以上是生活随笔為你收集整理的【Windows 逆向】使用 CE 工具挖掘关键数据内存真实地址 ( 逐层分析分析 静态地址 到 动态地址 的寻址 + 偏移 过程 ) ★的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【Windows 逆向】使用 CE 工具
- 下一篇: 【Windows 逆向】Cheat En