Il malware non arriva dall'hosting (quasi sempre): dove guardare davvero
Colpa dell'hosting è la diagnosi più diffusa dopo un hack, e quasi sempre sbagliata. Analisi onesta di quando il provider è davvero responsabile, come leggere le evidenze per attribuire l'intrusione, e cosa chiedere al tuo hosting.

Il sito si reinfetta, il titolare cambia hosting, e due mesi dopo il problema è di nuovo lì. Lo abbiamo visto decine di volte. Il cambio di hosting è la versione informatica del cambiare auto quando il problema era la patente.
Perché succede? Perché il malware non sceglie l'hosting: sceglie la vulnerabilità. E le vulnerabilità che vediamo sfruttare ogni settimana viaggiano con il sito, non con il server.
Da dove entra davvero il malware: le evidenze
Nei log di accesso di una compromissione tipica trovi, in ordine di frequenza:
- POST ripetuti su endpoint di plugin vulnerabili, spesso settimane prima che qualcuno se ne accorga. CVE pubblicate con exploit pubblici vengono scansionate in massa entro ore dalla divulgazione.
- Brute force o credential stuffing su xmlrpc.php e wp-login.php: migliaia di tentativi con credenziali rubate altrove (altro servizio, altro data breach).
- Attività da account legittimi: l'attaccante è già entrato con una password valida comprata o rubata. Nei log sembra un amministratore che lavora di notte.
- Upload di file PHP tramite form o uploader mal configurati.
Nessuna di queste quattro vie dipende dal server. Un hosting impeccabile non può impedirti di installare un plugin nulled né forzare un aggiornamento che rimandi da otto mesi.
Quando invece l'hosting è davvero il problema
Esistono casi in cui la responsabilità del provider è concreta. Sono meno frequenti, ma vanno riconosciuti:
| Scenario | Segnale distintivo | Cosa richiedere |
|---|---|---|
| Isolamento insufficiente su shared | Altri siti sullo stesso server infetti con lo stesso malware, ingresso fuori da wp-content | Migrazione o piano isolato |
| Versioni PHP/EOL o pannelli obsoleti | Vulnerabilità note del pannello (cPanel/Plesk) nei log | Aggiornamento documentato o cambio provider |
| Backup corrotti o mancanti | Ripristini falliti, dump troncati, "Dump completed" assente | Verifica contrattuale dei backup |
| Configurazione server errata | Directory listing attivo, permessi globali aperti, error_reporting esposto | Ticket con richiesta scritta di correzione |
| Compromissione lato infrastruttura | File infetti fuori dallo spazio utente, cron di sistema manipolati | Escalation formale al provider |
Nota il criterio pratico: se l'intrusione passa da wp-content e da wp-login, la responsabilità è applicativa; se passa dal sistema sotto lo spazio del sito, la discussione con l'hosting è legittima. Ma questa distinzione si dimostra solo con i log, non con la sensazione.
Come attribuire l'ingresso: il metodo in tre passaggi
Prima di accusare chiunque, serve una diagnosi. Tre fonti di evidenza bastano nella maggior parte dei casi.
1. Timestamp dei file infetti
La data di modifica dei primi file malevoli stabilisce il terminus ante quem della compromissione. Attenzione: gli attaccanti falsificano i timestamp, quindi usa questo dato insieme agli altri, mai da solo.
2. Log di accesso nella finestra temporale
Cerca le richieste POST nelle 48 ore precedenti il primo file infetto. Un comando tipo:
grep " POST " access.log | awk '{print $7}' | sort | uniq -c | sort -rn | head -30
mostra subito gli endpoint anomali. Poi isola l'indirizzo IP responsabile e ricostruisci la sua intera sessione: cosa ha scaricato, dove ha inviato dati, quali pagine admin ha toccato.
3. Correlazione con CVE note
Confronta le versioni di plugin presenti nei readme e nei commenti HTML con le CVE note. Se il tuo slider aveva una vulnerabilità di upload remoto pubblicata tre mesi prima, e nei log compaiono POST sul suo endpoint, la catena causale è chiusa.
Cosa chiedere (giustamente) al tuo hosting
Anche quando il vettore è applicativo, il provider ha doveri veri. Questi sono legittimi da pretendere, per iscritto:
- log di accesso completi e disponibili almeno 30 giorni indietro
- isolamento tra account dichiarato (su shared: open_basedir, utenti di sistema separati)
- backup verificabili, con prova periodica di ripristino
- versioni PHP supportate e politica di aggiornamento trasparente
- notifica proattiva se il loro scanner rileva malware nel tuo spazio
Se il tuo hosting risponde a queste cinque richieste in modo documentato, tienilo. Se risponde "reinstalla WordPress", il problema di affidabilità è lì, ma non per il motivo che pensavi.
Il rovescio utile della medaglia
Un'ultima osservazione controintuitiva: un buon hosting non previene le compromissioni, ma determina quanto costano. Snapshot rapidi, staging in un click, log lunghi, supporto tecnico competente: tutto questo accorcia drasticamente il tempo di recupero. Scegli l'hosting non pensando a "se" sarai attaccato ma a "quando", e valuta quanto vorresti che durasse quel momento.
Se il tuo sito è già infetto e vuoi capire con certezza da dove è entrato il problema prima di decidere cosa fare, la nostra pagina sulla rimozione malware WordPress include l'analisi root cause nel prezzo fisso. Il metodo operativo completo è descritto nella guida alla bonifica passo per passo, mentre qui trovi i segnali che indicano un sito compromesso. Per ridurre il rischio a valle, la checklist di hardening tecnico è il punto di partenza migliore.
Il mio hosting dice che la colpa è di WordPress e io dico che è sua. Come si decide?
Si decide con i log. L'endpoint sfruttato nell'intrusione indica il livello responsabile: endpoint WordPress/plugin = livello applicativo; accesso fuori dallo spazio utente o ad altri account = livello infrastruttura. Senza log non c'è modo di decidere, e chi non li conserva rende la discussione impossibile.
Cambiare hosting può comunque essere utile dopo un hack?
Sì, ma per motivi diversi dalla colpa: migrare su un ambiente pulito durante la bonifica elimina il rischio di persistenze lato server e offre log e snapshot migliori. Va fatto però insieme alla pulizia, non al posto della pulizia.
Gli hosting shared sono intrinsecamente insicuri?
No. Un shared ben gestito (container o utenti di sistema isolati, open_basedir, versioni aggiornate) offre sicurezza adeguata per la maggior parte dei siti aziendali. I problemi arrivano con provider low-cost che risparmiano proprio sull'isolamento.
Posso chiedere un risarcimento all'hosting se la compromissione era loro responsabilità?
Dipende dal contratto: molti SLA escludono esplicitamente danni da compromissione applicativa e limitano la responsabilità al costo del servizio. La documentazione forense raccolta durante la bonifica è ciò che rende una richiesta credibile, se il caso lo merita.
Scritto dal team WPsec.it
Team WPsec.it
Bonifica malware, hardening, performance e manutenzione WordPress.
Prevenzione e gestione
Dopo l'emergenza, o per non arrivarci: le guide sulla gestione.
Sicurezza, velocità e manutenzione di WordPress sono lo stesso lavoro visto da tre lati. Queste pagine spiegano cosa controllare, con quale priorità e quanto costa farlo fare.
Continua a leggere
Articoli correlati.

WordPress sotto attacco DDoS a livello applicativo (L7): cosa fare nelle prime due ore
Flood HTTP su xmlrpc, wp-login e ricerca interna: come riconoscerlo, cosa fare sul sito e cosa sul server nelle prime due ore, e perché bloccare gli IP non basta.

Ripristinare un backup dopo un hack: quando è la scelta sbagliata
Il ripristino del backup è il primo consiglio che ricevi dopo un hack. Nella maggior parte dei casi reali è la decisione più costosa. Ecco quando funziona, quando no, e come farlo senza reinfettare il sito.

Il plugin di sicurezza ti sta esponendo: il problema del set-and-forget
Firewall, scanner e lock login non bastano se li installi e li dimentichi. Perché i plugin di sicurezza WordPress creano falsa sicurezza, quando diventano essi stessi un rischio, e la configurazione minima che funziona.