Skip to content

fix(macos): scan WeChatAppEx helper processes for DB keys#82

Open
Yanmi3560 wants to merge 1 commit into
jackwener:mainfrom
Yanmi3560:master
Open

fix(macos): scan WeChatAppEx helper processes for DB keys#82
Yanmi3560 wants to merge 1 commit into
jackwener:mainfrom
Yanmi3560:master

Conversation

@Yanmi3560
Copy link
Copy Markdown

问题

微信 3.8+ 将数据库操作分离到 WeChatAppEx Helper 进程,原版 wx-cli 只扫描主 WeChat 进程,导致 wx init 时密钥提取返回 0,无法解密任何数据库。

issue #73 中用户环境(macOS 26.4.1, WeChat 4.1.9)扫描到 25 个候选密钥但全部 salt 不匹配就是这个原因——密钥在 Helper 进程里,扫描器根本没扫到。

修改内容

src/scanner/macos.rs:

  • find_wechat_pid()find_wechat_pids(),用 pgrep -x WeChat 返回所有 WeChat 相关进程
  • 对每个 PID 分别执行 task_for_pid + scan_memory
  • 跨进程收集候选密钥后统一去重,再与数据库 salt 匹配

测试

在微信 3.8+ 环境下:

sudo wx init

预期:密钥匹配数 > 0,all_keys.json 正常生成。


微信 3.8+ 将数据库操作分离到 WeChatAppEx Helper 进程,
原版只扫描主 WeChat 进程,导致密钥提取返回 0。

修改:
- find_wechat_pid() → find_wechat_pids() 返回所有 WeChat 相关 PID
- 对每个 PID 分别调用 task_for_pid + scan_memory
- 跨进程收集候选密钥后统一去重再与数据库 salt 匹配

fix jackwener#73
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant