Skip to content
KitploitKITPLOIT
ИнструментыБлог
Отправить
ИнструментыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
CVE_2023_44487-Rapid_Reset — Комплексный инструмент тестирования на Python для CVE-2023-44487 — уязвимости HTTP/2 Rapid Reset. Эта улучшенная версия обеспечивает детальный контроль над параметрами тестирования, множество шаблонов атак и расширенные возможности мониторинга. | Kitploit
Инструменты/GitHubGitHub/madhusudhan-in/cve_2023_44487-rapid_reset
Анализ уязвимостейЭксплуатацияЭксплуатация веб-приложенийВеб-безопасностьСетевая безопасностьТестирование на Проникновение
GitHubmadhusudhan-in/cve_2023_44487-rapid_reset

CVE_2023_44487-Rapid_Reset

Комплексный инструмент тестирования на Python для CVE-2023-44487 — уязвимости HTTP/2 Rapid Reset. Эта улучшенная версия обеспечивает детальный контроль над параметрами тестирования, множество шаблонов атак и расширенные возможности мониторинга.

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться
Репозиторий
115 дней назадЕщё не проверено

Инструмент тестирования CVE-2023-44487 HTTP/2 Rapid Reset — расширенная версия

Комплексный инструмент тестирования на Python для CVE-2023-44487 — уязвимости HTTP/2 Rapid Reset. Репозиторий содержит как инструменты для тестирования атак, так и инструменты, ориентированные на проверку.

⚠️ ВАЖНОЕ ПРЕДУПРЕЖДЕНИЕ

Этот инструмент предназначен ТОЛЬКО для образовательных целей и санкционированного тестирования!

  • Используйте его только против систем, которыми вы владеете или на тестирование которых имеете явное письменное разрешение
  • Несанкционированное использование может быть незаконным и может привести к нарушению работы сервисов
  • Инструменты выполняют тесты атак, которые могут повлиять на доступность сервера
  • Перед тестированием всегда убеждайтесь в наличии надлежащего разрешения

🔍 О CVE-2023-44487

CVE-2023-44487, также известная как «HTTP/2 Rapid Reset», — это критическая уязвимость в протоколе HTTP/2, которая позволяет злоумышленникам:

  • Вызывать отказ в обслуживании, быстро отправляя и отменяя потоки HTTP/2
  • Потреблять чрезмерные ресурсы сервера при минимальных ресурсах клиента
  • Обходить многие традиционные механизмы ограничения скорости
  • Поражать крупные веб-серверы и балансировщики нагрузки

Оценка 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  # Should be 3.7+

🛡️ Инструмент проверки (расширенный)

cve_2023_44487_verifier_enhanced.py

Назначение: обнаружение сигналов применения защитных мер для проверки после установки патча и контроля соответствия требованиям

Ключевые возможности

  • 📡 Захват SETTINGS сервера: записывает исходный кадр SETTINGS HTTP/2 сервера
  • 🛡️ Анализ кадров GOAWAY: перехватывает и классифицирует все кадры GOAWAY с кодами ошибок, соответствующими RFC 9113
  • 📊 Посекундное отслеживание частоты: контролирует частоту сбросов в секунду для обнаружения паттернов адаптивного ограничения
  • 🔍 Обнаружение сигналов применения защитных мер:
    • ✅ GOAWAY с ENHANCE_YOUR_CALM (0xb) — применение защитных мер на уровне протокола
    • ✅ TCP RST на транспортном уровне — вмешательство на граничном уровне
    • ✅ Ответы REFUSED_STREAM (0x7) — ограничение скорости на уровне потоков
    • ✅ Паттерны адаптивного ограничения — интеллектуальное обнаружение ограничения скорости
  • 📈 Классификация закрытия соединений: определяет, как и почему закрываются соединения
  • ⚡ Тестирование параллельных соединений: проверка нескольких соединений HTTP/2 одновременно
  • 🎯 Интеллектуальная система вердиктов: классифицирует статус уязвимости на основе фактических сигналов применения защитных мер

Быстрый старт

root@kitploit:~
# Basic verification
python3 cve_2023_44487_verifier_enhanced.py target.com

# Multiple concurrent connections
python3 cve_2023_44487_verifier_enhanced.py target.com -c 5 -s 500

# Verbose output with debugging
python3 cve_2023_44487_verifier_enhanced.py target.com -v -c 3 -s 1000

# Baseline test only (normal requests)
python3 cve_2023_44487_verifier_enhanced.py target.com --baseline-only

Параметры командной строки

Интерпретация вердикта

Скрипт выдаёт интеллектуальный вердикт на основе соответствующих RFC 9113 сигналов применения защитных мер:

✅ ПРИМЕНЕНИЕ ЗАЩИТНЫХ МЕР ПОДТВЕРЖДЕНО

root@kitploit:~
Server sends GOAWAY with ENHANCE_YOUR_CALM (0xb) error code
Classification: NOT VULNERABLE — protocol-layer enforcement is active
Meaning: HTTP/2 implementation has proper rate-limiting controls

⚠️ ОБНАРУЖЕНО ВМЕШАТЕЛЬСТВО НА ГРАНИЧНОМ/ТРАНСПОРТНОМ УРОВНЕ

root@kitploit:~
50%+ of connections terminated via TCP reset
Classification: LIKELY PROTECTED — verify with edge/infrastructure team
Meaning: Edge appliance or DDoS protection engaged at transport layer

⚠️ ОБНАРУЖЕНО АДАПТИВНОЕ ОГРАНИЧЕНИЕ

root@kitploit:~
Per-second reset rate drops significantly over time (late buckets <60% of early)
Classification: PARTIAL PROTECTION — confirm with infrastructure team
Meaning: Server or edge slowing the attack adaptively

⚠️ ОБНАРУЖЕН ОТКАЗ ОТ ПОТОКОВ

root@kitploit:~
Server sends REFUSED_STREAM (0x7) responses
Classification: PARTIAL PROTECTION — review rate limits
Meaning: Some stream-level rate-limiting in place

❌ ПРИМЕНЕНИЕ ЗАЩИТНЫХ МЕР НА УРОВНЕ ПРОТОКОЛА НЕ ОБНАРУЖЕНО

root@kitploit:~
No ENHANCE_YOUR_CALM GOAWAY, no TCP resets, no throttling detected
Classification: VECTOR EXERCISABLE — exploitability unconfirmed
Important: This doesn't prove DoS exploitability. Edge volumetric/behavioral 
protections (Akamai, CloudFlare) may engage at higher scales

Пример вывода

root@kitploit:~
============================================================
ENFORCEMENT SIGNAL ANALYSIS
============================================================
Server SETTINGS (initial frame):
  HEADER_TABLE_SIZE = 4096
  ENABLE_PUSH = True
  MAX_CONCURRENT_STREAMS = 128
  INITIAL_WINDOW_SIZE = 65535
  MAX_FRAME_SIZE = 16384
  → MAX_CONCURRENT_STREAMS=128 is conservative (good post-CVE default)

GOAWAY breakdown across connections:
  ENHANCE_YOUR_CALM (0xb): 3/5
  Other GOAWAY codes:      1/5
  No GOAWAY received:      1/5
  TCP reset (RST at transport): 0/5
  Total RST_STREAM frames from server: 2
  REFUSED_STREAM frames from server:   0
  Connections showing adaptive throttling: 1/5

============================================================
VERDICT
============================================================
✅ ENFORCEMENT CONFIRMED
   3/5 connection(s) received GOAWAY with ENHANCE_YOUR_CALM (0xb).
   This is the canonical signal that the CVE-2023-44487 mitigation is active.
   Classification: NOT VULNERABLE — protocol-layer enforcement is engaged.

Примеры расширенного использования

1. Проверка после установки патча

root@kitploit:~
# Verify patch deployment with 10 connections, 500 streams each
python3 cve_2023_44487_verifier_enhanced.py prod-api.example.com \
    -c 10 \
    -s 500 \
    -d 0.0001 \
    -v

2. Нестандартный порт и протокол

root@kitploit:~
# Test non-standard HTTPS port
python3 cve_2023_44487_verifier_enhanced.py example.com \
    -p 8443 \
    -c 5 \
    -s 1000

3. Проверка соответствия инфраструктуры

root@kitploit:~
# Minimal load compliance test
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)
  • Сервер отвечает на атаку rapid reset кадром GOAWAY 0xb
  • Указывает на активную защиту на уровне протокола
  • Рекомендуемая практика устранения CVE-2023-44487

REFUSED_STREAM (код ошибки 0x7):

  • Сервер отказывается открывать новые потоки
  • Альтернативный механизм ограничения скорости на уровне потоков
  • Менее распространённый, но всё же действенный способ защиты

Анализ частоты сбросов в секунду:

  • Группирует сбросы потоков в окна по 1 секунде
  • Обнаруживает адаптивное ограничение: если поздние окна << ранних, сервер адаптируется
  • Указывает на интеллектуальное ограничение скорости (а не просто жёсткие лимиты)

TCP RST на транспортном уровне:

  • Соединение разрывается на уровне TCP до корректного закрытия HTTP/2
  • Указывает на вмешательство граничного устройства или межсетевого экрана
  • Не является применением защитных мер на уровне протокола HTTP/2, но эффективно

Классификация закрытия соединений

Примеры интеграции

Автоматизация на 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)
    
    # Parse verdict from output
    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"

# Run test
status = run_verification("example.com", 5)

Непрерывный мониторинг

root@kitploit:~
#!/bin/bash
# Monitor critical services weekly

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 с использованием множества паттернов

Возможности

  • ⚡ Rapid Reset: стандартный HEADERS + немедленный RST_STREAM
  • 💥 Burst Reset: запросы пакетами с настраиваемыми задержками
  • 📈 Gradual Reset: постепенно возрастающая скорость атаки
  • 🎲 Random Reset: случайные тайминги для обхода предиктивной фильтрации
  • 🌊 Continuation Flood: атака флудом кадров CONTINUATION
  • 🔀 Mixed Pattern: комбинация нескольких паттернов

Базовое использование

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

Параметры командной строки

Параметры соединения

Параметры запросов

Паттерны атак

ПараметрОписаниеПо умолчанию
--pattern TYPEИспользуемый паттерн атаки

Доступные паттерны:

  • rapid_reset - стандартная атака rapid reset
  • burst_reset - атаки пакетами
  • gradual_reset - постепенно возрастающая скорость
  • random_reset - случайные тайминги
  • continuation_flood - флуд кадрами CONTINUATION
  • mixed_pattern - комбинация паттернов

Параметры протокола HTTP/2

Параметры вывода

Доступные форматы вывода:

  • 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. ImportError с модулями h2

    root@kitploit:~
    pip install --upgrade h2
    python3 --version  # Must be 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
  • База данных CVE NIST
  • Технический анализ Cloudflare
  • Блог Google по безопасности

⚖️ Правовое уведомление

Этот репозиторий предназначен для специалистов по кибербезопасности, исследователей и системных администраторов, чтобы они могли тестировать собственные системы или системы, на тестирование которых у них есть явное разрешение.

Ключевые правовые положения:

  • Тестируйте только системы, которыми вы владеете или на тестирование которых имеете письменное разрешение
  • Несанкционированное тестирование может нарушать законы о компьютерных преступлениях
  • Эти инструменты могут вызывать реальные сбои в работе сервисов
  • Перед тестированием всегда уведомляйте соответствующие заинтересованные стороны
  • По возможности проводите тестирование в окна технического обслуживания
  • Документируйте все действия по тестированию для целей аудита
  • Авторы не несут ответственности за несанкционированное использование

Помните: с большой силой приходит большая ответственность. Используйте эти инструменты этично и законно.


📄 Лицензия

Этот инструмент предоставляется под лицензией MIT. Подробности см. в файле LICENSE.

🆕 Что нового

Расширенный инструмент проверки

  • ✅ Захват SETTINGS сервера: анализ защитных параметров HTTP/2
  • ✅ Анализ кадров GOAWAY: классификация кодов ошибок в соответствии с RFC 9113
  • ✅ Обнаружение адаптивного ограничения: выявление паттернов ограничения скорости
  • ✅ Интеллектуальная система вердиктов: чёткие классификации (применение защитных мер подтверждено, граничная защита, уязвим и т. д.)
  • ✅ Классификация закрытия соединений: понимание того, как и почему завершаются соединения
  • ✅ Тестирование параллельных соединений: несколько одновременных тестов для надёжности

Руководство по выбору инструмента

Скачать инструмент
ПараметрОписаниеПо умолчанию
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
Причина закрытияЗначение
goaway_enhance_your_calmПолучен GOAWAY 0xb (наилучший индикатор устранения CVE)
goaway_*GOAWAY с другим кодом ошибки
tcp_resetПолучен TCP RST (вмешательство на граничном уровне)
broken_pipe / recv_errorОшибка соединения во время обмена данными
eof_no_goawayНеожиданный EOF без GOAWAY
no_close_no_enforcementСоединение осталось открытым (защитные меры не обнаружены)
ПараметрОписаниеПо умолчанию
-c, --connections NКоличество параллельных соединений1
--connection-timeout SECТайм-аут соединения в секундах10
--read-timeout SECТайм-аут чтения ответов5
--connection-delay SECЗадержка между соединениями0.0
ПараметрОписаниеПо умолчанию
-r, --requests NЗапросов на соединение100
--delay SECЗадержка между HEADERS и RST_STREAM0.001
--request-delay SECЗадержка между запросами0.0
--jitter FACTORКоэффициент рандомизации таймингов0.0
rapid_reset
--burst-size NЗапросов в пакете10
--burst-delay SECЗадержка между пакетами0.1
ПараметрОписаниеПо умолчанию
--window-size BYTESНачальный размер окна HTTP/265535
--frame-size BYTESМаксимальный размер кадра16384
--header-table-size BYTESРазмер таблицы заголовков HPACK4096
--enable-pushВключить server push HTTP/2False
--rst-error-code CODEКод ошибки RST_STREAM8
ПараметрОписаниеПо умолчанию
--output FORMATФормат выводаconsole
--output-file FILEИмя выходного файласоздаётся автоматически
--verbose, -vПодробный выводFalse
--debugОтладочное журналированиеFalse
--log-file FILEЖурналирование в файлNone
Сценарий использованияИнструментПричина
Проверка после установки патча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Детальная настройка