Skip to content

Repository files navigation

wxhelper_modular

模块化微信 Hook 插件框架,基于 VEH + 反射注入。

⚠️ 免责声明:本项目仅供学习研究,严禁用于非法用途。详见 DISCLAIMER

特性

  • 插件化架构 — 每个功能独立模块,声明式路由/Hook/偏移表
  • 多版本兼容WXHELPER_OFFSET_TABLE 宏管理版本偏移,新增版本只加一行
  • 双 Hook 引擎 — VEH INT3(低频/一次性)+ Inline(高频/持续)
  • 多通信方式 — HTTP API + WebSocket + Named Pipe
  • 数据存储PluginDataStore 跨插件共享数据,/api/data 统一导出
  • 事件推送DispatchCenter 实时推送 Hook 事件到 WS/Pipe 客户端

快速开始

编译

# 需要 Visual Studio 2022 + CMake
cmake -S . -B build -G "Visual Studio 17 2022" -A x64
cmake --build build --config Release

输出:build/output/Release/wxhelper.dll + injector.exe

注入

injector.exe <微信PID>

测试

import requests
BASE = "http://127.0.0.1:19088"
print(requests.post(f"{BASE}/api/contacts").json())

项目结构

wxhelper_modular/
├── app/
│   ├── core/                  # 核心框架
│   │   ├── core/              #   Hook引擎、DLL入口、单例
│   │   ├── infra/             #   HTTP/Pipe服务器、路由分发、配置
│   │   ├── plugin/            #   插件接口、插件管理器、数据存储
│   │   └── utils/             #   工具函数、版本偏移、微信内存读取
│   └── modules/               # 插件模块(在这里开发)
│       ├── base/              #   基础模块(版本/状态查询)
│       ├── contacts/          #   联系人模块
│       ├── profile_example/   #   个人信息示例
│       └── example/           #   最小示例
├── 3rdparty/                  # 第三方库(mongoose/json/zstd)
├── injector/                  # 注入器
├── PLUGIN_DEV.md              # 插件开发完整指南
├── DISCLAIMER                 # 免责声明
└── LICENSE                    # MIT

插件开发

详见 PLUGIN_DEV.md — 从零创建插件的完整流程。

最小示例

  1. 创建 app/modules/my_module/my_module.h.cc
  2. 定义偏移表、路由表、Hook 表
  3. 实现 OnInit / OnDestroy / Handler
  4. 末尾 WXHELPER_REGISTER_PLUGIN(MyModule)
  5. 重新 cmake 配置并编译

核心宏

// 版本偏移表
WXHELPER_OFFSET_TABLE(My, MyOffsets,
  {"4.1.9.35",  {.func_a = 0x123}},
  {"4.1.10.27", {.func_a = 0x456}},
)

// 路由表
WXHELPER_ROUTE_TABLE(
  {"/api/my", HandleMy},
)

// Hook 表
WXHELPER_HOOK_TABLE(MyOffsets,
  {"hook_a", &MyOffsets::func_a, 0, HookAHandler, hook::HookMethod::kVehInt3, true},
)

// 插件注册(.cc 末尾)
WXHELPER_REGISTER_PLUGIN(MyModule)

内置 API

路由 说明
POST /api/contacts 获取所有联系人
POST /api/contacts/search 搜索联系人(keyword)
POST /api/profile_example 个人信息(直接读取+Hook)
POST /api/hook/toggle 手动安装/卸载 Hook
POST /api/data 导出所有插件数据
POST /api/status 框架状态

License

MIT

About

微信4.1 逆向

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages