Spam dal form di contatto WordPress: come bloccarlo
Cos’è lo spam da form di contatto e perché succede
Lo spam ricevuto tramite il form di contatto è quasi sempre generato da bot automatizzati che compilano e inviano il modulo migliaia di volte al giorno su siti diversi, cercando form privi di protezione. Non è quindi (nella maggior parte dei casi) qualcuno che sta scrivendo manualmente al tuo sito, ma uno script che individua form di contatto pubblici e li usa per inviare messaggi promozionali, phishing o link a scopo di posizionamento SEO illecito.
Il form non ha alcuna protezione anti-bot
La causa più comune, di gran lunga, è un form di contatto senza alcuna misura anti-bot attiva: né un campo honeypot (un campo nascosto che solo i bot, non le persone, tendono a compilare) né un sistema di verifica come reCAPTCHA. Un form “nudo” di questo tipo viene individuato ed è compilabile direttamente dagli script, anche senza passare realmente dal browser e dall’interfaccia visibile del sito.
reCAPTCHA configurato ma con chiavi o soglia non corrette
Una causa meno ovvia riguarda i siti che hanno già attivato reCAPTCHA, ma con una configurazione che non lo rende davvero efficace: chiavi API non corrispondenti al dominio effettivo del sito (frequente dopo un cambio di dominio o una migrazione), oppure — con reCAPTCHA v3, che assegna un punteggio invece di mostrare un test esplicito — una soglia di blocco impostata troppo permissiva, che lascia passare comunque una parte consistente dei bot.
Spam mirato non automatizzato
Un caso da citare, meno comune ma più difficile da bloccare con gli strumenti standard, riguarda lo spam inviato manualmente da persone reali tramite servizi di invio massivo mirati a un settore specifico: in questo caso honeypot e reCAPTCHA, pensati per bloccare bot, sono meno efficaci, perché chi invia il messaggio supera comunque quei controlli come farebbe un visitatore legittimo.
Come capire se è davvero spam automatizzato
Prima di intervenire, conviene confermare che il problema riguardi effettivamente bot automatizzati e non altro, osservando alcuni segnali tipici nei messaggi ricevuti.
Segnali tipici dei messaggi generati da bot
I messaggi di spam automatizzato condividono spesso alcune caratteristiche: testo generico non collegato al contenuto del tuo sito, presenza di link verso siti esterni non richiesti, campi nome/email palesemente casuali o ripetuti identici su più invii, e un volume di messaggi che supera nettamente quanto ci si aspetterebbe da un form di contatto normale (decine o centinaia al giorno, invece di pochi contatti reali).
Verificare se il form ha già una protezione attiva
Apri le impostazioni del plugin che gestisce il form (Contact Form 7, WPForms, Gravity Forms e simili sono i più diffusi) e controlla se è già presente un’integrazione con reCAPTCHA o un campo honeypot attivo: molti plugin includono queste opzioni ma non le attivano di default, lasciando il form scoperto finché non viene configurato esplicitamente.
| Sintomo osservabile | Causa probabile |
|---|---|
| Messaggi generici con link esterni, volume alto e ripetitivo | Bot automatizzati su un form privo di protezione anti-bot |
| Il plugin del form non mostra alcuna integrazione reCAPTCHA/honeypot attiva | Nessuna misura anti-bot configurata sul form |
| reCAPTCHA risulta attivo ma lo spam continua comunque | Chiavi API non corrette per il dominio, o soglia troppo permissiva (v3) |
| Messaggi personalizzati, riferiti al tuo settore specifico, non generici | Spam mirato inviato manualmente, non da bot |
| Lo spam è comparso subito dopo un cambio di dominio o una migrazione | Chiavi reCAPTCHA non aggiornate al nuovo dominio |
Bloccare lo spam: attivare honeypot e reCAPTCHA
Per il caso più comune — form senza alcuna protezione — la soluzione è combinare due misure complementari: un campo honeypot (invisibile, blocca i bot più semplici senza richiedere alcuna azione ai visitatori reali) e reCAPTCHA v3 (invisibile anch’esso, assegna un punteggio di affidabilità alla richiesta senza mostrare un test esplicito).
Attivare il campo honeypot nel plugin del form
Nella maggior parte dei plugin di form (Contact Form 7 con l’estensione dedicata, WPForms, Gravity Forms) è disponibile un’opzione per aggiungere un campo honeypot al form: attivala dalle impostazioni del modulo specifico. Questo campo resta invisibile ai visitatori reali mentre i bot, che analizzano il codice HTML della pagina invece di vederla come farebbe una persona, tendono a compilarlo comunque, permettendo al plugin di scartare automaticamente quegli invii.
Collegare reCAPTCHA v3 con chiavi corrette
Registra il tuo dominio su Google reCAPTCHA (versione v3, che non richiede alcuna interazione visibile da parte del visitatore) e ottieni la chiave del sito e quella segreta. Inseriscile nelle impostazioni del plugin del form, verificando che il dominio registrato su reCAPTCHA corrisponda esattamente a quello del sito (incluso il sottodominio www, se presente): un disallineamento qui è la causa più comune per cui reCAPTCHA sembra attivo ma non blocca nulla.
Verificare che il form continui a funzionare per gli utenti reali
Invia un messaggio di prova dal form come farebbe un visitatore normale, per confermare che honeypot e reCAPTCHA non blocchino anche le richieste legittime. Se usi reCAPTCHA v3, verifica nella dashboard di Google reCAPTCHA la distribuzione dei punteggi assegnati nei giorni successivi, per capire se la soglia di blocco impostata nel plugin è adeguata o va regolata.
Lo spam continua nonostante honeypot e reCAPTCHA
Se dopo aver attivato entrambe le protezioni lo spam continua, e i messaggi ricevuti sembrano personalizzati e riferiti al tuo settore specifico piuttosto che generici, probabilmente non si tratta più di bot ma di invii manuali mirati. In questo caso, honeypot e reCAPTCHA restano utili contro la parte automatizzata del problema, ma per la parte mirata conviene aggiungere un filtro basato su parole chiave ricorrenti nei messaggi di spam ricevuti (molti plugin di form permettono di bloccare automaticamente messaggi contenenti termini specifici), e valutare se il form riceve traffico da paesi o aree geografiche non pertinenti al tuo pubblico, bloccabili tramite un plugin di sicurezza dedicato.
Non riesci a risolvere? Intervento tecnico a distanza
Se non sei sicuro di come configurare correttamente honeypot e reCAPTCHA sul tuo plugin specifico, se le chiavi reCAPTCHA non sembrano funzionare nonostante sembrino corrette, o se lo spam mirato continua nonostante ogni protezione attivata, continuare a modificare impostazioni per tentativi rischia di bloccare anche richieste legittime dai tuoi visitatori reali. In questi casi è possibile richiedere una verifica diretta della configurazione del form: si individua la protezione più adatta al tipo di spam ricevuto e si verifica che il form resti pienamente funzionante per chi lo usa davvero.
Domande frequenti sullo spam dal form di contatto WordPress
Il campo honeypot può bloccare anche visitatori reali per errore? No, è pensato apposta per restare invisibile e non richiedere alcuna azione da parte delle persone: solo gli script che analizzano il codice HTML della pagina tendono a compilarlo, non chi naviga normalmente il sito.
Perché reCAPTCHA v3 non mostra il classico test “non sono un robot”? Perché assegna un punteggio di affidabilità alla richiesta in modo invisibile, senza interrompere l’esperienza del visitatore: è pensato per essere meno invasivo rispetto alle versioni precedenti che richiedevano un’interazione esplicita.
Devo usare per forza reCAPTCHA, o esistono alternative? reCAPTCHA è il più diffuso e integrato nella maggior parte dei plugin di form, ma esistono alternative simili (come hCaptcha o Cloudflare Turnstile): il principio di funzionamento — valutare l’affidabilità della richiesta senza sempre richiedere un’azione esplicita — resta lo stesso.
Posso bloccare lo spam solo con un plugin antispam, senza honeypot o reCAPTCHA? Alcuni plugin antispam dedicati (come Akismet) analizzano il contenuto dei messaggi ricevuti in modo simile a un filtro email, e possono essere usati in aggiunta a honeypot e reCAPTCHA per una protezione più completa, non necessariamente in sostituzione.
Quanto tempo serve perché lo spam si riduca dopo aver attivato le protezioni? Di norma la riduzione è immediata per la parte automatizzata, dato che i bot vengono bloccati già al primo tentativo di invio: se lo spam continua oltre pochi giorni, probabilmente rientra nel caso di invio mirato non automatizzato.
Vuoi risolverlo con un intervento diretto? Se lo spam continua nonostante le protezioni attivate, o non sei sicuro di come configurarle correttamente, è possibile richiedere una verifica diretta della configurazione del form: si individua la soluzione più adatta al tipo di spam ricevuto. → Richiedi assistenza specializzata.
