Per circa una settimana è bastato visitare un sito qualunque perché un pagamento in criptovaluta finisse a uno sconosciuto. L'attacco alla catena di fornitura di Adform ha inserito codice malevolo dentro uno script di tracciamento distribuito da una delle maggiori aziende europee di tecnologia pubblicitaria, e ogni sito che incorpora quello script ha passato il codice direttamente ai propri visitatori. Il ricercatore di sicurezza Kevin Beaumont lo ha scoperto il 27 luglio 2026. Nessun motore antivirus lo aveva segnalato.
Come ha funzionato l'attacco alla catena di fornitura di Adform
Il file compromesso era trackpoint-async.js, il tracker JavaScript di Adform servito da s2.adform.net e incorporato nei siti dei clienti. Qualcuno ha aggiunto codice offuscato in coda alla libreria legittima, così il file continuava a svolgere il suo lavoro normale trasportando allo stesso tempo un payload. Sul dispositivo del visitatore non veniva installato nulla. Lo script semplicemente girava nella pagina, come qualsiasi altro script che il sito aveva scelto di caricare.
Quello che faceva era ristretto ed efficace. Secondo l'analisi di Beaumont, il codice interrogava gli appunti ogni tre secondi e confrontava il contenuto con i formati degli indirizzi Bitcoin, Ethereum e TRON e, in caso di corrispondenza, lo sostituiva con un portafoglio controllato dall'attaccante. Gli indirizzi sostitutivi cambiavano. Ricopiare l'indirizzo corretto non serviva, perché l'interrogazione successiva lo rimpiazzava di nuovo. L'analisi ha poi mostrato che il codice poteva riscrivere gli indirizzi anche nella pagina e nei campi dei moduli, quindi gli appunti non erano l'unica strada.
La parte che non riguardava le criptovalute
La stessa infrastruttura raccoglieva silenziosamente informazioni. Oltre allo scambio dei portafogli, gli script distribuiti tramite Adform contattavano il server 84.32.102.230 sulla porta 7744 inviando l'indirizzo IP del visitatore, il sito su cui si trovava e il percorso della pagina consultata. È un sistema di tracciamento funzionante costruito sopra un sistema di tracciamento, a beneficio di chi controllava il codice malevolo. Chi sosteneva che gli script pubblicitari siano solo una seccatura per la privacy ora ha un controesempio: lo stesso tubo che racconta la vostra navigazione a un inserzionista può raccontarla a un attaccante.
Una settimana di silenzio e verdetti antivirus puliti
Il campione più vecchio recuperato proviene da uno snapshot di Archive.org datato 26 luglio 2026, e Beaumont ha osservato attività malevola attraverso Adform nella settimana precedente. In tutto quel tempo il file, gli URL, il dominio e l'IP dell'attaccante risultavano puliti presso tutti i vendor su VirusTotal. È questa la parte scomoda. Il payload non si nascondeva in un angolo remoto della rete: lo serviva un'azienda la cui portata Beaumont stima in circa 14.000 società clienti e attorno al 30 per cento del mercato delle piattaforme di acquisto pubblicitario, e il settore della sicurezza non se n'è accorto. Il codice malevolo ha iniziato a sparire mentre lui scriveva la sua analisi.
Che cosa ha fatto Adform e che cosa dovrebbero fare i visitatori
Adform ha confermato l'incidente, rimosso il codice malevolo, avvisato i clienti coinvolti e segnalato il caso alle autorità. L'azienda afferma che il codice non era progettato per installare software o per persistere sul dispositivo e che funzionava solo finché una pagina interessata restava aperta. Ha inoltre chiesto agli utenti di svuotare cache e cookie del browser, perché una copia in cache del file modificato può continuare a girare dopo la correzione. La lista pratica per chi muove criptovalute è breve: svuotare la cache, verificare l'indirizzo di destinazione sul dispositivo che riceve e non sulla pagina da cui è stato copiato, e inviare una piccola transazione di prova prima di una grande.
Uno script, migliaia di porte d'ingresso
Questa è la forma degli attacchi moderni alla catena di fornitura. Nessuno ha violato 14.000 aziende. È stato compromesso un fornitore e 14.000 aziende hanno consegnato il risultato ai propri visitatori, perché uno script di terze parti gira con gli stessi privilegi del sito che lo carica. La versione privacy di questo problema l'abbiamo raccontata quando ChatGPT inviava di nascosto sintesi delle richieste a Meta tramite il pixel di Facebook, e la versione automatizzata quando un agente di IA è uscito dalla sua sandbox e ha avvelenato un repository pubblico di pacchetti. La difesa non è cambiata: bloccare per impostazione predefinita script di terze parti e tracker, perché ognuno che consentite è un'azienda a cui avete concesso di eseguire codice sulla vostra macchina. La forma pratica di questa regola è un blocker di contenuti come uBlock Origin, e adform.net compare nelle liste di tracker standard usate da questi strumenti, quindi molti utenti che ne hanno uno non hanno mai ricevuto il file. Una VPN nasconde da quale rete vi collegate, ed è esattamente ciò che questo beacon registrava, ma nessuna VPN ferma uno script che il sito ha invitato da sé.