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-21003-JWT-none-Algorithm-Bypass-via-kid-Header-Omission — Proof-of-concept-Exploit für CVE-2026-21003, der die Umgehung der JWT-Authentifizierung demonstriert, indem der kid-Header weggelassen und der 'none'-Algorithmus verwendet wird, um sich als Benutzer auszugeben. | Kitploit
Tools/GitHubGitHub/george0papasotiriou/cve-2026-21003-jwt-none-algorithm-bypass-via-kid-header-omission
Authentifizierung & AutorisierungSchwachstellenanalyseExploitationWebanwendungs-ExploitationPenetrationstestsAPI-SicherheitAdversarial-Angriff
GitHubgeorge0papasotiriou/cve-2026-21003-jwt-none-algorithm-bypass-via-kid-header-omission

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

CVE-2026-21003-JWT-none-Algorithm-Bypass-via-kid-Header-Omission

Proof-of-concept-Exploit für CVE-2026-21003, der die Umgehung der JWT-Authentifizierung demonstriert, indem der kid-Header weggelassen und der 'none'-Algorithmus verwendet wird, um sich als Benutzer auszugeben.

Repository anzeigen
2vor 1 MonatNoch nicht geprüft

CVE-2026-21003 – JWT-"none"-Algorithmus-Bypass durch Auslassung des kid-Headers

Programmcode (Node.js)

root@kitploit:~
// jwt_verify_server.js - Vulnerable JWT verification
const jwt = require('jsonwebtoken');
const express = require('express');
const app = express();
app.use(express.json());

const publicKey = `-----BEGIN PUBLIC KEY-----
MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAu1SU1LfVLPHCYZM5rPY4...
-----END PUBLIC KEY-----`;

app.post('/verify', (req, res) => {
    const token = req.body.token;
    // Vulnerability: if no algorithm specified, defaults to HS256? Actually, jsonwebtoken can be tricked.
    // We simulate a custom verifier that accepts "none" if kid is missing.
    const decoded = jwt.decode(token, { complete: true });
    if (!decoded.header.alg || decoded.header.alg === 'none') {
        // Accept token without signature
        res.json({ status: 'authenticated', user: decoded.payload.sub });
    } else {
        jwt.verify(token, publicKey, { algorithms: ['RS256'] }, (err, payload) => {
            if (err) res.status(401).send('Invalid');
            else res.json({ status: 'authenticated', user: payload.sub });
        });
    }
});
app.listen(3000);

CVE-2026-21003 – JWT-"none"-Algorithmus-Bypass durch Auslassung von kid

Severity: Critical

Übersicht

Ein benutzerdefinierter JWT-Verifier erzwingt nicht ordnungsgemäß, dass ein Signaturalgorithmus vorhanden ist. Wenn der Header des Tokens den alg-Parameter auslässt oder ihn explizit auf none setzt, akzeptiert der Server das Token, ohne eine Signatur zu überprüfen, was eine Privilegienausweitung ermöglicht.

Details zur Schwachstelle

  • Typ: Authentifizierungsumgehung
  • Auswirkung: Identitätsübernahme eines beliebigen Benutzers.
  • Grundursache: Der Codepfad für einen fehlenden Algorithmus führt standardmäßig dazu, dass die Signaturprüfung übersprungen wird.

Exploit-Demonstration

  1. Starten Sie den Server:
    root@kitploit:~
    npm install express jsonwebtoken
    node jwt_verify_server.js
    
  2. Führen Sie den Exploit aus:
    root@kitploit:~
    pip install pyjwt requests
    python exploit_jwt_none.py
    

Die Antwort zeigt, dass die Authentifizierung als Admin erfolgt.

Tool herunterladen