Il sito del vicino può infettare il tuo? La contaminazione crociata sull'hosting condiviso

Tre siti sullo stesso server, separati da confini che un attacco non attraversa

Il tuo sito è aggiornato, le password sono lunghe, i plugin sono pochi e scelti bene. Una mattina però non si apre: Google lo segnala come pericoloso, e dentro i file c'è codice che non hai scritto tu.

Non hai sbagliato niente. È entrato da un'altra parte.

Cos'è la contaminazione crociata

Su un hosting condiviso il tuo sito non è solo sulla macchina. Accanto ce ne sono altri, di aziende che non conosci, gestiti con criteri che non controlli.

La contaminazione crociata è quello che succede quando chi è entrato in uno di quei siti riesce a spostarsi anche negli altri. Il punto d'ingresso è il più trascurato di tutti — un plugin fermo a tre anni fa, un tema scaricato da un sito qualunque, una password riciclata — ma da lì il danno si allarga a chi non c'entra nulla.

È il motivo per cui «il mio sito è piccolo, chi vuoi che mi attacchi» è la domanda sbagliata. Non serve che qualcuno prenda di mira te: basta che prenda di mira il server su cui stai, e i bot che scandagliano internet non scelgono le vittime, le trovano.

Come si sposta, in pratica

Perché un'infezione passi da un sito all'altro serve che i due condividano qualcosa che non dovrebbero.

Lo stesso utente di sistema. Se i processi di più siti girano con la stessa identità, chi controlla il processo di uno può leggere e scrivere i file dell'altro. È la via più diretta.

I permessi troppo larghi. Cartelle lasciate scrivibili da chiunque durante un'installazione fatta di fretta, e mai richiuse. Capita più spesso di quanto si creda.

La cartella temporanea in comune. Uno spazio dove tutti possono scrivere diventa un posto comodo dove depositare un file e farlo eseguire da un altro contesto.

Il database con troppi diritti. Un'utenza che può leggere anche le tabelle che non le servono trasforma una falla in un sito in una fuga di dati di molti.

Il ponte umano. Spesso non è nemmeno il server: è il computer dell'agenzia. Un FTP salvato in un programma infetto consegna in un colpo solo le credenziali di trenta siti diversi, che magari stanno su hosting diversi.

I segnali, prima che sia evidente

Raramente arriva un avviso. Si notano piuttosto:

  • file nuovi con nomi senza senso nelle cartelle di sistema, con date di modifica che non corrispondono a nessun tuo intervento;
  • il sito che rallenta senza che il traffico sia cresciuto;
  • email in uscita che non hai mandato, e il dominio che finisce in qualche lista nera;
  • risultati di ricerca che mostrano, sotto il tuo nome, pagine che non esistono nel tuo sito;
  • un comportamento diverso per i visitatori che arrivano da Google rispetto a quando lo apri tu, che è il modo in cui l'infezione resta invisibile al proprietario.

Se compare anche uno solo di questi, il tempo conta: più a lungo resta, più profondo diventa il recupero.

Come è impostata l'infrastruttura ICBS

La difesa vera non è accorgersene presto: è fare in modo che il salto da un sito all'altro non sia possibile.

Isolamento delle risorse. Usiamo container Linux, KVM e LXD per orchestrarli, isolando completamente non solo ogni account di hosting sui nostri server, ma anche ogni istanza. È la separazione che toglie di mezzo, alla radice, le prime quattro strade descritte sopra: se i confini sono reali, non c'è un «accanto» in cui spostarsi.

Regole applicate prima delle correzioni. Fra il momento in cui una falla diventa pubblica e quello in cui esce l'aggiornamento passano giorni, e sono i giorni in cui gli attacchi automatici vanno a segno. Quando una vulnerabilità non è ancora corretta dagli aggiornamenti, applichiamo subito una regola al WAF che blocca comunque la minaccia.

Controlli e ripristino. Scansioni di vulnerabilità dei plugin, monitoraggio continuo, rimozione dei malware, e un backup completo giornaliero. Perché la domanda seria non è solo «mi succederà?», ma «quanto ci metto a tornare come prima?».

Le domande da fare a chiunque ospiti il tuo sito

Vale per noi come per chiunque altro. Prima di scegliere, o alla prossima scadenza, chiedi:

  1. I siti sui vostri server sono isolati fra loro? Come, concretamente?
  2. Se un sito vicino al mio viene compromesso, cosa impedisce che arrivi al mio?
  3. Ogni quanto viene fatto il backup, per quanto lo tenete, e in quanto tempo ripristinate?
  4. Cosa succede fra la scoperta di una vulnerabilità e l'uscita della patch?
  5. Se il mio sito viene infettato, la pulizia la fate voi o è un problema mio?

Una risposta vaga alla prima è già una risposta.

E una cosa resta comunque tua, qualunque sia l'hosting: tenere aggiornati CMS, temi e plugin, togliere quelli che non usi, e non lasciare credenziali FTP salvate su un computer che non controlli. L'isolamento protegge dal vicino. Dalla porta lasciata aperta in casa propria, no.

Domande frequenti

Sì, se l'isolamento fra i siti sul server non è reale. Tenere aggiornati CMS, temi e plugin elimina la porta d'ingresso sul tuo sito, non quella sul sito accanto. Per questo le due cose vanno insieme: la manutenzione la fai tu, l'isolamento lo deve garantire chi ospita.
I segnali più comuni sono file nuovi con nomi senza senso e date di modifica che non corrispondono a nessun tuo intervento, rallentamenti senza aumento di traffico, email in uscita che non hai mandato, e risultati di ricerca che mostrano pagine inesistenti sotto il tuo nome. Spesso il sito appare normale a te e diverso a chi arriva da Google.
No. Quello che conta è come sono separati gli ambienti, non quante persone stanno sulla stessa macchina. Un condiviso con isolamento reale può essere più sicuro di un dedicato mai aggiornato, di cui nessuno si occupa.
Dipende dal contratto, ed è una delle domande da fare prima di firmare. Sui piani ICBS sono previsti monitoraggio continuo e rimozione dei malware, oltre a un backup completo giornaliero per tornare a una versione sana.
No. Il backup serve a tornare indietro, non a impedire che accada, e se l'infezione è passata inosservata per settimane rischi di ripristinare una copia già compromessa. Conta anche da quanto tempo esistono le copie e in quanto tempo vengono ripristinate.