Skip to content
KitploitKITPLOIT
FerramentasBlog
Enviar
FerramentasBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
nginx-ui-CVE-2026-42221-CVE-2026-42238- — Ambiente de laboratório baseado em Docker para verificar e explorar duas vulnerabilidades de API não autenticadas (CVE-2026-42221, CVE-2026-42238) no nginx-ui, com comparação de versão corrigida e material educacional. | Kitploit
Ferramentas/GitHubGitHub/fuchiuebusi-lab/nginx-ui-cve-2026-42221-cve-2026-42238-
Análise de VulnerabilidadesExploraçãoExploração de Aplicações WebTestes de PenetraçãoAprendizado e EducaçãoLabs e Prática
GitHubfuchiuebusi-lab/nginx-ui-cve-2026-42221-cve-2026-42238-

nginx-ui-CVE-2026-42221-CVE-2026-42238-

Ambiente de laboratório baseado em Docker para verificar e explorar duas vulnerabilidades de API não autenticadas (CVE-2026-42221, CVE-2026-42238) no nginx-ui, com comparação de versão corrigida e material educacional.

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar
Ver Repositório
há 1 mêsAinda não revisado

Ambiente de verificação das CVEs do nginx-ui

Repositório para verificar, em um ambiente Docker, duas CVEs reportadas no nginx-ui (uma ferramenta de gerenciamento de GUI web para Nginx).

  • CVE-2026-42221: Assalto de conta de administrador sem autenticação
  • CVE-2026-42238: Execução de comandos via restauração de backup não autenticada

Aviso de isenção
O conteúdo de verificação deste repositório destina-se apenas ao ambiente local isolado que você gerencia.
Usar técnicas semelhantes em sistemas de terceiros não autorizados viola as leis de acesso não autorizado.


Artigo detalhado

O processo de verificação, reflexões e aprendizados estão resumidos em um artigo do Qiita.

Tentando as CVEs do nginx-ui na prática: o que pensei ser "vulnerabilidade" era na verdade uma questão de design


Resumo das vulnerabilidades

CVEDescriçãoVersão afetadaVersão corrigida
CVE-2026-42221O endpoint /api/install antes da configuração é acessível sem autenticação. Um atacante pode registrar uma conta de administrador primeiro.v2.3.7 e anterioresv2.3.8
CVE-2026-42238O endpoint /api/restore antes da configuração é acessível sem autenticação. Ao injetar um app.ini malicioso, é possível executar comandos arbitrários como root.v2.3.7 e anterioresv2.3.8

As duas CVEs têm a mesma causa raiz (janela da API desprotegida antes da configuração), e na v2.3.8 ambas foram corrigidas com a adição de um middleware que implementa o método de segredo de instalação.


Estrutura de diretórios

root@kitploit:~
.
├── nginx_lab/              # Ambiente de verificação da versão vulnerável (v2.3.7) → porta 8080
│   ├── Dockerfile          # Definição da imagem com configuração inicial para evitar loop de inicialização
│   ├── docker-compose.yml
│   ├── nginx.conf          # Configuração corrigida dos blocos sites-enabled / stream
│   ├── init-app.ini        # Template inicial do app.ini
│   └── entrypoint.sh       # Script de inicialização ao iniciar o contêiner
├── nginx_lab_patched/      # Ambiente de verificação da versão corrigida (v2.3.8) → porta 8081
│   ├── Dockerfile
│   ├── docker-compose.yml
│   ├── nginx.conf
│   ├── init-app.ini
│   └── entrypoint.sh
├── scripts/
│   ├── exploit_42221.py    # Script de ataque para CVE-2026-42221
│   ├── encrypt_password.py # Utilitário de criptografia RSA
│   └── test_patched.py     # Script para verificar a aplicação do patch na v2.3.8 (porta 8081)
├── Qiita.md                # Manuscrito para publicação no Qiita
└── 学習プラン.md

Pré-requisitos

  • Docker / Docker Compose
  • Python 3.x
  • Biblioteca pycryptodome
root@kitploit:~
pip install pycryptodome

Como usar

1. Iniciar a versão vulnerável (v2.3.7)

root@kitploit:~
cd nginx_lab
docker compose build
docker compose up -d

Verificação de inicialização:

root@kitploit:~
curl http://localhost:8080/api/install
# → {"lock":false,"timeout":false} se retornar, está OK

Ponto crítico: A imagem pura uozi/nginx-ui:v2.3.7 entra em loop de inicialização sozinha, porque diretórios como sites-enabled não existem. O Dockerfile deste repositório prepara esses diretórios antecipadamente.

2. Reproduzir CVE-2026-42221

root@kitploit:~
cd scripts
python exploit_42221.py

Se bem-sucedido, será possível fazer login em http://localhost:8080 com a conta attacker.

3. Iniciar a versão corrigida (v2.3.8)

root@kitploit:~
cd nginx_lab_patched
docker compose build
docker compose up -d

Na v2.3.8, um segredo de instalação é necessário para a configuração inicial. Após iniciar o contêiner, verifique o segredo.

root@kitploit:~
docker exec nginx-ui-patched cat /etc/nginx-ui/.install_secret

Na tela de configuração em http://localhost:8081, use esse valor para registrar um administrador.

4. Verificar que o ataque não funciona na versão corrigida

root@kitploit:~
cd scripts
python test_patched.py

Se for exibido [OK] Ataque falhou (corrigido), o patch está funcionando corretamente.

5. Remover o ambiente

root@kitploit:~
# Versão vulnerável
cd nginx_lab
docker compose down -v

# Versão corrigida
cd nginx_lab_patched
docker compose down -v
Baixar ferramenta