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

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

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

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

工具目录

分类

查看所有分类
Loading categories
netty-http2-check — 离线 Java 工具,用于扫描 jar 包及版本,以判断是否暴露于七个 netty-codec-http2 CVE,并推荐可修复全部漏洞的单一补丁版本。 | Kitploit
工具/GitHubGitHub/xiaoqimikko/netty-http2-check
漏洞扫描器漏洞分析配置审计DevSecOps供应链安全
GitHubxiaoqimikko/netty-http2-check

netty-http2-check

离线 Java 工具,用于扫描 jar 包及版本,以判断是否暴露于七个 netty-codec-http2 CVE,并推荐可修复全部漏洞的单一补丁版本。

查看仓库
1天前尚未审核

最受欢迎

查看全部 →

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

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

netty-http2-check

针对 7 个 io.netty:netty-codec-http2 CVE 的离线检测工具。 告诉你实际暴露于哪些漏洞——以及能一次性修复全部漏洞的单一版本: 4.1.136.Final / 4.2.16.Final,这个版本号在七份安全公告中均未出现。

CVE-2025-55163 · CVE-2026-33871 · CVE-2026-47244 · CVE-2026-48043 · CVE-2026-50560 · CVE-2026-56819 · CVE-2026-59900

单一 jar 包,零运行时依赖,完全离线,需要 Java 17+。


为什么需要这个工具

七份安全公告各自给出了不同的修复版本。在 4.1 系列中,它们分别是 124 / 132 / 135 / 135 / 135 / 136 / 136。只跟随任何一份公告,你仍然处于其他漏洞的影响范围内。能够清除全部七个漏洞的版本必须自行计算 ——而它没有写在任何一份公告上。

在 4.2 系列中也是如此,只是数字完全不同(4 / 11 / 15 / 15 / 15 / 16 / 16)。 停留在 4.2.15.Final 的用户已经修复了七个中的五个,并且常常自认为"已经在新版本线上了"。

而且它刻意不扫描 pom.xml

如果你使用 Spring WebFlux,netty-codec-http2 是通过以下依赖链引入的:

root@kitploit:~
spring-boot-starter-webflux
  -> spring-boot-starter-reactor-netty
    -> reactor-netty-http
      -> netty-codec-http2

这个 artifactId 永远不会出现在你的 pom.xml 中。 基于 pom 的检测会得出"我没有使用它"的结论, 而这是错误的。本工具读取的是实际打包发布的 jar 文件。

用法

root@kitploit:~
java -jar netty-http2-check.jar target/                 # 扫描构建输出
java -jar netty-http2-check.jar myapp.jar               # Spring Boot fat-jar / war,包含嵌套 jar
java -jar netty-http2-check.jar --version 4.1.100.Final # 直接判断某个版本
java -jar netty-http2-check.jar --table                 # 打印完整规则表

在 Windows 控制台输出乱码时,可使用 --utf8 / --gbk。

示例:

root@kitploit:~
netty-codec-http2 4.1.135.Final
  evidence: META-INF/io.netty.versions.properties

中了 2 条:
  CVE-2026-56819   high     CVSS 7.5     解压泄漏 -> OOM
  CVE-2026-59900   medium   官方未给分    Host 头与 :authority 去重缺失 -> 路由绕过

-> 一次修完这几条,升到:4.1.136.Final

本工具不做哪些断言

  • 仅限这七个漏洞。 输出干净不代表 Netty 没有问题。
  • 七个中有四个是 medium。 只有 CVE-2025-55163、CVE-2026-33871 和 CVE-2026-56819 被评为 high。本工具会分别打印每个漏洞的严重级别,你也应该这样做。
  • 它从不猜测。 无法解析的版本、未知的发布线(4.0、5.0)、无法读取的 归档文件——全部报告为无法判断,绝不会报告为安全。
  • grpc-netty-shaded 会被检测到,但只有 CVE-2025-55163 列出了该坐标。 "公告没有列出它"并不等于"它不受影响"。

一个如实呈现而非隐藏的怪象

CVE-2026-33871 在 4.2 系列上:受影响范围是 < 4.2.10.Final,但声明的修复版本是 4.2.11.Final。4.2.10 恰好落在两者之间——在受影响范围之外,却低于修复版本。本工具 会明确报告这一点,而不是让它落入默认的"安全"分支。

规则表是生成的,不是手写的

tools/gen_rules.py 直接从 GitHub 安全公告构建 RuleTable.java,并且除非五个断言全部成立, 否则拒绝输出任何内容——包括计算出的交集确实为 4.1.136.Final / 4.2.16.Final, 以及这些版本确实存在于 Maven Central 上,同时一个哨兵版本返回 404。

tools/recheck_before_publish.py 通过刻意选择的不相关来源重新验证关键声明:NVD(而非 OSV——其 Maven 数据镜像自 GHSA)、Maven Central,以及真实 jar 的 字节码。字节码检查是双向的:修复标记必须存在于 4.1.136 且 不存在于 4.1.135。后半部分在首次运行时捕获了一个错误的检查。

构建

root@kitploit:~
mvn package     # target/netty-http2-check-0.1.0.jar
mvn test        # 23 个测试

许可证

MIT

下载工具