
HTTP参数发现工具,使用大型字典为URL端点查找有效的查询参数,支持GET/POST/JSON/XML请求、速率限制处理以及从JS源被动提取。

Arjun 可以找出 URL 端点中的查询参数。如果你不明白这意味着什么,没关系,继续往下看。
Web 应用使用参数(或查询)来接受用户输入,以下面的例子为例:
http://api.example.com/v1/userinfo?id=751634589
这个 URL 似乎是为某个特定用户 ID 加载用户信息,但如果存在一个名为 admin 的参数,当它被设置为 True 时,端点会提供更多关于用户的信息呢?
这就是 Arjun 所做的:它使用包含 25,890 个参数名称的庞大默认词典来找出有效的 HTTP 参数。
最棒的是?它仅需发出 50-60 个请求,就能在不到 10 秒内遍历这个庞大的列表。原理在此。
GET/POST/POST-JSON/POST-XML 请求推荐按如下方式安装 arjun:
pipx install arjun
注意:如果你使用的是旧版 Python,请使用 pip 代替 pipx。
详细的用法指南请参见 Wiki 的用法部分。
下面是一些基本选项的直接链接:
你也可以自己使用 --help 参数来探索 Arjun。
参数名称词汇表是通过从 CommonCrawl 数据集中提取顶级参数名称,并将 SecLists 和 param-miner 词汇表中的最佳词汇合并而成。
db/special.json 词汇表取自 data-payloads。