s0md3v/Arjun
GitHub: s0md3v/Arjun
Arjun 是一款基于 Python 的 HTTP 参数发现工具,帮助快速识别 Web 端点的有效查询参数。
Stars: 6105 | Forks: 853
Arjun
HTTP 参数发现套件
 ### 什么是 Arjun? Arjun 可以为 URL 端点找到查询参数。如果你不明白这是什么意思,没关系,继续阅读。 Web 应用程序使用参数(或查询)来接受用户输入,考虑以下示例 `http://api.example.com/v1/userinfo?id=751634589` 该 URL 看似加载特定用户 ID 的用户信息,但如果存在一个名为 `admin` 的参数,当它被设置为 `True` 时会使端点提供更多关于用户的信息? 这正是 Arjun 所做的,它使用包含 25,890 个参数名称的庞大默认字典来查找有效的 HTTP 参数。 最棒的是什么?它只需不到 10 秒的时间就能遍历这个庞大的列表,同时只向目标发送 50-60 次请求。[Here's how](https://github.com/s0md3v/Arjun/wiki/How-Arjun-works%3F)。 ### 为什么选择 Arjun? - 支持 `GET/POST/POST-JSON/POST-XML` 请求 - 自动处理速率限制和超时 - 将结果导出为 BurpSuite、文本或 JSON 文件 - 从 BurpSuite、文本文件或原始请求文件导入目标 - 可以被动从 JS 或 3 个外部来源提取参数 ### 安装 Arjun 推荐的安装 `arjun` 的方式如下: ``` pipx install arjun ``` ### 如何使用 Arjun? 详细的使用指南可在 Wiki 的 [Usage](https://github.com/s0md3v/Arjun/wiki/Usage) 部分找到。 以下提供了直接链接到一些基本选项: - [Scan a single URL](https://github.com/s0md3v/Arjun/wiki/Usage#scan-a-single-url) - [Import targets](https://github.com/s0md3v/Arjun/wiki/Usage#import-multiple-targets) - [Export results](https://github.com/s0md3v/Arjun/wiki/Usage#save-output-to-a-file) - [Use custom HTTP headers](https://github.com/s0md3v/Arjun/wiki/Usage#use-custom-http-headers) 可选地,你可以使用 `--help` 参数自行探索 Arjun。 ##### 贡献者 参数名称词表是通过从 [CommonCrawl](http://commoncrawl.org) 数据集提取顶级参数名称,并将 [SecLists](https://github.com/danielmiessler/SecLists) 和 [param-miner](https://github.com/PortSwigger/param-miner) 词表中的最佳词汇合并而成的。 `db/special.json` 词表取自 [data-payloads](https://github.com/yehgdotnet/data-payloads)。标签:API 测试, ATT&CK映射, Blue Team, ClamAV, Detection Engineering, DNS解析, GET 请求, JSON 请求, POST 请求, Python 实现, Sigma规则, SOC工具, VEH, VentirTotal, Web 安全测试, XML 请求, 代码生成, 多平台支持, 字典攻击, 安全, 安全开发, 开源项目, 文件识别, 杀毒引擎, 渗透测试工具, 漏洞发现, 目标导入, 计算机取证, 超时处理, 逆向工具, 速率限制处理, 防御安全