A Burp Suite extension for testing JWT (JSON Web Token) based authorization in web applications. This extension creates a matrix view of endpoints vs users, helping pentesters identify authorization issues across different user roles.
- Creates a visual matrix of endpoint access patterns
- Captures and organizes requests with JWT tokens
- Supports JWT tokens in both Authorization headers and Cookies
- Color-coded response status codes for quick analysis
- Detailed request/response inspection for each matrix cell
- Replay functionality to test endpoints with different JWT tokens
- JWT token management table for tracking valid tokens
- Proxy history parsing for retrospective analysis
- Configurable JWT claim field for user identification
- Request grouping by endpoint patterns
- Download and install Jython Standalone JAR
- In Burp Suite, go to
Extender->Options - Under "Python Environment", set the location of your Jython standalone JAR
- Go to
Extender->Extensions - Click "Add", select "Python" as the extension type
- Select the
JWTAuthMatrix.pyfile - Click "Next" to load the extension
- Go to the "Configuration" tab in the JWT Authorization Matrix
- Set the JWT claim field used to identify users (default: "sub")
- Choose JWT token location (Authorization header or Cookie)
- Configure which Burp tools to monitor (Proxy, Repeater, Intruder)
The matrix can be populated in two ways:
- Automatic Capture: Browse the application while the extension is running
- Parse Proxy History: Click "Parse Proxy History" to analyze existing Burp traffic
- Click cells to view detailed requests and responses
- Use [+] to expand grouped endpoints with parameters
- Right-click endpoints to remove them from the matrix
- Filter endpoints using the search box
- Track valid JWT tokens for different users
- Replay captured requests with different tokens
- Test authorization across user roles
- Add JWT tokens to the JWT Management table
- Select requests to replay
- Click "Replay All Requests with JWT Tokens"
- View results in the Replay Matrix tab
This extension is written in Python (Jython) and uses Burp's Extender API.
- Burp Suite Professional
- Jython Standalone 2.7.x
- Java Runtime Environment
This project is licensed under the MIT License.
Contributions are welcome! Please feel free to submit pull requests.
Alexis Pain
(This code is a mess because it's written by Claude AI and debugged by me....)