Skip to content

基于Chrome开发者协议(CDP)的AI自动化JavaScript逆向分析工具

License

Notifications You must be signed in to change notification settings

neverl805/AI_JS_DEBUGGER

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

AI_JS_DEBUGGER

本项目是基于Chrome开发者协议(CDP)的AI自动化JavaScript逆向分析工具,通过AI自动调试前端JS,自动分析加解密算法、密钥等,自动生成分析报告以及mitmproxy脚本。

声明:文中所涉及的技术、思路和工具仅供以安全为目的的学习交流使用,任何人不得将其用于非法用途以及盈利等目的,否则后果自负

功能特点

  • 支持固定js文件断点、XHR请求断点
  • XHR回溯,XHR模式下自动回溯顶层调用堆栈并自动断点
  • 根据调用堆栈、js片段、作用域等断点调试信息自动调试
  • 自动分析加解密算法、密钥、生成密钥方式等
  • 生成分析报告以及mitmproxy脚本

环境要求

  • Python 3.8+
  • Google Chrome浏览器
  • 大模型API密钥

视频演示

安装

  1. 克隆本仓库:
git clone https://github.com/yourusername/js-debugger-ai.git
cd js-debugger-ai
  1. 安装依赖:
pip install -r requirements.txt
  1. 配置Chrome:

main.py中,替换chrome浏览器路径:

executable_path = '/Applications/Google Chrome.app/Contents/MacOS/Google Chrome'

#executable_path = r'C:\Program Files\Google\Chrome\Application\chrome.exe'
  1. 配置API密钥:

ai/api/qwen_api.py中,替换示例API密钥为自己的大模型API密钥(目前只支持通义千问):

client = OpenAI(
    api_key="your-api-key-here",
    base_url="https://dashscope.aliyuncs.com/compatible-mode/v1",
)

使用方法

  1. 运行主程序:
python mian.py
  1. 选择断点模式:

    • js: 使用JavaScript文件路径和行号设置断点
    • xhr: 设置XHR请求断点
  2. 按照提示输入断点信息

JS断点示例

FAQ:若JS被压缩成一行,则断点行数为0行

请输入待分析站点链接:https://example.com/login
请选择断点模式(js/xhr): js
请输入JS文件路径: https://example.com/js/main.js
请输入断点行数: 120
请输入断点列数: 0

XHR断点示例

请输入待分析站点链接:https://example.com/login
请选择断点模式(js/xhr): xhr
请输入XHR请求URL(不填写则监听所有请求): /api/login

贡献

欢迎通过Pull Request或Issue贡献代码和想法。

许可证

本项目采用MIT许可证 - 详情请查看LICENSE文件。

About

基于Chrome开发者协议(CDP)的AI自动化JavaScript逆向分析工具

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 100.0%