Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
CVE-2026-21003-JWT-none-Algorithm-Bypass-via-kid-Header-Omission — 针对 CVE-2026-21003 的概念验证漏洞利用程序,演示通过省略 kid 标头并使用 'none' 算法绕过 JWT 身份验证,从而冒充用户。 | Kitploit
工具/GitHubGitHub/george0papasotiriou/cve-2026-21003-jwt-none-algorithm-bypass-via-kid-header-omission
身份验证与授权漏洞分析漏洞利用Web应用程序漏洞利用渗透测试API 安全对抗性攻击
GitHubgeorge0papasotiriou/cve-2026-21003-jwt-none-algorithm-bypass-via-kid-header-omission

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

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

针对 CVE-2026-21003 的概念验证漏洞利用程序,演示通过省略 kid 标头并使用 'none' 算法绕过 JWT 身份验证,从而冒充用户。

查看仓库
17天前尚未审核

CVE-2026-21003 – 通过省略 kid 标头绕过 JWT "none" 算法

程序代码(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 – 通过省略 kid 绕过 JWT "none" 算法

Severity: Critical

概述

自定义 JWT 验证器未能正确强制要求存在签名算法。如果令牌的标头省略了 alg 参数,或将其显式设置为 none,服务器将接受该令牌而无需验证签名,从而导致权限提升。

漏洞详情

  • 类型: 身份验证绕过
  • 影响: 可冒充任何用户。
  • 根本原因: 缺少算法时代码路径默认跳过签名验证。

漏洞利用演示

  1. 启动服务器:
    root@kitploit:~
    npm install express jsonwebtoken
    node jwt_verify_server.js
    
  2. 运行漏洞利用程序:
    root@kitploit:~
    pip install pyjwt requests
    python exploit_jwt_none.py
    

响应显示已以 admin 身份通过身份验证。

下载工具