shriyanss/js-recon
GitHub: shriyanss/js-recon
js-recon 是一款针对现代 Web 应用的 JavaScript 侦察与分析工具,能够自动发现、下载和分析 JS 文件以提取 endpoint、敏感信息和 HTTP 请求等关键情报。
Stars: 13 | Forks: 5
# JS Recon
     
一款强大的 JavaScript 侦察工具。`js-recon` 可以帮助您发现、下载和分析 JavaScript 文件,从而从任何运行受支持框架的 Web 应用程序中发掘 endpoint、机密信息和其他有价值的信息。
它还可以重构应用程序向服务器发出的 HTTP 请求,并将其输出为 OpenAPI 规范。
## 安装说明
此工具需要安装 Node.JS 和 `npm`。可以参考[官方下载页面](https://nodejs.org/en/download)。请安装 **22.17.0 (LTS)** 或更高版本。下载旧版本可能会导致工具无法正常运行。
要全局安装该工具,请运行:
```
npm i -g @shriyanss/js-recon
```
有关详细的安装和设置过程,请参阅[安装页面](https://js-recon.io/docs/docs/installation)
## 框架支持
JS Recon 工具中的功能是在对运行不同框架的应用程序进行深入研究后构建的。
有关不同框架间功能兼容性的详细信息,请参阅[框架支持](https://js-recon.io/docs/docs/framework-support)页面。
## 快速开始
```
# 获取所有命令的列表
js-recon --help
# 获取特定命令的帮助
js-recon --help
```
要对目标启动快速评估,可以使用 `run` 模块来自动化其他模块
```
js-recon run -u https://app.example.com
```
## 命令
`js-recon` 提供了一套用于全面 JavaScript 分析的命令。有关详细用法和示例,请参阅其完整文档。
| 命令 | 描述 | 文档 |
| ------------- | ----------------------------------------------------------------------------- | -------------------------------------------------------------- |
| `lazyload` | 从目标下载动态加载的 JavaScript 文件。 | [阅读文档](https://js-recon.io/docs/docs/modules/lazyload) |
| `endpoints` | 从 JS 文件中提取 API endpoint 和客户端路径。 | [阅读文档](https://js-recon.io/docs/docs/modules/endpoints) |
| `strings` | 从 JS 文件中提取字符串、URL 和潜在的机密信息。 | [阅读文档](https://js-recon.io/docs/docs/modules/strings) |
| `map` | 映射函数调用并分析代码,支持可选的 AI 驱动描述。 | [阅读文档](https://js-recon.io/docs/docs/modules/map) |
| `api-gateway` | 管理 AWS API Gateway,通过 IP 轮换绕过速率限制。 | [阅读文档](https://js-recon.io/docs/docs/modules/api-gateway) |
| `run` | 在目标上自动运行所有分析模块。 | [阅读文档](https://js-recon.io/docs/docs/modules/run) |
| `analyze` | 分析代码。 | [阅读文档](https://js-recon.io/docs/docs/modules/analyze) |
| `report` | 根据分析模块生成报告。 | [阅读文档](https://js-recon.io/docs/docs/modules/report) |
| `mcp` | AI 驱动的交互式 CLI、单次聊天以及 MCP stdio 服务器。 | [阅读文档](https://js-recon.io/docs/docs/modules/mcp) |
| `fingerprint` | 检测目标 URL 使用的 JavaScript 框架(输出 JSON/JSONL)。 | [阅读文档](https://js-recon.io/docs/docs/modules/fingerprint) |
| `refactor` | 根据映射的 JSON 文件重构并解混淆 webpack 模块。 | [阅读文档](https://js-recon.io/docs/docs/modules/refactor) |
| `load` | 从 Caido 或 Burp Suite 导出的文件填充响应缓存。 | [阅读文档](https://js-recon.io/docs/docs/modules/load) |
| `cs-mast` | 为 JS 文件计算 CS-MAST 结构哈希值并查找哈希冲突。 | [阅读文档](https://js-recon.io/docs/docs/modules/cs-mast) |
## 主要功能
- 从受支持框架的网站下载所有动态加载的 JS 文件(称为 `lazyload`)
- 使用 API gateway 轮换 IP 地址以绕过防火墙
- 从发现的 JS 文件中提取字符串,并从中提取潜在的机密信息、endpoint 等
- Endpoints 模块从应用程序中提取客户端路径
- Map 功能分析 JS 文件并将其输出到 JSON 文件。然后可以使用交互模式对其进行分析
- 重构应用程序向服务器发出的 HTTP 请求,并将其输出为 OpenAPI 规范
- 运行 analyze 以发现 JS 代码和应用程序发出的 HTTP 请求中的潜在问题
- 根据 analyze 模块生成报告
## 示例场景
请参阅[此页面](https://js-recon.io/docs/docs/example-scenarios/next-js),其中演示了针对 Next.JS 目标运行此工具的示例场景。
## 文档
有关详细的指南、命令选项和高级用法示例,请查看 JS Recon 网站 https://js-recon.io
## 实验室
标签:GNU通用公共许可证, MITM代理, Node.js, 实时处理, 密码管理, 文档结构分析, 暗色界面, 漏洞侦察, 自动化攻击