Skip to content

gmh5225/hello_js_reverse_skill

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Camoufox 逆向分析 Skill

面向逆向分析与爬虫对抗场景的 Skill,围绕 camoufox-reverse MCP 构建单一工作流:先用 Camoufox 反检测浏览器完成网络捕获、源码定位、Hook 调试与反检测验证,再按需落地到 Node.js 或 Python 算法还原与自动化调用。

核心能力

  • 双语言算法还原: Node.js (crypto / crypto-js) 与 Python (hashlib / pycryptodome) 双路径实现
  • 加密算法还原: MD5/SHA/AES/DES/RSA/HMAC/Base64 等常见加密算法的纯算法复现
  • JS 混淆还原: OB混淆、控制流平坦化、eval打包、自定义VM/JSVMP 等混淆类型的分析策略
  • JSVMP 行为追踪: Hook/插桩/日志分析三板斧,从行为层面追踪 JS 虚拟机保护的签名生成链路(详见专项指南)
  • 动态 Cookie 逆向: eval首包、api预热、浏览器指纹等 Cookie 生成机制的破解
  • WASM 逆向: WebAssembly 加密模块的加载、环境补全和调用
  • 协议层对抗: TLS 指纹检测、HTTP/2 强制、频率限制等协议层防护的应对
  • 反检测浏览器: Camoufox C++ 引擎级指纹伪装,绕过 Cloudflare/瑞数/极验等反爬检测
  • 单 MCP 工作流: 统一使用 camoufox-reverse 完成源码搜索、Hook 注入、函数追踪、网络分析、请求拦截与反检测验证
  • 错误排查体系: 完整的请求失败排查流程和签名值不一致排查方法论
  • Codex/Claude Code 完整适配: 内置 Agent 授权指令框架,确保 AI 全力协助完成分析任务

快速使用

方式一:AI 对话框直接安装(推荐)

在你的 AI 编码工具(Cursor / Claude Code / codex 等)的对话框中输入:

请帮我配置skill并在后续触发相关操作的时候查阅该skill:https://github.com/WhiteNightShadow/hello_js_reverse_skill

AI 会自动完成下载、配置,并在后续 JS 逆向相关任务中自动调用该 Skill。

方式二:手动安装

将本仓库克隆到对应 AI 工具的 skills 目录下:

Cursor:

git clone https://github.com/WhiteNightShadow/hello_js_reverse_skill.git ~/.cursor/skills/hello_js_reverse_skill

Claude Code(Codex CLI):

git clone https://github.com/WhiteNightShadow/hello_js_reverse_skill.git ~/.codex/skills/hello_js_reverse_skill

VSCode(Copilot / Cline 等插件):

git clone https://github.com/WhiteNightShadow/hello_js_reverse_skill.git ~/.vscode/skills/hello_js_reverse_skill

安装完成后,AI Agent 会自动读取 SKILL.md 获取 Camoufox 逆向分析能力。当你在对话中涉及接口签名分析、反爬对抗、动态 Cookie、混淆 JS、WASM 或浏览器环境调试等场景时,Skill 会自动激活。

项目结构

hello_js_reverse_skill/
├── SKILL.md                        # 技能定义(AI Agent 读取的核心文件)
├── README.md                       # 项目文档
│
├── references/                     # 参考文档(知识库)
│   ├── workflow-overview.md        # 工作流总览与解法模式决策树
│   ├── crypto-patterns.md          # 加密算法识别与 Node.js/Python 双语言还原代码
│   ├── obfuscation-guide.md        # JS 混淆类型识别与还原策略
│   ├── hook-techniques.md          # Hook 技术大全(13种 Hook 模板)
│   ├── anti-debug.md               # 反调试对抗手册(7种绕过方案)
│   ├── environment-patch.md        # 环境补全指南(VM沙箱/WASM/jQuery/XHR)
│   ├── protocol-analysis.md        # 协议层分析(TLS/HTTP2/UA/频率限制)
│   ├── mcp-cookbook.md              # MCP 工具使用手册(5大场景操作步骤)
│   ├── jsvmp-analysis.md           # JSVMP 虚拟机保护专项分析指南(三板斧方法论)
│   └── troubleshooting.md          # 错误排查指南(请求失败/签名不一致/环境问题)
│
├── scripts/                        # 工具脚本
│   ├── check-deps.sh               # 环境依赖检查(Node.js + Python)
│   ├── sandbox-runner.js           # VM 沙箱执行器(CLI工具)
│   ├── hook-generator.js           # Hook 代码生成器(10种Hook模板)
│   └── crypto-identifier.js        # 加密算法识别器(密文特征分析)
│
├── templates/                      # 项目模板(按解法模式和语言分类)
│   ├── node-request/               # 模式A (Node.js):纯算法还原
│   │   ├── main.js
│   │   ├── utils/encrypt.js
│   │   ├── utils/request.js
│   │   └── package.json
│   ├── python-request/             # 模式A (Python):纯算法还原
│   │   ├── main.py
│   │   ├── utils/sign.py
│   │   ├── utils/request.py
│   │   ├── config/headers.json
│   │   ├── config/keys.json
│   │   └── requirements.txt
│   ├── vm-sandbox/                 # 模式B:VM 沙箱执行
│   │   ├── main.js
│   │   ├── utils/sandbox.js
│   │   ├── utils/request.js
│   │   └── package.json
│   ├── wasm-loader/                # 模式C:WASM 加载还原
│   │   ├── main.js
│   │   ├── utils/wasm-loader.js
│   │   ├── utils/env-patch.js
│   │   └── package.json
│   └── browser-auto/               # 模式D:浏览器自动化
│       ├── main.js
│       └── package.json
│
└── examples/                       # 示例
    └── demo-analysis.md            # 完整分析流程示例

快速开始

1. 环境检查

bash scripts/check-deps.sh

2. 作为 Cursor Skill 使用

将本目录放置到 .cursor/skills/ 下,AI Agent 会自动读取 SKILL.md 获取逆向分析能力。

3. 工具脚本

加密算法识别:

node scripts/crypto-identifier.js "e10adc3949ba59abbe56e057f20f883e"

生成 Hook 代码:

node scripts/hook-generator.js --type=cookie
node scripts/hook-generator.js --type=xhr --target="/api/data"
node scripts/hook-generator.js --type=all

VM 沙箱执行:

node scripts/sandbox-runner.js obfuscated.js --extract-cookie --verbose

4. 使用项目模板

根据分析结果选择合适的模板:

场景 语言 模板 何时使用
标准加密算法 Node.js templates/node-request/ 加密可用 crypto 库还原
标准加密算法 Python templates/python-request/ 加密可用 hashlib/pycryptodome 还原
动态 Cookie Node.js templates/vm-sandbox/ 服务端返回 JS 生成 Cookie
WASM 加密 Node.js templates/wasm-loader/ 加密在 .wasm 中实现
TLS/环境依赖 Node.js templates/browser-auto/ 无法脱离浏览器环境

Node.js 项目:

cp -r templates/node-request/ my_project/
cd my_project && npm install
# 修改 main.js 中的配置和加密逻辑
node main.js

Python 项目:

cp -r templates/python-request/ my_project/
cd my_project && pip install -r requirements.txt
# 修改 main.py 中的配置和 utils/sign.py 中的签名逻辑
python main.py

MCP 工具集成

本 Skill 只围绕 camoufox-reverse MCP 服务器组织能力(Camoufox 反检测浏览器,52 个工具):

核心工具 用途
launch_browser / navigate 启动反检测浏览器并导航到目标页面
search_code / search_code_in_script 在所有 JS 中搜索关键词 / 在指定脚本中精确搜索
set_breakpoint_via_hook 通过 JS Hook 设置伪断点,捕获参数和返回值(支持持久化)
trace_function 追踪函数调用,自动记录参数和返回值(支持持久化)
hook_function 注入自定义 Hook(before/after/replace,支持 non_overridable 防覆盖)
inject_hook_preset 一键预设 Hook(xhr/fetch/crypto/websocket/debugger_bypass,默认持久化)
freeze_prototype 冻结原型方法防止页面 JS 覆盖 Hook
hook_jsvmp_interpreter 一键插桩 JSVMP 解释器(追踪 Function.prototype.apply + 30+ 敏感属性)
get_jsvmp_log / dump_jsvmp_strings 获取 JSVMP 分析日志 / 提取字符串数组
compare_env 全面收集浏览器环境,用于补环境对照
trace_property_access Proxy 级别属性访问追踪
add_init_script 页面加载前注入脚本(支持 persistent 跨导航重注入)
get_request_initiator 获取发起请求的 JS 调用栈(改进 URL 匹配 + 诊断信息)
start_network_capture 启动网络捕获(支持 capture_body 捕获响应体)
intercept_request 拦截/修改/Mock 网络请求
check_detection / get_fingerprint_info 反检测验证与指纹查看
bypass_debugger_trap 一键绕过反调试陷阱
export_state / import_state 保存/恢复浏览器状态

详见 references/mcp-cookbook.md

逆向场景覆盖

场景 技术点 参考文档
请求参数签名 MD5/HMAC/自定义哈希 crypto-patterns.md
动态 Cookie eval首包/api预热/指纹Cookie hook-techniques.md
响应数据加密 AES/DES/RC4解密 crypto-patterns.md
OB混淆 字符串还原/CFF/变量重命名 obfuscation-guide.md
JSVMP 虚拟机保护 Hook/插桩/日志分析三板斧 jsvmp-analysis.md
自定义VM I/O追踪/Hook解释器 obfuscation-guide.md
WASM加密 加载/环境补全/导出函数调用 environment-patch.md
TLS指纹 Camoufox 反检测/curl-impersonate/curl_cffi protocol-analysis.md
HTTP/2 Node.js http2模块/Python httpx protocol-analysis.md
字体反爬 字体文件解析/CMAP映射 SKILL.md
WebSocket WS消息分析/协议解析 mcp-cookbook.md
反调试 debugger绕过/检测对抗 anti-debug.md
环境检测 webdriver/蜜罐/指纹 environment-patch.md
反检测站点 Cloudflare/瑞数/极验绕过 SKILL.md
请求失败排查 Cookie/Header/时间戳/签名对比 troubleshooting.md

技术栈

Node.js

  • crypto (内置): MD5/SHA/AES/DES/HMAC
  • crypto-js: CryptoJS 兼容实现
  • node-forge: RSA/PKI
  • axios: HTTP 请求
  • vm (内置): 沙箱执行
  • WebAssembly (内置): WASM 加载
  • http2 (内置): HTTP/2 请求
  • playwright-core: 浏览器自动化

Python

  • requests / httpx: HTTP 请求(httpx 支持 HTTP/2)
  • pycryptodome: AES/DES/RSA/3DES 加密
  • hashlib (内置): MD5/SHA 系列
  • hmac (内置): HMAC 签名
  • base64 (内置): Base64 编解码
  • execjs: 执行 JS 代码
  • curl_cffi: 带浏览器 TLS 指纹模拟的 HTTP 客户端

调试工具

About

🔧 AI-powered JS逆向工程 Skill —— 覆盖加密还原、混淆分析、动态Cookie、WASM逆向、协议对抗等全链路场景,通过 Node.js 实现算法还原与模拟请求。适配 Claude Code / Claude.ai / 其他AI编码工具

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • JavaScript 84.2%
  • Python 11.7%
  • Shell 4.1%