Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
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
web-server-audit_CVE-2026-42945 — Audit CVE de serveurs web sensible aux déclencheurs pour nginx et Apache. Va au-delà de la simple correspondance de versions en vérifiant si le chemin de code vulnérable est réellement atteignable dans votre configuration. Classe les résultats en Actif / Latent / Non vérifié. Python 3.5+ en un seul fichier, sans dépendances. | Kitploit
Outils/GitHubGitHub/sibersan/web-server-audit_cve-2026-42945
Scanners de VulnérabilitésAnalyse des VulnérabilitésAudit de ConfigurationSécurité WebDevSecOpsMauvaise Configuration
GitHubsibersan/web-server-audit_cve-2026-42945

web-server-audit_CVE-2026-42945

Voir le dépôt
4il y a 3 moisPas 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 →

À propos

Audit CVE de serveurs web sensible aux déclencheurs pour nginx et Apache. Va au-delà de la simple correspondance de versions en vérifiant si le chemin de code vulnérable est réellement atteignable dans votre configuration. Classe les résultats en Actif / Latent / Non vérifié. Python 3.5+ en un seul fichier, sans dépendances.

Partager

web_server_audit

Ne demandez pas si vous êtes vulnérable. Demandez si vous êtes exploitable.

Outil Python mono-fichier qui audite nginx et Apache face aux CVE connues en vérifiant à la fois la version installée et si le chemin de code vulnérable est réellement accessible via votre configuration.

Pourquoi ?

La plupart des scanners de CVE s'arrêtent à la correspondance de version : « nginx 1.18.0 — CVE-2026-42945, sévérité HIGH, vous êtes vulnérable. » Mais de nombreuses CVE nécessitent un schéma de configuration spécifique pour être exploitables. Un scanner qui ignore la configuration vous submerge d'alertes rouges qui ne reflètent pas le risque réel — et pire, il peut masquer les risques latents qui deviendraient réels si votre configuration changeait demain.

web_server_audit répond à deux questions distinctes par CVE :

  1. La version installée se trouve-t-elle dans la plage vulnérable ?
  2. Le motif déclencheur est-il présent dans la configuration active ?

En combinant ces deux éléments, on obtient trois classifications honnêtes :

ClassificationSignification
🔴 Risque d'exploitation activeVersion vulnérable et déclencheur présent. Exploitable aujourd'hui.
🟡 Risque latentVersion vulnérable, pas de déclencheur. Devient exploitable si un changement de configuration introduit le motif.
⚪ Non vérifiéConfiguration illisible ; statut inconnu.

Fonctionnalités

  • 🎯 Détection de déclencheur par CVE (pas seulement la correspondance de version)
  • 🟢 Séparation risque actif / risque latent dans le résumé exécutif
  • 🐧 Prise en compte d'Ubuntu Pro / ESM — signale les paquets hors couverture ESM
  • 🔬 Vérification ASLR, état du service, ports en écoute, nombre de SIGSEGV récents
  • 🎨 Sortie terminal colorée, JSON pour l'automatisation
  • 📦 Fichier unique, Python 3.5+, aucune dépendance tierce
  • 🔌 Extensible trivialement — ajoutez une nouvelle CVE en ~10 lignes

Démarrage rapide

root@kitploit:~
git clone https://github.com/YOUR_USERNAME/web-server-audit.git
cd web-server-audit
sudo python3 web_server_audit.py

CVE prises en charge (nginx)

CVESévéritéMotif déclencheur
CVE-2026-42945 (Rift)HIGHrewrite + capture sans nom ($1,$2) + ? dans le remplacement
CVE-2026-42946MEDIUMscgi_pass ou uwsgi_pass utilisé
CVE-2026-40701MEDIUMssl_stapling on + resolver ensemble
CVE-2026-42934LOWdirectives charset/charset_types/source_charset

La liste des CVE Apache est actuellement vide, mais la structure est en place — voir Extension ci-dessous.

Vérifications supplémentaires

Au-delà des CVE, l'outil signale également :

  • État ASLR (/proc/sys/kernel/randomize_va_space) — un ASLR complet réduit considérablement l'exploitabilité RCE des failles mémoire
  • Version de l'OS et statut EOL — signale les distributions en fin de vie ou en support ESM uniquement
  • État de l'abonnement Ubuntu Pro (ESM) pour esm-infra et esm-apps
  • État du service — indique si nginx/Apache tourne réellement, et sur quels ports
  • Source du paquet — distingue les installations ESM, PPA et dépôt standard (Ubuntu)
  • Crashes des workers — compte les événements SIGSEGV des 30 derniers jours comme indicateur d'exploitation active

Prérequis

  • Python 3.5+ (fonctionne avec le Python 3.6 fourni sur Ubuntu 18.04)
  • Aucun paquet tiers — bibliothèque standard uniquement
  • Utilise nginx, apache2, systemctl, ss, journalctl lorsqu'ils sont disponibles ; ignore ces vérifications proprement sinon

Utilisation

root@kitploit:~
# Compact report (default — hides OK lines)
sudo python3 web_server_audit.py

# All findings including OK lines
sudo python3 web_server_audit.py --verbose

# No ANSI colors (good for pipes, logs, CI output)
sudo python3 web_server_audit.py --no-color

# Machine-readable JSON
sudo python3 web_server_audit.py --json

Codes de sortie

CodeSignification
0Aucun problème
1Uniquement des avertissements ou des constats critiques hors CVE
2Au moins une CVE est exploitable activement

Le code de sortie 2 est un signal d'échec naturel pour CI/CD.

Exemple de sortie

root@kitploit:~
========================================================================
Web Server Audit - 2026-05-16T01:24:55
Host: web-prod-01
web_server_audit.py v1.0.0 - SiberSAN - MIT License
========================================================================

[system]
------------------------------------------------------------------------
  [OK] OK    ASLR fully enabled (randomize_va_space=2)
  [i] INFO  OS: Ubuntu 18.04.6 LTS
  [!] WARN  Ubuntu 18.04 is in ESM-only support

[nginx] version 1.18.0 (active)
------------------------------------------------------------------------
  [i] INFO  nginx listening on: 0.0.0.0:80, 0.0.0.0:443
  [i] INFO  CVE-2026-42945 (HIGH): version vulnerable but NOT triggered
           Trigger: rewrite + unnamed capture ($1,$2) + '?' in replacement
           Evidence: No rewrite directives in configuration
  [i] INFO  CVE-2026-42946 (MEDIUM): version vulnerable but NOT triggered
  [!] WARN  nginx installed from PPA (1.18.0-3ubuntu1+bionic1)

========================================================================
Real-risk summary
------------------------------------------------------------------------
ACTIVE EXPLOITATION RISK: none detected.

LATENT RISK - vulnerable version, no trigger in config (3):
  - [nginx] CVE-2026-42945 (HIGH)
  - [nginx] CVE-2026-42946 (MEDIUM)
  - [nginx] CVE-2026-42934 (LOW)
  These become exploitable if config changes introduce the trigger.
  Mitigation: config-change discipline + plan upgrade.

========================================================================
Findings: 0 critical, 2 warnings
========================================================================

Extension

L'ajout d'une nouvelle CVE se fait en deux étapes.

1. Écrivez une fonction de déclenchement qui prend le texte complet de la configuration (sortie de nginx -T) et retourne (triggered: bool, evidence: str) :

root@kitploit:~
def _trigger_my_cve(conf):
    hits = [l for l in conf.splitlines() if re.search(r'risky_directive', l)]
    if hits:
        return True, "Found: " + hits[0]
    return False, "Pattern not present"

2. Ajoutez l'entrée à NGINX_CVES (ou APACHE_CVES) :

root@kitploit:~
{
    "id": "CVE-XXXX-NNNNN",
    "name": "Descriptive name",
    "severity": "HIGH",
    "affected": ("1.10.0", "1.25.0"),
    "fixed_in": ["1.25.1"],
    "trigger_desc": "Human-readable trigger description",
    "trigger_fn": _trigger_my_cve,
},

C'est tout. Le framework gère automatiquement la classification, le formatage de la sortie, le JSON, les codes de sortie et le résumé exécutif.

Limitations

  • Aucun test d'exploitation active. Aucune requête PoC n'est envoyée. C'est un outil d'analyse purement configuration + version.
  • La base de données des CVE est embarquée et maintenue manuellement ; aucune synchronisation en ligne. Il incombe à l'utilisateur de maintenir la liste à jour.
  • Les détecteurs de déclenchement sont heuristiques. Des configurations complexes avec des includes profondément imbriqués ou des guillemets inhabituels peuvent produire des faux positifs ou des faux négatifs. Utilisez --verbose pour inspecter les détails en cas de doute.
  • Testé sur Ubuntu 18.04, 20.04, 22.04 et 24.04. L'outil fonctionnera probablement sur d'autres distributions Linux, mais la détection de la source des paquets (ESM/PPA) est spécifique à Ubuntu.

Contribution

Les pull requests, les issues, les nouveaux détecteurs de CVE et la prise en charge d'autres serveurs web (lighttpd, Caddy, HAProxy, etc.) sont tous les bienvenus.

Lorsque vous proposez un nouveau détecteur de CVE, veuillez inclure :

  • Un lien vers l'enregistrement de la CVE (NVD, avis du fournisseur ou journal des modifications en amont)
  • Un extrait de configuration minimal qui déclenche le détecteur
  • Un contre-exemple qui ne doit pas le déclencher

Licence

Publié sous la licence MIT.

Copyright (c) 2026 SiberSAN

Télécharger l’outil