前言
找到偏移之後,就是寫輔助工具了。這一篇聊聊寫輔助工具的原理。具體的代碼細節,等到實戰會展開細說。
明确一下
逆向兩個目的
1、調用功能
2、擷取資料
對應的實作方法
1、調用功能
找到偏移,直接調用。
2、擷取資料
對于全局資料,找到偏移,直接得到。
對于局部資料,攔截代碼,間接得到 。
寫外部工具
1、調用功能
windows系統提供了接口(CreateRemoteThread),允許一個軟體調用另一個軟體的功能。
2、擷取資料
對于全局資料
windows系統提供了接口(ReadProcessMemory),允許一個軟體擷取另一個軟體的資料。
對于局部資料
windows系統提供了調試機制,就是在目标軟體設定陷阱,當軟體觸發到陷阱,會暫停下并且抛出報錯資訊
輔助工具監聽到報錯資訊,進而擷取目标軟體的資料。
寫内部工具
輔助工具,可以寫個間諜子產品(dll),然後注入到目标軟體裡面去。
通過間諜子產品,輔助工具就可以操控目标軟體,進而調用功能或者擷取資料。

1、調用功能
在内部,可以直接調用
2、擷取資料
對于全局資料
在内部,可以直接擷取
對于局部資料
内部修改代碼攔截(HOOK)
正常流程:步驟1 -> 步驟2
攔截流程:步驟1 -> hook攔截 -> 步驟2
理論上的東西,差不多這樣,下一篇,聊逆向分析用到的工具。