Arjun
HTTP Parameter Discovery Suite
What's Arjun?
Arjun can find query parameters for URL endpoints. If you don't get what that means, it's okay, read along.
Web applications use parameters (or queries) to accept user input, take the following example into consideration
http://api.example.com/v1/userinfo?id=751634589
This URL seems to load user information for a specific user id, but what if there exists a parameter named admin which when set to True makes the endpoint provide more information about the user?
This is what Arjun does, it finds valid HTTP parameters with a huge default dictionary of 25,890 parameter names.
The best part? It takes less than 10 seconds to go through this huge list while making just 50-60 requests to the target. Here's how.
Why Arjun?
- Supports
GET/POST/POST-JSON/POST-XMLrequests - Automatically handles rate limits and timeouts
- Export results to: BurpSuite, text or JSON file
- Import targets from: BurpSuite, text file or a raw request file
- Can passively extract parameters from JS or 3 external sources
Installing Arjun
You can install arjun with pip as following:
pip3 install arjun
or, by downloading this repository and running
python3 setup.py install
How to use Arjun?
A detailed usage guide is available on Usage section of the Wiki.
Direct links to some basic options are given below:
Optionally, you can use the --help argument to explore Arjun on your own.
Credits
The parameter names wordlist is created by extracting top parameter names from CommonCrawl dataset and merging best words from SecLists and param-miner wordlists into that.
db/special.json wordlist is taken from data-payloads.
Metadata
Release files for arjun 2.2.7
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| arjun-2.2.7.tar.gz | 141.7 kB | Without provenance | Details for arjun-2.2.7.tar.gz |
Release files / arjun-2.2.7.tar.gz
| Download URL | arjun-2.2.7.tar.gz |
|---|---|
| Size | 141.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
b193cdaf97bf7b0e8cd91a41da778639e01fd9738d5f666a8161377f475ce72e
|
|
BLAKE2b-256 checksum How to use checksums |
0422c5b969720d2802de2248c2aac0414ee5ae234887cfe150564d591c73fb23
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/5.1.1 CPython/3.12.4
|
Security for arjun 2.2.7
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.