Files
root 25f2286cb6 Trim both READMEs and add the tutorial primer
README 242 -> 180 lines: the 14-row tool table becomes three sentences pointing at capabilities.py, Read this first merges into Scope, and the six-script maintenance block becomes a table. Every path, command and anchor is unchanged.

README.zh-CN follows the same eight sections, and picks up two drifts: it named hwprobe.py as the cheapest first command (SKILL.md and the English README say doctor.py), and it translated triage as 'three categories', which sends a reader looking for categories that do not exist.

docs/primer is the Windows reverse-engineering tutorial series with an index, corrected in three places: x64dbg instead of OllyDbg, offsets fixed only within one build, and IAT hooking assuming the target imports the API it hooks.

docs/tool-acquisition keeps the part capabilities.py does not answer: licence classes, id resolution on the host, and what proves a tool runs.
2026-10-24 13:51:21 +08:00

1.8 KiB
Raw Permalink Blame History

偏移之后,就是写辅助工具了。这一篇聊聊写辅助工具的原理。具体的代码细节,等到实战会展开细说。

 

明确一下

  逆向两个目的

  1、调用功能

  2、获取数据

 

对应的实现方法

  1、调用功能

    找到偏移,直接调用。

  2、获取数据

    对于全局数据,找到偏移,直接得到。

    对于局部数据,拦截代码,间接得到 。

 

写外部工具

  1、调用功能

    windows系统提供了接口(CreateRemoteThread),允许一个软件调用另一个软件的功能。

  2、获取数据

    对于全局数据

      windows系统提供了接口(ReadProcessMemory),允许一个软件获取另一个软件的数据。

    对于局部数据

      windows系统提供了调试机制,就是在目标软件设置陷阱,当软件触发到陷阱,会暂停下并且抛出报错信息

      辅助工具监听到报错信息,进而获取目标软件的数据。

 

写内部工具

  辅助工具,可以写个间谍模块(dll),然后注入到目标软件里面去。

  通过间谍模块,辅助工具就可以操控目标软件,进而调用功能或者获取数据。

   

  1、调用功能

    在内部,可以直接调用

  2、获取数据

    对于全局数据

      在内部,可以直接获取

    对于局部数据

      内部修改代码拦截(HOOK)

 

    正常流程:步骤1 -> 步骤2

    拦截流程:步骤1 -> hook拦截 -> 步骤2

     

 

 

理论上的东西,差不多这样,下一篇,聊逆向分析用到的工具。