Avviso di sicurezza Creative Mail
Se hai ricevuto un’email da parte mia che ti rimanda a questa pagina, è perché il tuo sito
sembra eseguire una versione di Creative Mail by Constant Contact (il plugin WordPress di
email marketing per WooCommerce, che si trova nei tuoi file in
/wp-content/plugins/creative-mail-by-constant-contact/) che rientra nell’intervallo
interessato da un noto problema di sicurezza. Questa pagina spiega di cosa si tratta, quali
versioni sono interessate, perché non esiste alcun aggiornamento da installare e come rimuovere
o sostituire il plugin in sicurezza.
Il problema è CVE-2026-3985, una falla di SQL injection non autenticata raggiungibile attraverso la gestione dei carrelli abbandonati di WooCommerce del plugin. Interessa la versione 1.6.5 e ogni release successiva, fino all’ultima pubblicata dal fornitore inclusa, la 1.6.9.
Il fatto pratico più importante di questa pagina: non esiste una versione corretta a cui aggiornare. Il plugin è stato rimosso dalla directory di WordPress.org il 14 maggio 2026 e non è mai stato corretto. L’ultima release, la 1.6.9, presenta ancora il problema, e non ne arriverà una più recente. Quindi questo non è il solito avviso “clicca per aggiornare”. Il rimedio consiste nel disattivare e rimuovere il plugin, e se ne fai affidamento, nel sostituirlo con un’alternativa mantenuta. Il resto di questa pagina illustra come verificare la tua versione e farlo in sicurezza.
Un punto di rassicurazione, ed è reale. A differenza di alcuni problemi di cui scrivo, questa falla ha un limite inferiore autentico: è stata introdotta nella versione 1.6.5. Le versioni 1.6.4 e precedenti non ne sono interessate: il codice vulnerabile semplicemente non è presente. Se la tua installazione è alla 1.6.4 o precedente, questo particolare problema non ti riguarda. (Detto questo, il plugin non è più mantenuto da nessuno, il che è di per sé un motivo per pianificare, prima o poi, di abbandonarlo.)
Si tratta di una falla del plugin, non di una falla del core di WordPress. Un WordPress completamente aggiornato non ti protegge se il plugin Creative Mail stesso è su una versione interessata.
Questo messaggio è legittimo?
Sì. Si tratta di un avviso di divulgazione responsabile e di buona fede da parte di un ricercatore di sicurezza indipendente. Io non ti chiedo denaro, password o accesso al tuo sito, e non ho tentato di entrarci, di inviare nulla ad esso o di sfruttare alcunché.
Mi sono limitato a guardare file visibili pubblicamente che il tuo sito web serve a ogni visitatore (allo stesso modo in cui la tua homepage è pubblica) e ad annotare il numero di versione che il plugin pubblica. In particolare non ho inviato nulla alla gestione del checkout o del consenso del plugin, sul tuo sito o su qualsiasi altro, e nulla in questa verifica tocca i tuoi dati, la tua area di amministrazione o qualsiasi parte privata del tuo sito (maggiori dettagli sotto Cosa ho fatto e cosa non ho fatto di seguito).
Se desideri verificare chi sono, consulta i dettagli di contatto in fondo a questa pagina e la pagina Chi sono.
Perché è importante
Creative Mail collega un negozio WooCommerce a Constant Contact per l’email marketing, e parte di ciò che fa è ricordare i carrelli iniziati ma non completati, in modo che un negozio possa fare un follow-up su di essi. Quella gestione dei carrelli abbandonati è dove risiede questo problema.
Nelle versioni interessate, quando il plugin registra un checkout, una delle sue ricerche nel database costruisce la query incollandovi un valore proveniente dal visitatore, senza usare un’istruzione preparata. Il valore non è sottoposto a escaping per l’uso in SQL. La conseguenza è che un visitatore non autenticato può alterare quella query e leggere dati dal database del tuo sito.
Vale la pena essere precisi su cosa questo problema sia e cosa non sia. Consente a un aggressore di leggere dati dal database. Questo è già grave di per sé, perché un database di WordPress contiene cose come gli indirizzi email degli utenti e le password sottoposte a hash, e su un negozio può contenere i dati dei clienti. Ma non è, di per sé, esecuzione di codice remoto, una presa di controllo del sito, o un modo per un aggressore di procurarsi un account amministratore. È più circoscritto rispetto ai problemi di compromissione totale di cui scrivo altrove, e preferisco definire la portata con onestà piuttosto che lasciarti un’impressione più allarmante di quanto i fatti supportino.
Lo descrivo al livello di dettaglio necessario a un proprietario del sito per agire, e non oltre. Non sto pubblicando i dettagli che permetterebbero a qualcuno di riprodurlo, e ti chiedo di non provarlo contro il tuo sito o contro quello di chiunque altro. Leggere il tuo numero di versione, come descritto di seguito, ti dice tutto ciò che devi sapere per decidere cosa fare.
Se la mia email ha citato questo problema, significa che la versione dichiarata dal tuo sito è 1.6.5 o successiva. Non ho verificato se il tuo sito specifico sia sfruttabile; ho osservato solo la versione.
Sono interessato?
Si riduce a una domanda: quale versione di Creative Mail stai eseguendo?
Dall’area di amministrazione di WordPress (fonte autorevole):
- Accedi alla bacheca di WordPress (di solito su
tuodominio.it/wp-admin). - Vai su Plugin poi Plugin installati.
- Trova Creative Mail by Constant Contact, la voce la cui cartella è
creative-mail-by-constant-contact, e annota la versione mostrata sotto il suo nome.
Dal manifesto pubblico (senza login): apri nel browser
tuodominio.it/wp-content/plugins/creative-mail-by-constant-contact/readme.txt. La riga
Stable tag: vicino all’inizio è la versione che la tua installazione dichiara, ed è lo
stesso file pubblico che ho letto io. Per questo plugin ho confermato che corrisponde
esattamente al codice effettivamente rilasciato, quindi è un controllo affidabile.
Un controllo che per questo plugin non funziona, quindi non farci affidamento. Se sei
abituato a leggere la versione di un plugin dal numero ?ver= allegato a uno script o a un
foglio di stile nel codice sorgente della pagina, qui ti trarrà in inganno. Su questo plugin
quei numeri sono timestamp dei file (valori lunghi come ?ver=1723603844), non la versione del
plugin, e confrontarne uno con la 1.6.5 non ha senso. Usa la schermata di amministrazione
oppure readme.txt.
Poi applica questa regola:
- 1.6.5 o successiva (fino alla 1.6.9, l’ultima release): interessata. Poiché non esiste una correzione, il passo da compiere è rimuovere o sostituire il plugin (vedi sotto).
- 1.6.4 o precedente: non interessata da questo problema. La falla è stata introdotta nella 1.6.5, quindi le installazioni più vecchie non la contengono. (Il plugin non è comunque mantenuto, quindi vale comunque la pena pianificare di abbandonarlo.)
Cosa fare: rimuovere o sostituire
Poiché il plugin è stato ritirato senza una correzione, non esiste alcun aggiornamento da installare: la tua bacheca di WordPress non ne offrirà uno, e la versione che hai è l’ultima che esisterà mai. Il modo per chiudere questo problema è smettere di eseguire il plugin. Fai prima un backup, poi rimuovilo:
- Esegui il backup del tuo sito (file e database) prima di apportare modifiche. La maggior parte dei provider di hosting offre backup con un solo clic, oppure puoi usare un plugin di backup per WordPress.
- Nell’amministrazione di WordPress, vai su Plugin poi Plugin installati, trova Creative Mail by Constant Contact, e fai clic su Disattiva. Disattivarlo ferma l’esecuzione del codice vulnerabile.
- Una volta disattivato, fai clic su Elimina per rimuovere i file del plugin. Se preferisci
la riga di comando, WP-CLI fa la stessa cosa:
wp plugin deactivate creative-mail-by-constant-contactpoiwp plugin delete creative-mail-by-constant-contact. - Verifica che sia sparito: la voce non dovrebbe più comparire nella schermata Plugin, e
tuodominio.it/wp-content/plugins/creative-mail-by-constant-contact/readme.txtnon dovrebbe più caricarsi.
Se usavi Creative Mail per l’email marketing del tuo negozio, vorrai un sostituto per non perdere quella funzionalità. Nella directory ufficiale esistono diversi plugin di email e newsletter per WooCommerce mantenuti attivamente; scegline uno attualmente supportato e che riceve aggiornamenti. Il servizio di Constant Contact in sé non è interessato da questo problema: il problema riguarda il plugin di WordPress che è stato ritirato, non il servizio di email, quindi se usi Constant Contact direttamente, l’obiettivo è un’integrazione attuale e supportata.
Mentre sei in questa sezione, vale la pena verificare che il core di WordPress e i tuoi altri plugin siano aggiornati, e rimuovere qualsiasi altro plugin che non usi più.
Dopo la rimozione
Rimuovere il plugin impedisce che in futuro venga letto qualsiasi altro dato dal tuo database attraverso questo problema. Non può annullare la lettura di qualcosa che potrebbe essere già stato letto mentre il plugin era attivo su una versione interessata. Non ho visibilità su se ciò sia accaduto sul tuo sito, e non ho verificato; la maggior parte dei siti nell’intervallo interessato probabilmente non è mai stata toccata. Ma poiché non posso dirtelo con certezza, un po’ di precauzione è ragionevole, in proporzione a ciò che il tuo database contiene:
- Su un negozio, i passi sensati sono far cambiare la password ai tuoi amministratori, ed essere consapevole che i dati di contatto dei clienti nel tuo database potrebbero essere stati esposti. WordPress e WooCommerce memorizzano le password sottoposte a hash, non in chiaro, ma gli hash di password deboli possono essere violati offline, quindi password nuove eliminano questa preoccupazione.
- Se sul tuo sito qualche plugin memorizza credenziali o chiavi API proprie, vale la pena considerare di ruotare anche quelle.
- Rigenerare le chiavi segrete e i salt di WordPress in
wp-config.php(i nuovi valori sono a un clic di distanza dal generatore ufficiale di chiavi segrete) disconnette tutti gli utenti una volta e invalida qualsiasi token di sessione rubato.
Per essere chiaro sull’inquadramento: questa è una precauzione, non una dichiarazione che i tuoi dati siano stati sottratti. Questo avviso si basa su un numero di versione, non su alcuna prova di un attacco.
Cosa ho fatto e cosa non ho fatto
Per essere pienamente trasparente riguardo al controllo dietro la mia email: ho letto solo file
pubblici che il tuo sito serve già a ogni visitatore, in particolare il file readme.txt
pubblico del plugin e la tua homepage. Non ho avuto accesso alla tua area di amministrazione
di WordPress, al tuo database o a qualsiasi parte privata del sito.
In particolare, non ho mai inviato nulla alla gestione del checkout o del consenso del plugin, né sul tuo sito né altrove. Non è stato inviato, memorizzato, testato o sfruttato nulla. Questo è più importante qui che nella maggior parte di queste pagine, perché quella gestione è esattamente ciò a cui riguarda questo problema, quindi «non l’ho toccata» è l’intera differenza tra una divulgazione e un’intrusione.
Sto anche deliberatamente non pubblicando i dettagli che aiuterebbero qualcuno ad agire su questo problema. La descrizione sopra si ferma al livello di cui ha bisogno un proprietario del sito, e non collego alcun codice proof-of-concept.
Questa è un’osservazione basata sulla versione: il tuo sito dichiara la versione 1.6.5 o successiva. Un sito in quell’intervallo potrebbe già essere protetto con altri mezzi, come un web application firewall. Questo avviso non è una dichiarazione che il tuo sito fosse sfruttabile al momento della mia verifica.
Non ho un webmaster / Sono bloccato
Se non sei la persona che mantiene il sito, per favore inoltra questa pagina a chi se ne occupa (il tuo sviluppatore web, agenzia o provider di hosting). Riconosceranno rapidamente i passaggi sopra.
Se stai mantenendo il sito da solo e ti blocchi, sono felice di aiutarti indicando la direzione giusta senza costi. Contattami utilizzando i dettagli di contatto di seguito.
Contatti
Evan Harris, Ricercatore di sicurezza
- Email: security@mail.mcpsec.dev
- X: @Evan__Harris
- GitHub: eharris128
- LinkedIn: Evan Harris
Mi metto in contatto riguardo a problemi come questo puramente per aiutare gli operatori a proteggere i loro siti. Se preferisci non essere contattato di nuovo, fammelo sapere e lo rispetterò.
Riferimenti
Avvisi ufficiali e tracciamento
Fornitore / plugin
- Creative Mail by Constant Contact nella directory dei plugin di WordPress.org (ora mostra il plugin come chiuso)