Sito WordPress hackerato con redirect: come ripulire (guida operativa)

Ciao e benvenuto. Se hai bisogno di chiarimenti sul codice, lascia un commento (no WhatsApp); ricorda però che non fornisco assistenza gratuita sugli articoli che ho scritto nè personalizzo il codice in modo gratuito, quindi se la tua richiesta va oltre il semplice "aiutino", se vuoi mi chiedi una consulenza a pagamento nella pagina contatti. Grazie della comprensione. Alessio

Se il tuo WordPress reindirizza i visitatori verso siti sconosciuti (spesso solo su mobile o al primo click), è quasi sempre segno di una compromissione. Qui trovi una procedura operativa, passo per passo, per bloccare il danno, ripulire file e database e rimettere in sicurezza il sito.

Ti anticipo la sequenza, poi la vediamo nel dettaglio:

  • Metti in sicurezza: backup immediato, disattiva cache e CDN, attiva la 2FA, cambia le password.
  • Trova l’origine: controlla .htaccess, wp-config.php, la cartella uploads, mu-plugins, plugin/tema e il database (wp_options, wp_posts).
  • Pulisci: rimuovi il codice offuscato (base64_decode, gzinflate, eval) e ripristina core e plugin da fonti ufficiali.
  • Ruota le chiavi (SALTS), reset password, blocca l’esecuzione PHP in /uploads, aggiorna tutto.
  • Verifica: svuota la cache, controlla Search Console (sezione Sicurezza), monitora per 48-72 ore.

Una premessa: questa è una guida per chi sa dove mettere le mani. Se non te la senti, meglio farla fare a qualcuno, perché su un sito compromesso un passo falso può peggiorare le cose.

1) Metti in sicurezza (prima di toccare i file)

  • Backup completo di file + database: serve una copia “forense” dello stato attuale, prima di modificare qualsiasi cosa.
  • Disattiva la cache (plugin e CDN), altrimenti rischi di continuare a servire versioni infette dalla cache.
  • Attiva la 2FA e cambia le password di tutto: WordPress (tutti gli admin), hosting, FTP/SSH, database, CDN.
  • Controlla il DNS: verifica che i record A/AAAA/CNAME non siano stati modificati.

2) Riconosci il tipo di redirect

  • Succede solo su mobile/Android o al primo caricamento? È tipico degli script che usano localStorage o cookie per fare un “redirect una tantum” per visitatore.
  • Si attiva su URL specifiche o al click? Di solito è codice iniettato nel footer o in un widget.

3) I punti caldi da controllare

  • .htaccess (Apache): regole Rewrite sospette che puntano a domini esterni.
  • wp-config.php: include strani (soprattutto a inizio o fine file) o costanti aggiunte.
  • /wp-content/uploads/: presenza di file .php (sospetti per definizione), specie nelle sottocartelle anno/mese.
  • /wp-content/mu-plugins/: file auto-caricati con codice offuscato.
  • Plugin e tema: file modificati di recente o con date anomale.
  • Database: wp_options (opzioni serializzate con JS offuscato), wp_posts (iframe o script), siteurl/home alterati.

4) Comandi utili per trovare l’infezione (SSH)

5) Ripristino di core, tema e plugin

La regola d’oro qui è: non riparare a mano i file infetti, sovrascrivili da fonte pulita. È più veloce e non rischi di lasciarti dietro un pezzo di backdoor.

Reinstalla il core da sorgente ufficiale:

Poi ripristina plugin e tema reinstallandoli:

6) Pulisci .htaccess e Nginx

Riporta l’.htaccess allo standard WordPress (dopo aver rimosso eventuali regole malevole):

Su Nginx: controlla che non ci siano rewrite verso domini esterni e che gli snippet siano quelli standard del tema o dell’hosting.

7) Pulisci il database

Controlla wp_options: siteurl e home devono puntare al tuo dominio, e vanno ispezionate le opzioni widget_* e quelle personalizzate che contengono script.

Query di ricerca (adatta il prefisso delle tabelle al tuo):

8) Ruota le chiavi e blocca PHP in uploads

Rigenera le SALTS dal generatore ufficiale di WordPress e aggiungi un paio di protezioni nel wp-config.php:

Blocca l’esecuzione di PHP in /uploads (in una cartella di sole immagini, PHP non deve girare):

Apache (.htaccess dentro uploads):

Nginx:

9) Verifiche dopo la pulizia

  • Svuota la cache (plugin + CDN) e riabilita le ottimizzazioni un po’ alla volta.
  • Chrome DevTools → Network: verifica che non ci siano chiamate a domini sconosciuti né inline script sospetti.
  • Google Search Console → Sicurezza: controlla e, se c’erano avvisi, richiedi una revisione.
  • Monitora per 48-72 ore, anche da mobile e da reti diverse.

Dove si nasconde il redirect? (mappa rapida)

Posizione tipica Segnale Come si sistema
.htaccess RewriteRule verso domini esterni Ripristina lo snippet standard di WordPress
wp-config.php include a file nascosti Rimuovi l’include, reinstalla il core, ruota le SALTS
/uploads/ file .php tra le immagini Elimina e blocca l’esecuzione PHP in uploads
mu-plugins / plugin codice offuscato, date anomale Reinstalla da fonte ufficiale
DB (wp_options / wp_posts) script o iframe in opzioni o contenuti Pulizia mirata o ripristino da backup precedente

Prevenzione (dopo aver ripulito)

  • Aggiornamenti regolari di core, tema e plugin, con uno staging dove testare prima.
  • Principio del minimo privilegio e 2FA per gli account con permessi elevati.
  • Backup off-site con un test di ripristino ogni tanto (un backup che non sai ripristinare non è un backup).
  • WAF (applicativo o a livello edge) e rate-limit su login e XML-RPC.
  • Regole di cache sicure per WooCommerce e controllo dei webhook.

Log di errore WordPress: leggere e risolvere i bug comuni (guida pratica)

Guida completa ai comandi WP-CLI: elenco aggiornato e spiegazione in italiano

Immagine di Alessio Angeloro

Alessio Angeloro

Alessio Angeloro è uno sviluppatore WordPress e programmatore WooCommerce specializzato in integrazioni avanzate: gateway di pagamento rateali (Findomestic, Compass, Agos, Cofidis), collegamenti via API con gestionali e CRM, sviluppo di plugin personalizzati e ottimizzazione delle performance degli ecommerce. Con un background sistemistico e anni di esperienza su progetti reali, aiuta aziende, professionisti e agenzie a trasformare WooCommerce in uno strumento di vendita stabile, veloce e scalabile, evitando soluzioni generiche e poco performanti. Lavora con codice pulito e configurazioni su misura, pensate per far crescere il tuo negozio online nel tempo.
Condividi l'articolo
Facebook
Twitter
LinkedIn
WhatsApp

Lascia un commento

Questo sito utilizza Akismet per ridurre lo spam. Scopri come vengono elaborati i dati derivati dai commenti.