FindURLinJS-AI Pro 是一款基于 hanbufei/findUriInjs 进行深度二次开发的 Burp Suite 插件。
本工具在原始版本正则嗅探的基础上,通过对接 Spring AI 后端实现了大语言模型(LLM)的智能解析。它不仅能从复杂的 JS/HTML 源码中精准提取 URL 路径,还能利用 AI 的语义理解能力,自动识别接口的用途说明并打上风险标签,极大提升了渗透测试中信息收集阶段的效率与广度。
- 🤖 智能 AI 识别引擎:利用大模型(如 GPT-4, DeepSeek, Ollama 等)的逻辑推理能力,识别传统正则难以匹配的动态拼接路径及隐藏 API 节点。
- 📊 列表详情联动 UI:
- 嗅探列表 (Master):实时记录捕获的 JS/HTML 目标文件及 AI 发现的链接总数。
- 嗅探详情 (Detail):点击文件即可在下方查看该文件内所有链接的路径、用途说明及 AI 标签。
- 📚 实战化规则推荐系统:
- 双击即用:内置覆盖 Web、小程序(WeChat)、API、内网收集、云原生等场景的海量高频正则,支持在推荐表中双击直接添加到生效列表。
- 自定义弹窗:点击添加按钮触发引导弹窗,支持强制校验“匹配模式”,防止无效配置。
- 🛡️ 精准流量双向过滤:
- 请求过滤规则:精准控制哪些请求需要被拦截分析。
- 响应匹配规则:设定关键字预过滤,只有响应体包含特定字符时才调用 AI,最大限度节省 API 额度。
- 💾 配置自动持久化:自定义 AI 接口地址和规则设置会自动保存到 Burp 配置文件,重启插件无需重复填写。
项目采用 客户端 (Burp 插件) - 服务端 (AI 后端) 架构:
- Burp 插件端:负责流量实时监听、规则预过滤、源码采集及 UI 联动展示。
- AI 后端 (llm-demo):基于 Spring Boot + Spring AI 搭建。接收插件传来的源码,调用 LLM 处理并返回结构化的结果 JSON。
- JDK: 17 或更高版本
- Maven: 3.6.0 或更高版本
在项目根目录下执行以下命令:
mvn clean package执行完毕后,在生成的 target 目录下找到 finurlinsplus-2.0-jar-with-dependencies.jar。
- 打开 Burp Suite -> Extensions -> Installed。
- 点击 Add 按钮 -> Extension type 选择 Java。
- 选择刚才生成的
jar-with-dependencies.jar文件并加载。
- AI 基础 URL:填写你的后端 AI 接口地址(例如:
http://127.0.0.1:8899/api/chat/),点击保存配置。 - 规则配置:
- 推荐模式:在左右两个推荐表中寻找合适的规则,双击对应行,规则会自动复制到上方的生效表中。
- 手动添加:点击“自定义添加规则”按钮,在弹窗中输入你自己的正则表达式。
- 正常浏览目标网站,符合过滤条件的流量会自动触发 AI 分析。
- 进入“嗅探结果”选项卡,上方列表显示文件概览。
- 点击列表中的某一行,下方详情表会实时刷新,展示该文件内隐藏的接口详情(包括用途和风险标签)。
| 场景分类 | 推荐正则表达式示例 | 场景说明 |
|---|---|---|
| 标准 WEB | `(^GET /.*.js) | (^GET /.*.html)` |
| API 监控 | `(^POST /api/.*) | (^GET /v1/.*)` |
| 微信小程序 | .*wechat.*\.js |
专门针对小程序业务逻辑提取 |
| 敏感字段 | token|auth|key|secret |
自动匹配含鉴权或密钥的响应 |
| 内网扫描 | 127.0.0.1|192.168.|localhost |
搜索源码中硬编码的内部地址 |
| 后台路径 | /admin/|/manage/|/config/ |
快速定位管理后台入口 |
- 感谢原作者 hanbufei 的开源贡献。
- 本项目的 AI 升级思路参考了 OWASP 推广的《使用 Spring AI 升级安全工具》技术方案。
本工具仅用于个人安全研究及经合法授权的渗透测试任务。用户因非授权使用本工具而导致的任何法律责任,由用户本人承担,作者不承担任何连带责任。
如果你喜欢这个项目,请给它一个 Star ⭐! 这对我很有帮助!