A tool to test security of JSON Web Tokens. Test a JWT against all known CVEs;
N.B. Cloning the repository should be avoided except for development purposes! N.B. Deb package has to be considered beta
wget http://andreatedeschi.uno/jwtxploiter/jwtxploiter-1.2.1-1.noarch.rpm sudo rpm --install jwtxploiter-1.2.1-1.noarch.rpm
or, if previous version is installed on your machine
sudo rpm --upgrade jwtxploiter-1.2.1-1.noarch.rpm
sudo pip install jwtxploiter
wget http://andreatedeschi.uno/jwtxploiter/jwtxploiter_1.2.1-1_all.deb sudo dpkg -i jwtxploiter_1.2.1-1_all.deb
Cloing the repo:
git clone https://github.com/DontPanicO/jwtXploiter.git ./install.sh
N.B. python3-pip package is required to install dependencies, be sure to have it installed.
Web Application Penetration Tester / Bug Bounty Hunters
Devs who need to test the secuirty of JWTs used in their applications
Not For Students
For attacks that generates a jwks file, you could find it in the current working directory. Remeber to deletes such files in order to avoid conflicts.
For jku/x5u injection that needs to merge two urls (the server vulnerable url and your one), the HERE keyword is required.
For redirect attacks the keyword should replace the redirect url, e.g.
For jku/x5u injections via HTTP header injection attacks, the HERE keyword sould be appended to the vulnerable parameter, without replacing its value, e.g.
Also, in such cases, be sure to pass the server url and your one as comma separated values.
'/.well-known/jwks.json' is automatically appended to your url in jku/x5u attacks. So make sure to place the jwks file under this path on your server.
If you don't want that happen, use the --manual option, but this option is compatible only with --jku-basic and --x5u-basic so, you will need to manually craft the url and pass it to those options, even for attacks that exploit Open Redirect or HTTP header injection.
Look at the wiki for a detailed documentation.