
大規模な辞書を使用してURLエンドポイントの有効なクエリパラメータを見つけ出すHTTPパラメータ発見ツールであり、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リクエストをサポート推奨されるインストール方法は以下の通りです。
pipx install arjun
注意: 古いバージョンのPythonを使用している場合は、pipxの代わりにpipを使ってください。
詳細な使用ガイドはWikiのUsageセクションにあります。
いくつかの基本的なオプションへの直接リンクは以下の通りです。
必要に応じて、--help引数を使うとArjunを自分で探索できます。
パラメータ名のワードリストは、CommonCrawlデータセットから上位のパラメータ名を抽出し、SecListsとparam-minerのワードリストから最適な単語をマージして作成されています。
db/special.jsonワードリストはdata-payloadsから取得しています。