fix(macos): scan WeChatAppEx helper processes for DB keys#82
Open
Yanmi3560 wants to merge 1 commit into
Open
Conversation
微信 3.8+ 将数据库操作分离到 WeChatAppEx Helper 进程, 原版只扫描主 WeChat 进程,导致密钥提取返回 0。 修改: - find_wechat_pid() → find_wechat_pids() 返回所有 WeChat 相关 PID - 对每个 PID 分别调用 task_for_pid + scan_memory - 跨进程收集候选密钥后统一去重再与数据库 salt 匹配 fix jackwener#73
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
问题
微信 3.8+ 将数据库操作分离到
WeChatAppExHelper 进程,原版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 相关进程task_for_pid+scan_memory测试
在微信 3.8+ 环境下:
预期:密钥匹配数 > 0,
all_keys.json正常生成。