Skip to content
KitploitKITPLOIT
ToolsBlog
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
CVE-2026-4444-JWT-Algorithm-Confusion-via-kid-Injection — POC für CVE-2026-4444, der eine JWT-Algorithmus-Verwirrung durch Injektion eines nicht vertrauenswürdigen kid demonstriert, einschließlich eines verwundbaren Node.js-Servers und eines Python-Exploits zur Token-Fälschung und Privilegienerweiterung. | Kitploit
Tools/GitHubGitHub/george0papasotiriou/cve-2026-4444-jwt-algorithm-confusion-via-kid-injection
Authentifizierung & AutorisierungExploitationWebanwendungs-ExploitationKryptographieLernen & BildungAPI-SicherheitLabs & Praxis
GitHubgeorge0papasotiriou/cve-2026-4444-jwt-algorithm-confusion-via-kid-injection

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

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

POC für CVE-2026-4444, der eine JWT-Algorithmus-Verwirrung durch Injektion eines nicht vertrauenswürdigen kid demonstriert, einschließlich eines verwundbaren Node.js-Servers und eines Python-Exploits zur Token-Fälschung und Privilegienerweiterung.

Repository anzeigen
4vor 1 MonatNoch nicht geprüft

CVE-2026-4444 – JWT Algorithm Confusion durch kid-Injection

Programmcode (Node.js-Server + Python-Exploit)

root@kitploit:~
// 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 – JWT Algorithm Confusion durch kid-Injection

Severity: Critical

Übersicht

Ein JWT-Verifizierungsdienst vertraut blind dem kid-Header, um den öffentlichen Schlüssel zu finden, wodurch ein Angreifer eine URL angeben kann, die auf seinen eigenen Schlüssel verweist. Dies führt zu vollständiger Token-Fälschung und Privilegieneskalation.

Details zur Schwachstelle

  • Typ: JWT Algorithm Confusion / SSRF
  • Auswirkungen: Nicht autorisierter Zugriff, Identitätswechsel von Administratoren.
  • Grundursache: Der Server ruft einen öffentlichen Schlüssel von einer benutzerkontrollierten kid-URI ab, ohne zu validieren, dass er zu einer vertrauenswürdigen Quelle gehört.

Exploit-Demonstration

  1. Starten Sie den verwundbaren Server:
    root@kitploit:~
    node jwt_server.js
    
  2. Führen Sie den Exploit aus (der außerdem einen gefälschten Schlüsselserver startet):
    root@kitploit:~
    python exploit_jwt_kid.py
    
Tool herunterladen