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
cve-2026-42945-scan — Analysez votre configuration NGINX pour déterminer si elle est affectée par CVE-2026-42945. | Kitploit
Outils/GitHubGitHub/realityone/cve-2026-42945-scan
Analyse StatiqueScanners de VulnérabilitésAudit de ConfigurationSécurité WebMauvaise Configuration
GitHubrealityone/cve-2026-42945-scan

cve-2026-42945-scan

Analysez votre configuration NGINX pour déterminer si elle est affectée par CVE-2026-42945.

Voir le dépôt
13il 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 →
Partager

cve-2026-42945-scan

Analyseur statique pour fichiers de configuration NGINX qui détecte le motif rewrite/set associé à CVE-2026-42945.

L'analyseur parse les configurations NGINX avec crossplane, parcourt les blocs location, et affiche chaque emplacement potentiellement affecté dans ce format :

root@kitploit:~
/<chemin-vers>/xxx.conf:<numéro-ligne> -> location XXXXX

Exemple :

root@kitploit:~
/path/to/nginx.conf:39 -> location ~ ^/api/(.*)$

Référence : CVE-2026-42945-POC.

Prérequis

  • Python 3.10 ou plus récent
  • uv

Les dépendances sont gérées avec uv dans pyproject.toml et verrouillées dans uv.lock. La seule dépendance d'exécution est .

crossplane

Installation

Depuis la racine du dépôt :

root@kitploit:~
uv sync

Vous pouvez également ignorer l'étape d'installation séparée et laisser uv run créer l'environnement lors de la première utilisation.

Utilisation

Analyser un fichier de configuration :

root@kitploit:~
uv run ./scan.py /etc/nginx/nginx.conf

Analyser un répertoire de manière récursive :

root@kitploit:~
uv run ./scan.py -r /etc/nginx

Analyser récursivement depuis le répertoire courant pour les fichiers *.conf :

root@kitploit:~
uv run ./scan.py -r './*.conf'

Mettez les globs entre guillemets lorsque vous souhaitez que l'analyseur les développe récursivement. Si votre shell développe ./*.conf en premier, l'analyseur ne reçoit que les fichiers correspondants trouvés par le shell.

Analyser uniquement les fichiers fournis sans suivre les directives include :

root@kitploit:~
uv run ./scan.py --single ./site.conf

Afficher les avertissements de l'analyseur, y compris les fichiers include manquants :

root@kitploit:~
uv run ./scan.py -v -r /etc/nginx

Version Go

Une implémentation en Go avec le même format de sortie et les mêmes codes de sortie est disponible dans go/. Elle utilise nginx-go-crossplane pour l'analyse des configurations NGINX et pflag pour les drapeaux CLI. Nécessite Go 1.23 ou plus récent.

Exécutez-la avec go run :

root@kitploit:~
cd go
go run . -r ../tests/fixtures

Lorsque des résultats sont présents, l'analyseur se termine avec le code 1. go run affichera une ligne supplémentaire exit status 1 dans ce cas ; construisez le binaire lorsque vous souhaitez uniquement la sortie de l'analyseur.

Construire un binaire autonome :

root@kitploit:~
cd go
go build -o cve-2026-42945-scan-go .
./cve-2026-42945-scan-go -r ../tests/fixtures

Ce qu'il détecte

Le motif de configuration risqué est une location qui contient :

  • une directive rewrite dont la substitution contient un ? non échappé
  • aucun drapeau de réécriture terminal tel que last, break, redirect ou permanent
  • une directive set ultérieure qui copie une capture d'expression régulière telle que $1, ${1}, $name ou ${name}

Exemple de motif vulnérable :

root@kitploit:~
location ~ ^/api/(.*)$ {
    rewrite ^/api/(.*)$ /internal?migrated=true;
    set $original_endpoint $1;
}

L'analyseur signale la ligne de la location, pas la ligne de rewrite ou set, car la location est le bloc sur lequel agir pour inspecter et corriger.

Fichiers de test

Le répertoire tests/fixtures/ contient de petites configurations NGINX pouvant servir d'exemples :

FixtureRésultat attendu
tests/fixtures/vulnerable.confsignale un résultat de capture positionnelle
tests/fixtures/named_capture.confsignale un résultat de capture nommée
tests/fixtures/missing_include_still_scans.confsignale un résultat même si un include est manquant
tests/fixtures/safe_break_flag.confpas de résultat car la rewrite utilise break
tests/fixtures/safe_no_capture.confpas de résultat car aucune capture n'est disponible

Exécuter l'analyseur sur tous les exemples de fixtures :

root@kitploit:~
uv run ./scan.py -r tests/fixtures

Résultats attendus :

root@kitploit:~
/path/absolu/vers/tests/fixtures/missing_include_still_scans.conf:6 -> location ~ ^/partial/(.*)$
/path/absolu/vers/tests/fixtures/named_capture.conf:2 -> location /users
/path/absolu/vers/tests/fixtures/vulnerable.conf:2 -> location ~ ^/api/(.*)$

Sortie

Si des emplacements affectés sont trouvés, chaque résultat est affiché sur sa propre ligne :

root@kitploit:~
/path/absolu/vers/fichier.conf:30 -> location ~ ^/aaaa/dddd/(.*)$
/path/absolu/vers/nginx.conf:39 -> location ~ ^/api/(.*)$

Aucune sortie signifie qu'aucun emplacement affecté n'a été trouvé dans la configuration analysée.

Limites

Il s'agit d'un analyseur de configuration statique. Il ne :

  • vérifie pas la version NGINX en cours d'exécution
  • prouve pas l'exploitabilité
  • exécute ni ne teste de requêtes contre un serveur
  • évalue pas complètement les variables dynamiques ou les configurations générées
  • détecte pas les fragments vulnérables cachés dans des fichiers include manquants

Traitez les résultats comme des emplacements nécessitant une révision et une correction. Un hôte n'est réellement affecté que lorsque la version NGINX vulnérable et le motif de configuration risqué sont tous deux présents.

Développement

Exécuter la suite de tests :

root@kitploit:~
uv run python -m unittest discover -s tests -v

Exécuter la suite de tests Go :

root@kitploit:~
cd go
go test ./...

Exécuter la vérification syntaxique :

root@kitploit:~
uv run python -m py_compile scan.py

Exécuter contre la configuration POC fournie :

root@kitploit:~
uv run ./scan.py CVE-2026-42945-POC/env/nginx.conf

Sortie attendue :

root@kitploit:~
/path/absolu/vers/CVE-2026-42945-POC/env/nginx.conf:39 -> location ~ ^/api/(.*)$
Télécharger l’outil