【AI赋能】MCP+Skill能力下的前端JS逆向自动化落地(附工具)

【AI赋能】MCP+Skill能力下的前端JS逆向自动化落地(附工具)

项目地址

https://github.com/Fausto-404/js-reverse-automation--skill

js-reverse-automation--skill

结合chrome-devtools-mcp的能力并加上Skill的规范,实现JSRPC+Flask+autoDecoder方案的前端JS逆向自动化分析,提升JS逆向的效率

适用场景

  • 需要快速落地前端签名/加密参数逆向
  • 需要将js逆向逻辑封装为可复用的代码
  • 需要与 Burp 配合进行抓包、改包

流程设计思路

针对js逆向中常用的远程调用法进行js逆向(如JSRPC+Mitmproxy、JSRPC+Flask等)中,初始配置阶段中面对的定位加密函数、编写注册代码、编写python代码等繁琐操作,通过引入AI的MCP和Skill技术进行赋能,让AI自动完成函数发现与注册代码生成,最终实现从“半自动”到“高自动”的跨越,人员全程只需下方指令,并最终配置一下burp即可完成JS逆向的全流程。

核心能力

  • 基于 MCP 连接真实浏览器,触发并跟踪js加密/签名链路
  • 自动定位 sign / enc / token 等关键参数生成入口
  • 自动生成 JSRPC 注入与注册代码
  • 自动生成 Python Flask 代理代码
  • 输出 Burp autoDecoder 对接说明,支持端到端联调
  • 支持AntiDebug_Breaker的11项反调试能力

项目结构

js-reverse-automation--skill/ ├── README.md # 项目说明、使用方式、更新说明和结构说明。 ├── SKILL.md # Skill 主控文件。只负责定义任务如何被触发、必须输入什么、流程怎么分阶段、输出和验收怎么要求。 ├── agents/ │ └── openai.yaml # Skill 的 agent 入口配置。负责定义默认提示词、默认输入格式和执行约束。 ├── artifacts/ # 运行期目录,用来承接流程中间产物和最终校验报告。预期会出现的文件如下: │ ├── artifacts/phase0_input.json # 规范化后的输入 │ ├── artifacts/phase1_trace.json # 浏览器链路复现结果 │ ├── artifacts/phase2_entrypoints.json # 参数入口识别结果 │ ├── artifacts/phase3_dependencies.json # 依赖、上下文和调用方式提取结果 │ └── artifacts/validation_report.json # 最终校验报告 ├── references/ │ ├── references/workflow-recon.md # 阶段流程说明书。 │ ├── references/output-contract.md # 输入输出契约说明书。 │ ├── references/failure-recovery.md # 失败恢复和诊断格式说明书。 │ ├── references/validation-checklist.md # 验收标准说明书。 │ └── references/antidebug/ │ ├── references/antidebug/debugger-loop.md # 处理无限 debugger、eval、Function 类问题。 │ ├── references/antidebug/console-detect.md # 处理控制台检测、日志篡改、清屏等问题。 │ ├── references/antidebug/timer-check.md # 处理时间差、性能计时、Promise 时序检测。 │ ├── references/antidebug/env-detect.md # 处理窗口大小、webdriver、UA、DevTools 检测等环境识别问题。 │ ├── references/antidebug/proxy-guard.md # 处理跳转、关闭页面、history、代理拦截等链路阻断问题。 │ └── references/antidebug/dynamic-alias.md # 处理动态别名、wrapper、resolver 型入口和不稳定路径。 └── scripts/ ├── scripts/check_inputs.py # 输入校验器。 ├── scripts/emit_analysis_result.py # 统一分析产物生成器。 ├── scripts/emit_jsrpc_stub.py # JSRPC 代码生成器。 ├── scripts/emit_flask_proxy.py # Flask 代理生成器。 ├── scripts/emit_burp_doc.py # Burp autoDecoder 文档生成器。 └── scripts/validate_artifacts.py # 全链路校验器。

使用示意

这边演示使用的是codex5.3(其他平台同理)

1、下载skills放置在codex的skills目录中,mac端的路径为/Users/用户名/.codex/skills/

2、将chrome-devtools-mcp服务写进 Codex 的配置

codex mcp add chrome-devtools -- npx -y chrome-devtools-mcp@latest

3、修改 Codex 的配置文件MAC的在~/.codex/config.toml,添加如下字段

[mcp_servers.chrome-devtools] command = "npx" args = ["-y", "chrome-devtools-mcp@latest"]

4、检测是否生效

5、启动mcp服务,当看到打开浏览器后MCP服务就配置好了。

/Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome \ --remote-debugging-port=9222 \ --remote-debugging-address=0.0.0.0

6、在codex客户端中使用该skills

7、输入所需要的信息

1、目标网址(完整 URL): 2、需要分析的加密参数名(如 sign / enc / token): 3、可复现请求示例(优先给 fetch/抓包原始请求): 4、环境限制(浏览器版本、是否需要代理/插件、是否允许注入):

8、等待程序运行完成即可

效果检验

1、启动JSRPC

2、在浏览器开发者工具的Console中,执行JSRpc项目中的 JsEnv_Dev.js文件内容。

3、在控制台注入AI生成的jsrpc_inject_hr_ncu_password.js。

4、测试jsrpc调用函数是否正常,可以看到是没问题的。

http://127.0.0.1:12080/go?group=fausto&action=generate_password_md5&param=111111

5、运行flask_proxy_hr_ncu.py

6、测试Flask是否可以正常加密,可以看到也是没问题的。

curl -X POST http://127.0.0.1:8888/encode \ -H "Content-Type: application/x-www-form-urlencoded" \ --data-urlencode "dataBody=username=111111&password=111111&code=1234&role=000002"

7、最后根据Burp autoDecoder 配置说明配置burp的autoDecoder插件,也成功加密了参数,整体成功运行完成

引用工具

首发地址

【AI赋能】MCP+Skill能力下的前端JS逆向自动化落地

作者:Fausto

https://xz.aliyun.com/news/91527

文章转载自 先知社区

Read more

在 OpenClaw 中安装 baidu-web-search skill(百度网页搜索技能)

在 OpenClaw 中安装 baidu-web-search skill(百度网页搜索技能),最推荐用 ClawHub CLI 一键安装,再配置百度千帆 API Key 即可使用。 一、前置准备 1. 安装 Node.js(v20+)与 npm/pnpm 验证安装 clawhub --version 全局安装 ClawHub CLI(OpenClaw 官方技能管理器) npminstall-g clawhub # 或国内加速pnpmadd-g clawhub 二、一键安装百度搜索技能 # 安装 baidu-search(百度网页搜索) clawhub install baidu-search --no-input * 安装路径:~/.openclaw/workspace/skills/baidu-search/

javascript能又干后端又干前端吗

javascript能又干后端又干前端吗

想知道 JavaScript 是否能同时胜任前端和后端开发工作,答案是完全可以——JavaScript 是少数能 “通吃” 前后端的语言,前端是它的原生主场,后端则通过 Node.js 实现,这也是 “全栈 JavaScript 开发” 的核心基础。我会从 “能做什么”“怎么做”“优势 / 注意事项” 三个维度讲清楚,帮你理解这种开发模式的实际应用 ym.miaoshou.net/hospital/528.html。 一、为什么 JavaScript 能同时做前后端? 1. 前端:JavaScript 的原生领域 浏览器是 JavaScript 的 “发源地”,它是前端开发的唯一核心语言,负责: * 操作 DOM(页面元素增删改查、交互效果); * 处理前端逻辑(

基于 Spring Boot 的 Web 三大核心交互案例精讲

基于 Spring Boot 的 Web 三大核心交互案例精讲

—知识点专栏——JavaEE专栏— 作为 Spring Boot 初学者,理解后端接口的编写和前端页面的交互至关重要。本文将通过三个经典的 Web 案例——表单提交、AJAX 登录与状态管理、以及 JSON 数据交互——带您掌握前后端联调的核心技巧和 Spring Boot 的关键注解。 1. 案例一:表单提交与参数绑定(计算求和) 本案例展示最基础、最传统的 Web 交互方式:HTML 表单提交。 1.1 后端代码:CalcController.java 使用 @RestController 简化接口编写,并通过方法参数接收表单数据。 packagecn.overthinker.springboot;importorg.springframework.web.bind.annotation.RequestMapping;importorg.springframework.

当 AI 开始「剧透」功能创意:初级开发者的反压制生存手册 —— 老码农的 Debug 式开导

当 AI 开始「剧透」功能创意:初级开发者的反压制生存手册 —— 老码农的 Debug 式开导

前言:哈喽,大家好,今天给大家分享一篇文章!并提供具体代码帮助大家深入理解,彻底掌握!创作不易,如果能帮助到大家或者给大家一些灵感和启发,欢迎收藏+关注哦 💕 目录 * 当 AI 开始「剧透」功能创意:初级开发者的反压制生存手册 —— 老码农的 Debug 式开导 * 📚 一、先别急着 Ctrl+C 焦虑:AI 的「创意」本质是啥? * 📘 1.1 AI 的功能模块生成:本质是「数据拟合」而非「创造」 * 📘 1.2 初级开发者的创意优势:带着「人类 bug」的独特性 * 📚 二、为什么你的创意会被「压制」?可能是参数没调对 * 📘 2.1