Vulnerabilità del Plugin NotificationX per WordPress WooCommerce: 40.000 Siti a Rischio
# Vulnerabilità del Plugin NotificationX per WordPress e WooCommerce: Impatto su Oltre 40.000 Siti È stata pubblicata un’avvertenza riguardante una vulnerabilità del plugin NotificationX FOMO per siti WordPress e WooCommerce, che interessa più di 40.000 siti web. La vulnerabilità, classificata con un livello di severità di 7.2 (Alta), consente ad attaccanti non autenticati di iniettare […]
# Vulnerabilità del Plugin NotificationX per WordPress e WooCommerce: Impatto su Oltre 40.000 Siti
È stata pubblicata un’avvertenza riguardante una vulnerabilità del plugin NotificationX FOMO per siti WordPress e WooCommerce, che interessa più di 40.000 siti web. La vulnerabilità, classificata con un livello di severità di 7.2 (Alta), consente ad attaccanti non autenticati di iniettare codice JavaScript dannoso che può essere eseguito nel browser di un visitatore al verificarsi di determinate condizioni.
## NotificationX – Plugin FOMO
Il plugin NotificationX FOMO è utilizzato dai proprietari di siti WordPress e WooCommerce per mostrare barre di notifica, popup e avvisi in tempo reale relativi a vendite recenti, annunci e messaggi promozionali. Questo plugin è comunemente impiegato in siti di marketing ed e-commerce per creare urgenza e attirare l’attenzione dei visitatori tramite notifiche.
## Livello di Esposizione
La vulnerabilità non richiede alcuna autenticazione né l’assegnazione di un ruolo utente prima di lanciare un attacco. Gli attaccanti non hanno bisogno di un account WordPress o di alcun accesso previo al sito per attivare la vulnerabilità. L’esploitazione dipende dalla possibilità di indurre la vittima a visitare una pagina appositamente creata che interagisce con il sito vulnerabile.
## Causa Radice della Vulnerabilità
Il problema è una vulnerabilità di Cross-Site Scripting (XSS) basata su DOM legata a come il plugin gestisce i dati di anteprima. Nel contesto di una vulnerabilità di un plugin WordPress, la vulnerabilità XSS basata su DOM si verifica quando un plugin WordPress contiene JavaScript lato client che elabora dati da una fonte non affidabile in modo non sicuro, scrivendo i dati sulla pagina web.
In particolare, la vulnerabilità nel plugin NotificationX esiste perché gli script del plugin accettano input attraverso il parametro POST `nx-preview`, ma non sanificano correttamente l’input né eseguono l’escaping dell’output prima di renderizzarlo nel browser. Mancano i controlli di sicurezza che dovrebbero garantire che i dati forniti dagli utenti siano trattati come testo semplice, permettendo così a un attaccante di creare una pagina web malevola che invia automaticamente un modulo al sito della vittima.
Il risultato finale è che un input controllato dall’attaccante può essere interpretato come JavaScript eseguibile anziché come contenuto di anteprima innocuo.
## Cosa Possono Fare gli Attaccanti
Se sfruttata, la vulnerabilità consente agli attaccanti di eseguire JavaScript arbitrario nel contesto del sito interessato. Lo script iniettato viene eseguito quando un utente visita una pagina malevola che invia automaticamente un modulo al sito vulnerabile NotificationX.
**Questo può permettere agli attaccanti di:**
– Hijackare le sessioni di amministratori o editor loggati
– Eseguire azioni per conto di utenti autenticati
– Reindirizzare i visitatori a siti web malevoli o fraudolenti
– Accedere a informazioni sensibili disponibili nel browser
L’avvertenza ufficiale di [Wordfence](https://www.wordfence.com/threat-intel/vulnerabilities/wordpress-plugins/notificationx/notificationx-320-unauthenticated-dom-based-cross-site-scripting-via-nx-preview) spiega:
> “Il plugin NotificationX – FOMO, Live Sales Notification, WooCommerce Sales Popup, GDPR, Social Proof, Announcement Banner & Floating Notification Bar per WordPress è vulnerabile a Cross-Site Scripting basato su DOM attraverso il parametro POST ‘nx-preview’ in tutte le versioni fino a e comprese la 3.2.0. Questo è dovuto a una sanificazione insufficiente dell’input e all’escaping dell’output quando si elaborano i dati di anteprima. Ciò rende possibile per attaccanti non autenticati iniettare script web arbitrari nelle pagine che vengono eseguiti quando un utente visita una pagina malevola che invia automaticamente un modulo al sito vulnerabile.”
## Versioni Interessate
Tutte le versioni di NotificationX fino alla 3.2.0 sono vulnerabili. È disponibile una patch e la vulnerabilità è stata risolta nella versione 3.2.1 di NotificationX, che include miglioramenti di sicurezza relativi a questa problematica.
## Azioni Raccomandate
Si raccomanda ai proprietari di siti che utilizzano NotificationX di aggiornare immediatamente il loro plugin alla versione 3.2.1 o successiva. I siti che non possono aggiornare dovrebbero disabilitare il plugin fino a quando non sarà applicata la versione corretta. Lasciare attive versioni vulnerabili espone i visitatori e gli utenti loggati ad attacchi client-side che possono essere difficili da rilevare e mitigare.
## Un’Ulteriore Vulnerabilità
Questo plugin ha un’altra vulnerabilità classificata con un livello di minaccia medio di 4.3. L’avvertenza di [Wordfence](https://www.wordfence.com/threat-intel/vulnerabilities/wordpress-plugins/notificationx/notificationx-3111-missing-authorization-to-authenticated-contributor-analytics-reset) per questa vulnerabilità la descrive così:
> “Il plugin NotificationX per WordPress è vulnerabile a modifiche non autorizzate dei dati a causa di un mancato controllo delle autorizzazioni sugli endpoint REST API ‘regenerate’ e ‘reset’ in tutte le versioni fino e comprese la 3.1.11. Questo rende possibile per attaccanti autenticati, con accesso a livello di Contributor e superiore, resettare le analisi per qualsiasi campagna NotificationX, indipendentemente dalla proprietà.”
I problemi derivano dal fatto che gli endpoint non controllano correttamente i permessi utente per la modifica dei dati. In questo caso, il plugin controlla solo se un utente è loggato con accesso a livello di Contributor o superiore, senza verificare se sia effettivamente autorizzato a eseguire l’azione. Anche se gli utenti con il ruolo di Contributor normalmente hanno permessi molto limitati, questo difetto consente loro di eseguire azioni che non dovrebbero poter fare.
**Un attaccante può:**
– Resettare le analisi per qualsiasi campagna NotificationX
– Fare ciò anche se non ha creato o posseduto la campagna
– Cancellare o rigenerare ripetutamente le statistiche della campagna
Si consiglia di aggiornare a una versione 3.2.1 o superiore per risolvere anche questa vulnerabilità.
*Immagine in evidenza di Shutterstock/Art Furnace*
admin