
Outil de découverte de paramètres HTTP qui trouve des paramètres de requête valides pour les points de terminaison URL en utilisant un large dictionnaire, prenant en charge les requêtes GET/POST/JSON/XML, la gestion des limites de débit et l'extraction passive à partir de sources JS.

Arjun peut trouver des paramètres de requête pour des points de terminaison d'URL. Si vous ne comprenez pas ce que cela signifie, pas de problème, lisez la suite.
Les applications web utilisent des paramètres (ou requêtes) pour accepter les entrées utilisateur, prenons l'exemple suivant :
http://api.example.com/v1/userinfo?id=751634589
Cette URL semble charger les informations utilisateur pour un identifiant spécifique, mais que se passerait-il s'il existait un paramètre nommé admin qui, lorsqu'il est défini sur True, fait que le point de terminaison fournisse plus d'informations sur l'utilisateur ?
C'est ce que fait Arjun : il trouve des paramètres HTTP valides à l'aide d'un vaste dictionnaire par défaut de 25 890 noms de paramètres.
Le meilleur ? Il faut moins de 10 secondes pour parcourir cette énorme liste tout en ne faisant que 50 à 60 requêtes à la cible. Voici comment.
GET/POST/POST-JSON/POST-XMLLa méthode recommandée pour installer arjun est la suivante :
pipx install arjun
Remarque : si vous utilisez une ancienne version de Python, utilisez pip à la place de pipx.
Un guide d'utilisation détaillé est disponible dans la section Utilisation du Wiki.
Des liens directs vers quelques options de base sont donnés ci-dessous :
Optionnellement, vous pouvez utiliser l'argument --help pour explorer Arjun par vous-même.
La liste de mots des noms de paramètres est créée en extrayant les noms de paramètres les plus courants de l'ensemble de données CommonCrawl et en y fusionnant les meilleurs mots des listes de SecLists et param-miner.
La liste de mots db/special.json provient de data-payloads.