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

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

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

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

工具目录

分类

查看所有分类
Loading categories
demo-cve-2022-21449 — CVE-2022-21449 Java ECDSA 签名绕过漏洞的教育演示,使用真实和伪造的 JWT 令牌说明该漏洞及其对身份认证的影响。 | Kitploit
工具/GitHubGitHub/volodymyr-hladkyi-symphony/demo-cve-2022-21449
漏洞分析Web应用程序漏洞利用密码学渗透测试身份验证学习与教育
GitHubvolodymyr-hladkyi-symphony/demo-cve-2022-21449

demo-cve-2022-21449

CVE-2022-21449 Java ECDSA 签名绕过漏洞的教育演示,使用真实和伪造的 JWT 令牌说明该漏洞及其对身份认证的影响。

最受欢迎

查看全部 →

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

探索所有工具

浏览我们的工具集合

查看所有工具 →
查看仓库
111年前尚未审核
分享

演示项目:CVE-2022-21449 漏洞

该项目演示了 CVE-2022-21449 漏洞,该漏洞影响 Java 的 ECDSA 签名验证。此漏洞允许恶意行为者通过使用零值签名(r=0 和 s=0)绕过签名验证。项目使用真实和伪造的 JWT 令牌以及 EC 签名,在未安装安全补丁的 Java 17 上展示该问题。

特性

  • 真实 JWT 令牌:使用 EC 私钥签名的有效 JWT 令牌。
  • 伪造 JWT 令牌:签名被清零的 JWT 令牌(r=0, s=0)。
  • 验证:演示漏洞如何使伪造令牌通过验证。

前提条件

  • Java 17(未安装 CVE-2022-21449 安全补丁)。
  • Maven 用于构建项目。

项目结构

  • JwtGenerator:生成真实和伪造的 JWT 令牌。
  • JwtUtils:使用 EC 公钥验证 JWT 令牌。
  • SecurityConfig:配置 Spring Security 以演示基于令牌的身份验证。
  • ProtectedController:提供端点以测试基于令牌的访问控制。

如何使用 JwtGenerator 控制台应用

JwtGenerator 类是一个独立的控制台应用程序,用于生成并打印有效和伪造的 JWT 令牌。

运行步骤

  1. 构建项目:

    mvn clean install
    
  2. 运行 JwtGenerator 类:

    mvn exec:java -Dexec.mainClass="com.symphony_solutions.demo.util.JwtGenerator"
    
  3. 输出: 该应用程序将打印:

    • 一个有效的 JWT 令牌。
    • 一个伪造的 JWT 令牌(签名已清零)。

    示例:

    === 有效 JWT ===
    eyJhbGciOiJFUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiJhbGljZSIsInJvbGVzIjpbIkFETUlOIiwiVVNFUiJdLCJpYXQiOjE2NzAwMDAwMDAsImV4cCI6MTY3MDAzNjAwMH0.<signature>
    
    === 伪造 JWT(零签名) ===
    eyJhbGciOiJFUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiJib2IiLCJyb2xlcyI6WyJBRE1JTiIsIlVTRVIiXSwiaWF0IjoxNjcwMDAwMDAwLCJleHAiOjE2NzAwMzYwMDB9.<zeroed_signature>
    
  4. 使用令牌:

    • 复制令牌,将其用于在应用程序或其他工具中测试漏洞。

演示漏洞

  1. 启动应用程序:

    mvn spring-boot:run
    
  2. 访问受保护的端点:

    • 使用有效令牌访问 /protected/user 或 /protected/admin。
    • 使用伪造令牌演示漏洞如何允许未授权访问。
  3. 端点:

    • /protected/user:需要 USER 或 ADMIN 角色。
    • /protected/admin:需要 ADMIN 角色。

重要说明

  • 该项目仅供教育用途。请勿在生产环境中使用。
  • 确保您的 Java 版本已更新安全补丁以缓解 CVE-2022-21449。

参考

  • CVE-2022-21449 详情
  • Java 安全更新

许可证

该项目遵循 MIT 许可证。

下载工具