用途:用于前端 JavaScript 逆向的常规授权作业,覆盖定位接口签名、加密参数、风控字段,观察页面请求链路与脚本来源,运行时抓取函数入参与返回值,追踪 XHR/Fetch/WebSocket 触发点,以及把页面证据带回 Node 做本地复现与补环境。目标若为二进制、APK、PE、ELF、DLL、SO,应改用 ida-reverse、radare2 或 reverse-engineering。
核心原则:Observe-first、Hook-preferred、Breakpoint-last、Rebuild-oriented、Evidence-first,先页面观察,再最小化采样,再做本地补环境。
工作流分五阶段:1)Observe 用 js-reverse_new_page 或 js-reverse_navigate_page 打开页面,用 js-reverse_list_network_requests 找目标请求,用 js-reverse_get_request_initiator 回溯来源,用 js-reverse_list_scripts、js-reverse_search_in_sources 缩小脚本范围;2)Capture 优先用 js-reverse_break_on_xhr 与 js-reverse_evaluate_script 轻量采样,命中后看 js-reverse_get_paused_info,必要时用 js-reverse_set_breakpoint_on_text;3)Rebuild 把页面证据整理成本地可迭代的 Node 复现材料,补环境必须以页面观测证据为依据,不允许空想式补 window/document/navigator/crypto/storage;4)Patch 按报错与 first divergence 驱动,一次只做一个最小补丁并立即复测;5)DeepDive 在本地跑通后做去混淆、控制流还原与业务逻辑提纯,仅出签名可降级。
工具映射:list_scripts→js-reverse_list_scripts,get_script_source→js-reverse_get_script_source,search_in_sources→js-reverse_search_in_sources,break_on_xhr→js-reverse_break_on_xhr,evaluate_script→js-reverse_evaluate_script,get_paused_info→js-reverse_get_paused_info,set_breakpoint_on_text→js-reverse_set_breakpoint_on_text,list_network_requests→js-reverse_list_network_requests,get_request_initiator→js-reverse_get_request_initiator,get_websocket_messages→js-reverse_get_websocket_messages,take_screenshot→js-reverse_take_screenshot,new_page→js-reverse_new_page,navigate_page→js-reverse_navigate_page,select_page→js-reverse_select_page,select_frame→js-reverse_select_frame,pause/resume→js-reverse_pause_or_resume。前缀变化时应先更新映射,不要临时猜测。
jshookmcp 是增强执行面而非独立总控,适合浏览器自动化、CDP 调试、JS Hook、网络拦截、SourceMap 重建与 AST 辅助理解;它需先下载并在 MCP 客户端配置中显式注册启用后才可调用。
自举命令:powershell -File "<skill-root>\scripts\bootstrap-reverse.ps1" -Capability @('jshookmcp') -McpHostTarget Codex;注册并启动 anything-analyzer:powershell -File "<skill-root>\scripts\bootstrap-reverse.ps1" -Capability @('anything-analyzer') -StartServices -McpHostTarget Codex。不传 -McpHostTarget 时只准备能力并返回 registration-required,不修改 Claude 或 Codex 配置;Node.js 未安装时会先通过 winget 安装 Node.js 22。
限制与要求:所有重要步骤需写入本地 task artifact;无法解释为何调用某工具就不要调用;优先用现成 MCP 能力取证而非先写脚本重造;失败按 references/fallbacks.md 回退,输出遵循 references/output-contract.md。任务完成前需自检是否执行了工作流每一步、是否使用真实工具路径、是否产出可复现证据、是否完成并回写 Checklist。具体 MCP 客户端版本、授权范围、费用与平台支持等细节资料暂未提供。