Arjun
Arjun is an HTTP parameter discovery suite that finds query parameters for URL endpoints using a large dictionary of 25,890 parameter names. It efficiently tests parameters with minimal requests, typically completing in under 10 seconds.
Description
Web applications use parameters or queries to accept user input, such as in http://api.example.com/v1/userinfo?id=751634589. Arjun discovers hidden parameters like 'admin' that could reveal more information when set to specific values. It brute-forces valid HTTP parameters rapidly, making just 50-60 requests to the target.
Arjun supports penetration testing (PENTEST) and network security analysis, serving as an OSINT tool. Key features include support for GET/POST/POST-JSON/POST-XML requests, automatic handling of rate limits and timeouts, export to BurpSuite, text, or JSON files, and import from BurpSuite, text files, or raw request files. It can also passively extract parameters from JS or 3 external sources.
How It Works
Arjun uses a default dictionary of 25,890 parameter names to test URL endpoints by injecting parameters into requests. It supports GET/POST/POST-JSON/POST-XML methods, employs concurrent threads for efficiency, handles rate limits and timeouts automatically, and chunks requests to minimize the number needed (50-60 for the full list). Passive mode extracts parameters from JavaScript or external sources without active requests.
Installation
sudo apt install arjunFlags
Examples
arjun -harjun -u http://api.example.com/v1/userinfoarjun -u http://target.com -o output.jsonarjun -u http://target.com -oT output.txtarjun -u http://target.com -oBarjun -u http://target.com -t 10arjun -u http://target.com -w custom.txtarjun -u http://target.com --passive