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

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

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

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

工具目录

分类

查看所有分类
Loading categories
CVE_2023_44487-Rapid_Reset — 一款针对CVE-2023-44487(HTTP/2 Rapid Reset漏洞)的综合Python测试工具。此增强版本提供了对测试参数的精细控制、多种攻击模式以及高级监控能力。 | Kitploit
工具/GitHubGitHub/madhusudhan-in/cve_2023_44487-rapid_reset
漏洞分析漏洞利用Web应用程序漏洞利用Web安全网络安全渗透测试
GitHubmadhusudhan-in/cve_2023_44487-rapid_reset

CVE_2023_44487-Rapid_Reset

一款针对CVE-2023-44487(HTTP/2 Rapid Reset漏洞)的综合Python测试工具。此增强版本提供了对测试参数的精细控制、多种攻击模式以及高级监控能力。

最受欢迎

查看全部 →

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

探索所有工具

浏览我们的工具集合

查看所有工具 →
查看仓库
141个月前尚未审核
分享

CVE-2023-44487 HTTP/2 Rapid Reset 测试工具 - 增强版

一个针对 CVE-2023-44487(HTTP/2 Rapid Reset 漏洞)的全面 Python 测试工具。此仓库包含攻击测试和验证分析工具。

⚠️ 重要免责声明

此工具仅用于教育和授权测试目的!

  • 仅对您拥有或已获得明确书面许可的系统使用
  • 未经授权使用可能违法,并可能导致服务中断
  • 这些工具执行攻击测试,可能影响服务器可用性
  • 测试前务必确保持有适当授权

🔍 关于 CVE-2023-44487

CVE-2023-44487,也称为“HTTP/2 Rapid Reset”,是 HTTP/2 协议中的一个严重漏洞,允许攻击者:

  • 通过快速发送和取消 HTTP/2 流导致拒绝服务
  • 用最小的客户端资源消耗大量服务器资源
  • 绕过许多传统速率限制机制
  • 影响主流 Web 服务器和负载均衡器

CVSS 评分: 7.5(高危)

影响: 拒绝服务、资源耗尽

📋 依赖要求

  • Python 3.7 或更高版本
  • h2 库:pip install h2

📖 安装

  1. 克隆或下载仓库:
root@kitploit:~
git clone https://github.com/madhusudhan-in/CVE_2023_44487-Rapid_Reset.git cd CVE_2023_44487-Rapid_Reset
  1. 安装依赖:
root@kitploit:~
pip install h2
  1. 使脚本可执行:
root@kitploit:~
chmod +x *.py
  1. 验证 Python 版本:
root@kitploit:~
python3 --version  # 应为 3.7+

🛡️ 验证工具(增强版)

cve_2023_44487_verifier_enhanced.py

目的: 用于补丁后验证和合规性检查的强制执行信号检测

关键特性

  • 📡 服务器 SETTINGS 捕获:记录服务器初始 HTTP/2 SETTINGS 帧
  • 🛡️ GOAWAY 帧分析:捕获并分类所有 GOAWAY 帧,使用 RFC 9113 兼容的错误码
  • 📊 每秒速率跟踪:监控每秒重置速率以检测自适应限流模式
  • 🔍 强制执行信号检测:
    • ✅ ENHANCE_YOUR_CALM (0xb) GOAWAY —— 协议层强制执行
    • ✅ 传输层 TCP RST —— 边缘层干预
    • ✅ REFUSED_STREAM (0x7) 响应 —— 流级别速率限制
    • ✅ 自适应限流模式 —— 智能速率限制检测
  • 📈 连接关闭分类:识别连接关闭的方式和原因
  • ⚡ 并发连接测试:同时测试多个 HTTP/2 连接
  • 🎯 智能判定系统:基于实际强制执行信号对漏洞状态进行分类

快速开始

root@kitploit:~
# 基本验证
python3 cve_2023_44487_verifier_enhanced.py target.com

# 多个并发连接
python3 cve_2023_44487_verifier_enhanced.py target.com -c 5 -s 500

# 详细输出与调试
python3 cve_2023_44487_verifier_enhanced.py target.com -v -c 3 -s 1000

# 仅基线测试(普通请求)
python3 cve_2023_44487_verifier_enhanced.py target.com --baseline-only

命令行选项

选项描述默认值
host目标主机名(必需)-
-p, --port目标端口443
--no-ssl禁用 SSL/TLSFalse(SSL 启用)
-s, --streams每个连接的流数1000
-d, --delay流操作之间的延迟(秒)0.001
-c, --connections并发连接数1
--baseline-only仅执行基线测试(不攻击)False
-v, --verbose详细/调试输出False

理解判定

脚本基于 RFC 9113 兼容 的强制执行信号提供智能判定:

✅ 强制执行已确认

root@kitploit:~
服务器发送带有 ENHANCE_YOUR_CALM (0xb) 错误码的 GOAWAY
分类:不易受攻击 —— 协议层强制执行已激活
含义:HTTP/2 实现具备适当的速率限制控制

⚠️ 检测到边缘/传输层干预

root@kitploit:~
50% 以上的连接通过 TCP 重置终止
分类:可能受保护 —— 请与边缘/基础设施团队确认
含义:边缘设备或 DDoS 防护在传输层介入

⚠️ 检测到自适应限流

root@kitploit:~
每秒重置速率随时间显著下降(后期桶 < 早期桶的 60%)
分类:部分保护 —— 请与基础设施团队确认
含义:服务器或边缘正在自适应减缓攻击

⚠️ 检测到流拒绝

root@kitploit:~
服务器发送 REFUSED_STREAM (0x7) 响应
分类:部分保护 —— 请审查速率限制
含义:存在某种流级别速率限制

❌ 未观察到协议层强制执行

root@kitploit:~
未收到 ENHANCE_YOUR_CALM GOAWAY,无 TCP 重置,未检测到限流
分类:向量可执行 —— 可利用性未确认
重要说明:这并不能证明 DoS 可利用性。边缘容量/行为保护(如 Akamai、CloudFlare)可能在更大量级下介入

示例输出

root@kitploit:~
============================================================
强制执行信号分析
============================================================
服务器 SETTINGS(初始帧):
  HEADER_TABLE_SIZE = 4096
  ENABLE_PUSH = True
  MAX_CONCURRENT_STREAMS = 128
  INITIAL_WINDOW_SIZE = 65535
  MAX_FRAME_SIZE = 16384
  → MAX_CONCURRENT_STREAMS=128 较保守(良好的 CVE 后默认值)

各连接的 GOAWAY 分解:
  ENHANCE_YOUR_CALM (0xb):3/5
  其他 GOAWAY 码:          1/5
  未收到 GOAWAY:           1/5
  传输层 TCP 重置(RST):   0/5
  来自服务器的 RST_STREAM 帧总数:2
  来自服务器的 REFUSED_STREAM 帧: 0
  显示自适应限流的连接数: 1/5

============================================================
判定
============================================================
✅ 强制执行已确认
   3/5 个连接收到了带有 ENHANCE_YOUR_CALM (0xb) 的 GOAWAY。
   这是 CVE-2023-44487 缓解措施已激活的标准信号。
   分类:不易受攻击 —— 协议层强制执行已启用。

高级使用示例

1. 补丁后验证

root@kitploit:~
# 使用 10 个连接,每个 500 个流验证补丁部署
python3 cve_2023_44487_verifier_enhanced.py prod-api.example.com \
    -c 10 \
    -s 500 \
    -d 0.0001 \
    -v

2. 自定义端口和协议

root@kitploit:~
# 测试非标准 HTTPS 端口
python3 cve_2023_44487_verifier_enhanced.py example.com \
    -p 8443 \
    -c 5 \
    -s 1000

3. 基础设施合规性检查

root@kitploit:~
# 最小负载合规性测试
python3 cve_2023_44487_verifier_enhanced.py example.com \
    -c 3 \
    -s 200 \
    --baseline-only

技术细节

HTTP/2 强制执行信号

ENHANCE_YOUR_CALM(错误码 0xb):

  • 标准 HTTP/2 速率限制信号(RFC 9113)
  • 服务器以 GOAWAY 0xb 响应快速重置攻击
  • 表示协议层防御已激活
  • CVE-2023-44487 缓解的最佳实践

REFUSED_STREAM(错误码 0x7):

  • 服务器拒绝打开新流
  • 另一种流级速率限制机制
  • 较不常见但仍有效

每秒重置率分析:

  • 将流重置分桶到 1 秒时间窗口
  • 检测自适应限流:如果后期桶 << 早期桶,则服务器正在自适应
  • 表明智能限流(不仅仅是硬限制)

传输层 TCP RST:

  • 在优雅 HTTP/2 关闭之前连接已在 TCP 层终止
  • 表明边缘设备或防火墙干预
  • 非 HTTP/2 协议层强制执行,但仍有效

连接关闭分类

关闭原因含义
goaway_enhance_your_calm收到 GOAWAY 0xb(CVE 修复的最佳指标)
goaway_*带有其他错误码的 GOAWAY
tcp_reset收到 TCP RST(边缘层干预)
broken_pipe / recv_error通信期间连接错误
eof_no_goaway未收到 GOAWAY 即发生意外 EOF
no_close_no_enforcement连接保持打开(未检测到强制执行)

集成示例

Python 自动化

root@kitploit:~
import asyncio
import subprocess

def run_verification(target: str, num_connections: int = 3):
    cmd = [
        'python3', 'cve_2023_44487_verifier_enhanced.py',
        target,
        '-c', str(num_connections),
        '-s', '500',
        '-v'
    ]
    
    result = subprocess.run(cmd, capture_output=True, text=True)
    
    # 从输出中解析判定
    if "ENFORCEMENT CONFIRMED" in result.stdout:
        print(f"✅ {target} is protected")
        return "protected"
    elif "LIKELY PROTECTED" in result.stdout:
        print(f"⚠️  {target} has edge-level protection")
        return "edge_protected"
    else:
        print(f"❌ {target} shows no enforcement")
        return "vulnerable"

# 运行测试
status = run_verification("example.com", 5)

持续监控

root@kitploit:~
#!/bin/bash
# 每周监控关键服务

TARGETS="api.example.com web.example.com cdn.example.com"
LOG_DIR="/var/log/cve-2023-44487"
mkdir -p "$LOG_DIR"

for target in $TARGETS; do
    python3 cve_2023_44487_verifier_enhanced.py "$target" \
        -c 3 \
        -s 500 \
        -v > "$LOG_DIR/$target-$(date +%Y%m%d).log" 2>&1
done

🚀 攻击测试工具(旧版)

rapid_reset_test.py

目的: 支持多种模式的全面 HTTP/2 Rapid Reset 攻击测试

特性

  • ⚡ 快速重置:标准 HEADERS + 立即 RST_STREAM
  • 💥 爆发重置:在爆发中发送请求,可配置延迟
  • 📈 渐进重置:逐步增加攻击速率
  • 🎲 随机重置:随机时序以绕过预测性过滤
  • 🌊 CONTINUATION 洪泛:CONTINUATION 帧洪泛攻击
  • 🔀 混合模式:多种模式的组合

基本用法

root@kitploit:~
python3 rapid_reset_test.py https://target-server.com

高级使用示例

高吞吐量负载测试

root@kitploit:~
python3 rapid_reset_test.py https://target.com \
    --connections 50 \
    --requests 1000 \
    --delay 0 \
    --pattern rapid_reset \
    --track-latency \
    --output json

带自定义头的隐蔽测试

root@kitploit:~
python3 rapid_reset_test.py https://target.com \
    --pattern burst_reset \
    --burst-size 5 \
    --burst-delay 2.0 \
    --custom-headers "User-Agent: Mozilla/5.0" \
    --jitter 0.3

协议特定测试

root@kitploit:~
python3 rapid_reset_test.py https://target.com \
    --window-size 32768 \
    --frame-size 32768 \
    --header-table-size 8192 \
    --enable-push \
    --priority-frames \
    --randomize-streams

命令行选项

连接设置

选项描述默认值
-c, --connections N并发连接数1
--connection-timeout SEC连接超时(秒)10
--read-timeout SEC响应读取超时5
--connection-delay SEC连接间延迟0.0

请求设置

选项描述默认值
-r, --requests N每个连接的请求数100
--delay SECHEADERS 与 RST_STREAM 之间的延迟0.001
--request-delay SEC请求间延迟0.0
--jitter FACTOR时序随机化因子0.0

攻击模式

选项描述默认值
--pattern TYPE使用的攻击模式rapid_reset
--burst-size N每次爆发的请求数10
--burst-delay SEC爆发间延迟0.1

可用模式:

  • rapid_reset - 标准快速重置攻击
  • burst_reset - 基于爆发的攻击
  • gradual_reset - 逐步增加速率
  • random_reset - 随机时序
  • continuation_flood - CONTINUATION 帧洪泛
  • mixed_pattern - 模式混合

HTTP/2 协议设置

选项描述默认值
--window-size BYTESHTTP/2 初始窗口大小65535
--frame-size BYTES最大帧大小16384
--header-table-size BYTESHPACK 头表大小4096
--enable-push启用 HTTP/2 服务器推送False
--rst-error-code CODERST_STREAM 错误码8

输出选项

选项描述默认值
--output FORMAT输出格式console
--output-file FILE输出文件名自动生成
--verbose, -v详细输出False
--debug调试日志False
--log-file FILE日志文件None

可用输出格式:

  • console - 人类可读的控制台输出
  • json - 机器可读的 JSON
  • csv - 电子表格兼容的 CSV
  • xml - 结构化 XML 格式

风险评估

工具自动评估漏洞风险:

  • 🔴 高风险(成功率 >80%):服务器可能易受攻击
  • 🟡 中风险(成功率 50-80%):部分漏洞
  • 🟢 低风险(成功率 <50%):缓解措施似乎有效

🐛 故障排除

常见问题

  1. “No module named 'h2'”

    root@kitploit:~
    pip install h2
    
  2. 连接被拒绝 / 超时

    • 确认目标支持 HTTP/2:curl -I --http2 https://target.com
    • 检查防火墙规则
    • 验证 SSL/TLS 证书有效
  3. h2 模块的 ImportError

    root@kitploit:~
    pip install --upgrade h2
    python3 --version  # 必须为 3.7+
    
  4. 权限被拒绝

    root@kitploit:~
    chmod +x *.py
    python3 cve_2023_44487_verifier_enhanced.py target.com
    

调试步骤

  1. 启用详细日志:

    root@kitploit:~
    python3 cve_2023_44487_verifier_enhanced.py target.com -v
    
  2. 使用最小参数测试:

    root@kitploit:~
    python3 cve_2023_44487_verifier_enhanced.py target.com -s 10 -c 1
    
  3. 验证 HTTP/2 支持:

    root@kitploit:~
    python3 -c "import h2; print('h2 library OK')"
    

📚 参考

  • CVE-2023-44487 详情
  • RFC 9113 - HTTP/2 规范
  • NIST CVE 数据库
  • Cloudflare 技术分析
  • Google 安全博客

⚖️ 法律声明

本仓库旨在供网络安全专业人员、研究人员和系统管理员用于测试其自有系统或已获得明确许可测试的系统。

关键法律要点:

  • 仅测试您拥有或已获得书面许可的系统
  • 未经授权的测试可能违反计算机犯罪法律
  • 这些工具可能造成实际服务中断
  • 测试前务必告知相关利益方
  • 尽可能在维护窗口期使用
  • 记录所有测试活动以供审计
  • 作者不对未经授权使用负责

请记住:能力越大,责任越大。请合法、道德地使用这些工具。


📄 许可证

本工具依据 MIT 许可证提供。详情见 LICENSE 文件。

🆕 新特性

增强验证工具

  • ✅ 服务器 SETTINGS 捕获:检查防御性 HTTP/2 参数
  • ✅ GOAWAY 帧分析:RFC 9113 兼容错误码分类
  • ✅ 自适应限流检测:识别速率限制模式
  • ✅ 智能判定系统:清晰分类(强制执行已确认、边缘保护、易受攻击等)
  • ✅ 连接关闭分类:了解连接如何终止及原因
  • ✅ 并发连接测试:同时进行多次测试以确保可靠性

工具选择指南

使用场景工具原因
补丁后验证cve_2023_44487_verifier_enhanced.py检测强制执行信号
合规性检查cve_2023_44487_verifier_enhanced.py验证 CVE 缓解措施
基础设施评估cve_2023_44487_verifier_enhanced.py清晰、可操作的判定
攻击研究rapid_reset_test.py多种攻击模式
性能测试rapid_reset_test.py全面的指标
自定义模式rapid_reset_test.py精细配置
下载工具