【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

MBA培训管理系统低代码实战指南

MBA培训管理系统低代码实战指南

目录 * MBA培训管理系统开发实战指南 * 前言 * 第一部分:系统架构与组织管理 * 第01讲:系统概述与架构设计 * 第02讲:部门管理——组织架构的基石 * 第03讲:部门管理进阶——子部门与完整操作 * 第04讲:人员管理——企业管理的核心 * 第05讲:岗位管理——职责体系的构建 * 第06讲:角色管理——权限控制的基础 * 第07讲:页面管理与权限分配 * 第二部分:CRM客户管理 * 第08讲:用户登录与门户路由 * 第09讲:页面权限校验 * 第10讲:线索管理——销售的源头活水 * 第11讲:渠道管理——外部合作的桥梁 * 第12讲:线索分配——销售的精准对接 * 第13讲:门户管理——员工登录与工作台 * 第14讲:跟进管理——销售的日常工作 * 第15讲:公海池管理——客户资源的科学流转 * 第16讲:商机管理—

【GitHub项目推荐--Video2Robot:从视频到机器人动作的端到端生成管道】⭐

简介 Video2Robot 是由AIM-Intelligence开发的开源项目,是一个端到端的管道系统,能够将视频或文本提示转换为机器人可执行的运动序列。在机器人技术、动画制作和虚拟现实快速发展的今天,如何让机器人执行自然、流畅的人类动作成为关键挑战。传统方法需要专业动画师手动设计动作,或通过复杂的运动捕捉系统,过程耗时耗力且成本高昂。Video2Robot应运而生,通过整合先进的视频生成、人体姿态提取和运动重定向技术,实现了从简单描述到机器人动作的自动化转换。 核心价值: * 自动化流程:将复杂的手动设计过程自动化,显著提高效率 * 自然动作生成:基于真实人类动作生成自然流畅的机器人运动 * 多模态输入:支持文本提示、现有视频、图像参考等多种输入方式 * 广泛兼容性:支持多种主流机器人平台,包括Unitree、Booster等 项目定位:Video2Robot填补了自然语言/视频到机器人动作转换的技术空白。与需要专业设备和复杂流程的传统运动捕捉系统不同,该项目通过软件管道实现了低成本、高效率的动作生成。项目特别注重易用性和可扩展性,通过模块化设计支持不同组件的替换和

Vivado:使用 ILA 进行在线调试

Vivado:使用 ILA 进行在线调试

目录 一、ILA介绍 二、ILA使用步骤 (1)设计部分 (2)调用ILA IP核 (3)例化ILA IP核 (4)编译综合 三、ILA在线调试 (1)手动运行 (2)运行触发条件 (3)连续触发 一、ILA介绍         Vivado中的ILA(Integrated Logic Analyzer)即集成逻辑分析仪,是一种在线调试工具。ILA允许用户在FPGA上执行系统内的调试,通过实时抓取FPGA内部数字信号的波形,帮助我们分析逻辑错误的原因,从而更有效地进行debug。类似于Quartus中的SignalTap II,也类似于片上的逻辑分析仪。         相较于编写testbench仿真文件仿真debug的方式,使用ILA调试的方法不写tb仿真文件从而节省时间,可直接上板调试并查看波形。 二、ILA使用步骤         ILA常以IP核的方式调用,可以在IP Catalog中搜索ILA,找到该IP核后进行配置。 配置选项包括:样本数据深度、探针数量、

使用Flutter导航组件TabBar、AppBar等为鸿蒙应用程序构建完整的应用导航体系

使用Flutter导航组件TabBar、AppBar等为鸿蒙应用程序构建完整的应用导航体系

📖 前言 导航是移动应用中最重要的功能之一,它帮助用户在不同页面和功能之间切换。Flutter 提供了丰富的导航组件,包括 AppBar、BottomNavigationBar、TabBar、Drawer、Scaffold 等,能够构建完整的应用导航体系。 🎯 导航组件概览 Flutter 提供了以下导航组件: 组件名功能说明适用场景Scaffold页面骨架应用页面基础结构AppBar顶部导航栏页面标题、操作按钮BottomNavigationBar底部导航栏主要功能切换TabBar标签栏页面内内容分类TabBarView标签内容区标签对应的内容Drawer侧边抽屉导航菜单、设置BackButton返回按钮页面返回CloseButton关闭按钮关闭对话框 🏗️ Scaffold 组件 Scaffold 是 Material Design 应用的基础结构,提供了页面骨架。 基础用法 Scaffold( appBar:AppBar( title:Text('标题'),), body:Center( child:Text('页面内容'),),) 完整结构