Skip to content
KitploitKITPLOIT
FerramentasBlog
Log in
Enviar
FerramentasBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

FeedsContatoPrivacidade© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
CVE-2026-4444-JWT-Algorithm-Confusion-via-kid-Injection — PoC para CVE-2026-4444 demonstrando confusão de algoritmo JWT via injeção de kid não confiável, incluindo servidor Node.js vulnerável e exploit em Python para falsificação de tokens e escalonamento de privilégios. | Kitploit
Ferramentas/GitHubGitHub/george0papasotiriou/cve-2026-4444-jwt-algorithm-confusion-via-kid-injection
Autenticação e AutorizaçãoExploraçãoExploração de Aplicações WebCriptografiaAprendizado e EducaçãoSegurança de APILabs e Prática
GitHubgeorge0papasotiriou/cve-2026-4444-jwt-algorithm-confusion-via-kid-injection

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar

CVE-2026-4444-JWT-Algorithm-Confusion-via-kid-Injection

PoC para CVE-2026-4444 demonstrando confusão de algoritmo JWT via injeção de kid não confiável, incluindo servidor Node.js vulnerável e exploit em Python para falsificação de tokens e escalonamento de privilégios.

Ver Repositório
18há 1 mêsAinda não revisado

CVE-2026-4444 – Confusão de Algoritmo JWT via Injeção de kid

Código do Programa (servidor Node.js + exploit Python)

// jwt_server.js - Vulnerable JWT verification server
const express = require('express');
const jwt = require('jsonwebtoken');
const jwksClient = require('jwks-rsa');
const axios = require('axios');

const app = express();
app.use(express.json());

// Normally fetches public key from a JWKS endpoint, but vulnerable kid handling
async function getPublicKey(kid) {
    // Attacker can inject a kid that points to their own URL
    if (kid.startsWith('http://') || kid.startsWith('https://')) {
        // Fetch the key from attacker-controlled URL (INSECURE!)
        const response = await axios.get(kid);
        return response.data.publicKey; // expects PEM
    }
    // Otherwise use local JWKS (simulated)
    return `-----BEGIN PUBLIC KEY-----
MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAu1SU1LfVLPHCYZM5rPY4
...
-----END PUBLIC KEY-----`;
}

app.post('/api/verify', async (req, res) => {
    const token = req.body.token;
    const decoded = jwt.decode(token, { complete: true });
    const kid = decoded.header.kid;
    try {
        const publicKey = await getPublicKey(kid);
        const payload = jwt.verify(token, publicKey, { algorithms: ['RS256','HS256'] });
        res.json({ status: 'authenticated', user: payload.sub });
    } catch (e) {
        res.status(401).json({ error: e.message });
    }
});

app.listen(3000, () => console.log('JWT server on :3000'));

CVE-2026-4444 – Confusão de Algoritmo JWT via Injeção de kid

Severity: Critical

Visão Geral

Um serviço de verificação JWT confia cegamente no cabeçalho kid para localizar a chave pública, permitindo que um atacante forneça uma URL que aponte para a sua própria chave. Isso leva à falsificação total de tokens e à escalada de privilégios.

Detalhes da Vulnerabilidade

  • Tipo: Confusão de Algoritmo JWT / SSRF
  • Impacto: Acesso não autorizado, suplantação de administrador.
  • Causa raiz: O servidor busca uma chave pública de uma URI kid controlada pelo usuário sem validar se ela pertence a uma origem confiável.

Demonstração do Exploit

  1. Inicie o servidor vulnerável:
    node jwt_server.js
    
  2. Execute o exploit (que também inicia um servidor de chaves falso):
    python exploit_jwt_kid.py
    
Baixar ferramenta