Vulnerabilità grave in Ninja Forms - File Uploads (plugin WordPress): 50.000 siti sono in pericolo (aggiornato: 8 aprile 2026, ore 10:06)
- a cura di: massimo.valenti
- Commenti:
- Letture:
- Aggiornato: 08/04/2026, 10:06
- Pubblicato: 08/04/2026, 09:58
Una vulnerabilità con punteggio CVSS 9.8 su 10 colpisce il componente aggiuntivo Ninja Forms - File Uploads, estensione premium del popolare plugin per moduli WordPress. La falla, tracciata come CVE-2026-0740, consente a un attaccante non-autenticato di caricare file arbitrari sul server - incluse webshell PHP pronte all'uso - e ottenere l'esecuzione di codice da remoto. Nessuna credenziale, nessuna interazione dell'utente, nessun privilegio elevato. Il tipo di scenario che fa perdere il sonno a chi amministra siti WordPress.

La classe responsabile del caricamento file del plugin implementa diversi controlli di sicurezza. Il difetto sta in ciò che non viene controllato: l'estensione del file di destinazione.
Il plugin verifica il nome del file in ingresso, ma non quello che verrà effettivamente scritto sul disco. Un attaccante può superare la allowlist delle estensioni consentite semplicemente manipolando il nome di destinazione nella richiesta, con il risultato che un file .php malevolo viene salvato come se fosse un innocuo documento. L'assenza di sanitizzazione del percorso aggiunge un secondo vettore: tramite path traversal è possibile forzare il salvataggio del payload direttamente nella directory radice del sito, scavalcando la cartella di upload prevista.
Il tutto avviene attraverso un endpoint AJAX raggiungibile senza autenticazione - e questo è il punto cruciale. WordPress espone admin-ajax.php come interfaccia generica, delegando interamente al singolo plugin la responsabilità di autenticazione, autorizzazione e validazione degli input. Quando lo sviluppatore omette anche uno solo di questi passaggi, la superficie di attacco si spalanca.
La vulnerabilità è stata scoperta dal ricercatore di sicurezza Sélim Lanouar e segnalata l'8 gennaio 2026 attraverso il programma di bug bounty di Wordfence, che gli ha riconosciuto un premio di 2.145 dollari. La divulgazione pubblica è avvenuta il 6 aprile.
Saturday Developers, il team dietro Ninja Forms, ha rilasciato una prima correzione con la versione 3.3.25. Peccato che si trattasse di una patch parziale: la falla non era completamente risolta e tutte le versioni fino alla 3.3.26 inclusa restano vulnerabili. La correzione completa è arrivata solo con la versione 3.3.27, pubblicata il 19 marzo 2026. Chi ha aggiornato alla 3.3.25 pensando di essere al sicuro deve aggiornare di nuovo.

Circa 50.000 installazioni WordPress attive utilizzano questo componente aggiuntivo. I siti coinvolti sono eterogenei: moduli di contatto, pagine per la raccolta di candidature, portali per donazioni, form di lead generation. Ovunque ci sia un campo di caricamento file gestito da Ninja Forms, la superficie d'attacco è presente.
C'è un fattore aggravante che riguarda la natura stessa del plugin. Ninja Forms - File Uploads è un prodotto premium, venduto separatamente e non distribuito tramite il repository ufficiale di WordPress: gli aggiornamenti automatici del repository non si applicano, e l'adozione della patch dipende interamente dall'attenzione del singolo amministratore. Chi non monitora i changelog o ha disattivato gli aggiornamenti automatici resta esposto. I siti su hosting condiviso sono particolarmente a rischio: la compromissione di uno potrebbe consentire all'attaccante di muoversi lateralmente nell'ambiente di hosting.
Caricare una webshell PHP su un server significa ottenerne il controllo operativo. Da lì l'attaccante può eseguire comandi arbitrari, esfiltrare dati - credenziali del database, informazioni personali degli utenti, dati di pagamento - e utilizzare il server compromesso come testa di ponte per penetrare più a fondo nell'infrastruttura. In ambienti di hosting condiviso, un singolo sito vulnerabile può diventare la porta d'ingresso per decine di altri.
CVE-2026-0740 non è un caso isolato: è il quinto CVE legato ad handler AJAX con controlli mancanti documentato nel solo 2026 da mySites.guru. La lista include vulnerabilità in Astroid Framework (CVE-2026-21628), Novarain Framework (CVE-2026-21627), Smart Slider 3 (CVE-2026-3098) e King Addons per Elementor (CVE-2025-8489). Il filo conduttore è sempre lo stesso - plugin che espongono endpoint AJAX potenti senza verificare adeguatamente chi li sta invocando e cosa sta inviando.
Il modello architetturale di admin-ajax.php è il convitato di pietra di queste vulnerabilità. WordPress non impone alcuna politica di sicurezza predefinita sulle azioni AJAX registrate dai plugin: ogni sviluppatore deve implementare da zero autenticazione e validazione. È un approccio che massimizza la flessibilità a scapito della sicurezza. Basta una svista - un controllo omesso su un nome file di destinazione - per trasformare un form di contatto in un vettore di compromissione completa.
Chi utilizza Ninja Forms - File Uploads deve verificare immediatamente la versione installata e aggiornare alla 3.3.27. Non alla 3.3.25, non alla 3.3.26. Alla 3.3.27. E forse è il momento giusto per rivedere quanti plugin con accesso AJAX non autenticato sono attivi sul proprio sito.
Fonti: wordfence.com, mysites.guru, cycognito.com
Nessuno ha ancora commentato.