Skip to content

Docs

How to use JWTtool safely

JWTtool is a browser-based offensive workbench for authorized security testing. Tokens are processed locally through WebAssembly and are not uploaded to a backend.

  • WASM in-browser
  • No upload
  • Local-first
Start testing

Quickstart

Open the workbench, paste a JWT (or use Examples), and wait for local WASM decoding. No account and no network upload.

Open workbench

Recommended workflow

  1. Decode — paste a JWT, Bearer header, or token= query value.
  2. Review risk — findings are ranked by severity with suggested actions.
  3. Attack — start with Recommended, then Mutations for quick edits.
  4. Export — copy, diff, or send generated variants from Results.
Browse examples

Attack types

Recommended surfaces contextual presets (expiration, alg:none, kid, privilege claims). Mutations cover fast payload/header edits. Advanced techniques (jku, x5u, confusion) stay collapsed until needed.

Try HS256 scenario

Keyboard shortcuts

Ctrl+K
Clear token input
Ctrl+R
Run all attack presets
Ctrl+C
Copy selected generated token
Ctrl+1
Try bundled sample token

Privacy model

Parsing, analysis, mutation, signing helpers, and Base64url utilities run in the browser. Avoid using production secrets unless you understand the local threat model of your machine and browser session.

Read trust model

Troubleshooting

  • WASM stuck loading — use Retry on the loader or hard-refresh the page.
  • Parse error — ensure the token has three Base64url segments (header.payload.signature).
  • Share links — full tokens use URL hash; sample scenarios use ?demo= for short links.

Responsible use

Only test systems you own or are explicitly authorized to assess. Generated tokens and request helpers are offensive testing utilities, not authorization bypass permission.

Ready to test a JWT locally?

Start with a safe sample token or paste an authorized token. Analysis and mutations run in your browser.