Torna al blog
Approfondimenti·14 min di lettura

Come fa il machine learning a rilevare i malware? La spiegazione passo dopo passo

L'antivirus tradizionale confronta i file con un elenco di firme di malware noti. Il rilevamento basato su ML costruisce un modello che riconosce gli <em>schemi</em> del comportamento dannoso — così riesce a individuare minacce che nessuno ha mai visto prima. Ecco come funziona, passo dopo passo.

Di Casper's Cloak Security Team

In breve: l'antivirus basato su firme è come un buttafuori con un album di foto — se la tua faccia non c'è, entri. Il rilevamento tramite machine learning è come un buttafuori che ha studiato migliaia di risse e ha imparato a leggere il linguaggio del corpo — anche se sei uno sconosciuto, il modo in cui ti muovi ti tradisce. Questa differenza è ciò che separa "abbiamo bloccato il virus di ieri" da "abbiamo bloccato un attacco zero-day che nessuno aveva ancora catalogato." Di seguito: cosa fanno davvero le firme, perché non bastano, come funzionano i classificatori ML, i tre principali approcci, cosa fa Casper's Cloak a livello di rete nello specifico, e i limiti reali.

Rilevamento basato su firme vs rilevamento basato su ML a colpo d'occhio

Prima di entrare nei dettagli tecnici, ecco il confronto ad alto livello. Entrambi gli approcci hanno un loro ruolo; la domanda è quali minacce ciascuno gestisce meglio.

FattoreBasato su firmeBasato su ML
Velocità di rilevamento per minacce noteMolto veloce — corrispondenza diretta hash/patternVeloce — estrazione di feature + classificazione
Rilevamento zero-dayNessuno finché non viene scritta una firmaPuò individuare minacce nuove tramite pattern comportamentali
Tasso di falsi positiviMolto basso — corrispondenza esattaPiù alto — classificazione probabilistica
Frequenza di aggiornamentoPush del DB firme ogni ora/giornoModello riaddestratto periodicamente; l'inferenza gira in continuo
Consumo di risorseBasso — ricerca pattern in un databaseModerato — dipende dalla complessità del modello e da dove gira l'inferenza
Difficoltà di evasioneFacile — basta modificare un byte per aggirare la firmaPiù difficile — bisogna modificare abbastanza feature da spostare la classificazione

La risposta pratica è "usateli entrambi." Le firme sono veloci e precise per le minacce note; il ML cattura quelle nuove. La maggior parte dei prodotti di sicurezza moderni li stratifica insieme. La domanda interessante è come funziona la parte ML — ed è ciò su cui spenderemo il resto di questo articolo.

Cosa fa il rilevamento basato su firme (e perché non basta)

Il rilevamento basato su firme è concettualmente semplice: un ricercatore di sicurezza analizza un nuovo malware, ne estrae una sequenza di byte univoca (la "firma") e la aggiunge a un database. Ogni file scansionato dall'antivirus viene confrontato con quel database. Corrispondenza trovata? In quarantena. Nessuna corrispondenza? Pulito.

Questo modello ha funzionato bene fino agli anni 2000, quando i nuovi malware apparivano a una velocità di poche dozzine al giorno e i team di analisti riuscivano a stare al passo. L'istituto AV-TEST registra oggi oltre 450.000 nuovi malware e applicazioni potenzialmente indesiderate al giorno. Nessun team di analisti scrive 450.000 firme al giorno. Anche la generazione automatica di firme non riesce a tenere il ritmo, perché gli autori di malware usano il polimorfismo — modificano la sequenza di byte del codice a ogni distribuzione preservandone il comportamento. Un virus polimorfico può avere migliaia di varianti, ciascuna con un hash diverso, ciascuna che richiede una firma diversa. Il gioco è truccato contro la corrispondenza statica di pattern.

Il secondo problema è la finestra di esposizione. Tra il momento in cui un nuovo malware compare in natura e il momento in cui una firma per esso arriva sul tuo dispositivo, c'è un intervallo. Quell'intervallo era in media 24–48 ore nel 2020; con l'automazione delle pipeline è più breve ora, ma non è mai zero. Durante quell'intervallo, il tuo antivirus basato su firme è completamente cieco alla nuova minaccia. È lì che vivono gli attacchi zero-day.

Il terzo problema è il mobile. La scansione tradizionale basata su firme richiede di analizzare ogni file confrontandolo con un grande database — un'operazione che scarica la batteria e richiede spazio di archiviazione per il database delle firme stesso. iOS non consente nemmeno alle app di scansionare i file di altre app. Sul mobile, eseguire un motore AV tradizionale in background è o poco pratico (consumo della batteria su Android) o architetturalmente impossibile (sandboxing di iOS). Il rilevamento deve avvenire altrove.

Come i modelli ML imparano a riconoscere cosa è "dannoso"

Il rilevamento tramite machine learning adotta un approccio fondamentalmente diverso. Invece di memorizzare singoli campioni di malware, si addestra un modello su feature — caratteristiche misurabili che tendono a differire tra software dannoso e benigno (o comportamento di rete dannoso e benigno). Il modello impara un confine decisionale: "le cose con queste combinazioni di feature sono probabilmente dannose; quelle con quelle combinazioni sono probabilmente sicure."

Passo 1: Raccogliere un dataset di addestramento

Hai bisogno di esempi etichettati — campioni noti come dannosi e campioni noti come benigni. Per il ML basato su file, questo significa tipicamente milioni di file PE (Portable Executable) da feed di threat intelligence, repository pubblici come VirusTotal, honeypot aziendali e consorzi di condivisione malware. Per il ML basato su rete, significa log di query DNS etichettati, record di flussi di rete e metadati di registrazione dei domini — milioni di domini noti come dannosi e milioni di domini noti come benigni.

Passo 2: Estrarre le feature

I dati grezzi non sono direttamente utili a un classificatore. Si trasforma ogni campione in un vettore di feature — un elenco di numeri che ne descrivono le caratteristiche. Per un eseguibile Windows, le feature possono includere: l'entropia di ogni sezione di codice (il codice compresso/cifrato ha entropia più alta), le chiamate API importate (i malware tendono a importare API di process-injection e manipolazione del registro), il rapporto tra sezioni di lettura-scrittura e sola lettura, se il file ha una firma digitale valida, pattern di stringhe nel binario. Per un nome di dominio, le feature possono includere: età del dominio, registrar, stato della privacy WHOIS, attributi del certificato TLS, storico dei record DNS, struttura lessicale del nome di dominio stesso.

Passo 3: Addestrare un classificatore

Con i vettori di feature etichettati a disposizione, si addestra un modello di machine learning — alberi con gradient boosting (XGBoost, LightGBM), random forest, reti neurali profonde, o combinazioni ensemble di più approcci. Il modello impara quali combinazioni di feature sono correlate a "dannoso" e quali a "benigno." La cross-validation e i test set di holdout garantiscono che il modello si generalizzi a campioni mai visti piuttosto che memorizzare il dataset di addestramento.

Passo 4: Distribuire per l'inferenza

Il modello addestrato viene distribuito dove può classificare nuovi campioni in tempo reale. Per il rilevamento basato su file, è di solito un agente endpoint sul dispositivo dell'utente o una sandbox cloud. Per il rilevamento basato su rete, è un classificatore posizionato inline sul resolver DNS o sul proxy di rete. Un nuovo campione arriva, ne vengono estratte le feature, il modello lo valuta (tipicamente come probabilità tra 0.0 e 1.0) e una soglia determina l'azione — blocca, consenti o segnala per revisione umana.

La differenza critica rispetto alle firme: il modello non ha mai visto questo specifico campione prima, ma riconosce lo schema. Una nuova variante polimorfica di ransomware esistente cambia la sua sequenza di byte ma importa ancora le stesse API di cifratura, ha ancora sezioni ad alta entropia, manca ancora di un certificato valido — il modello la cattura perché le feature corrispondono al pattern dannoso, anche se nessun essere umano ha scritto una regola per questa variante.

I tre principali approcci ML al rilevamento di malware

Il rilevamento basato su ML non è una cosa sola — è almeno tre approcci diversi, ciascuno operante a un livello diverso dello stack e in grado di individuare categorie diverse di minacce.

1. Analisi statica: ispezionare il file senza eseguirlo

I modelli ML statici analizzano la struttura del file, i metadati e il contenuto senza eseguirlo. Le feature includono attributi dell'intestazione PE, entropia delle sezioni, tabelle di importazione, stringhe incorporate, metadati delle risorse, identificazione del packer e, sempre più, sequenze di byte grezzi alimentate a reti neurali convoluzionali che apprendono le proprie feature direttamente dal binario.

Punti di forza: veloce (non serve l'esecuzione in sandbox), si scala a milioni di file, cattura molte minacce di tipo commodity. Punti deboli: può essere aggirato dall'offuscamento, dal packing o dal codice metamorfico che si ristruttura. Un attaccante sufficientemente motivato può trasformare il proprio binario finché le feature statiche sembrano benigne. Il framework MITRE ATT&CK documenta queste tecniche di evasione nella sezione Defense Evasion (TA0005).

2. Analisi dinamica/comportamentale: eseguire il file e osservare cosa fa

L'analisi dinamica esegue il file sospetto in una sandbox (una macchina virtuale strumentata) e registra il suo comportamento a runtime: quali file legge e scrive, quali chiavi di registro modifica, quali connessioni di rete apre, quali processi avvia, quali chiamate di sistema effettua. Un modello ML addestrato su queste tracce comportamentali può classificare il campione in base a ciò che fa, non a come appare.

Punti di forza: molto più difficile da aggirare — anche se il binario è offuscato, il comportamento deve manifestarsi perché il malware raggiunga il suo obiettivo. Il ransomware deve cifrare i file; un keylogger deve agganciare la tastiera; un beacon C2 deve contattare il server. Il comportamento è la verità oggettiva. Punti deboli: lento (l'esecuzione in sandbox richiede secondi o minuti), costoso (le VM consumano risorse di calcolo) e alcuni malware rilevano le sandbox e si rifiutano di eseguire. L'evasione dalla sandbox è di per sé un gioco del gatto e del topo.

3. Analisi del traffico di rete: classificare le connessioni senza ispezionare i payload

Il ML a livello di rete opera sui metadati delle connessioni di rete — query DNS, attributi dell'handshake TLS, statistiche di flusso, pattern di registrazione dei domini — senza decrittare o ispezionare il payload effettivo. Questo è l'approccio più rilevante per la sicurezza mobile consumer, ed è dove opera Casper's Cloak.

Punti di forza: funziona su qualsiasi dispositivo senza installare un agente endpoint che scansiona i file, gestisce il traffico cifrato senza interrompere la cifratura, si scala a milioni di query DNS al secondo, individua l'infrastruttura di phishing e C2 a livello di registrazione del dominio prima che il malware raggiunga il dispositivo dell'utente. Punti deboli: non può vedere il contenuto del payload cifrato, non può rilevare malware che non effettua connessioni di rete, e dipende dalla qualità delle feature del dominio/della rete.

Quali feature esamina davvero il modello?

È qui che l'astratto "il ML riconosce pattern" diventa concreto. Per la classificazione ML a livello di rete — l'approccio più rilevante per Casper — le feature si dividono in sei categorie:

  • Età del dominio e pattern di registrazione. I domini dannosi sono prevalentemente giovani — registrati giorni o ore prima dell'utilizzo, spesso in blocco tramite registrar automatizzati. Un dominio registrato 72 ore fa tramite un registrar con privacy WHOIS che ha registrato anche altri 200 domini nello stesso batch è statisticamente molto più probabile che sia dannoso rispetto a un dominio registrato otto anni fa con un record WHOIS coerente. Il classificatore pesa fortemente l'età del dominio, e per una buona ragione: il Cybersecurity Framework del NIST identifica la gestione degli asset e il rischio della supply chain (inclusa la provenienza dei domini) come controlli fondamentali della funzione di identificazione.
  • Attributi del certificato TLS. I siti legittimi utilizzano sempre più certificati di CA affermate con validazione dell'organizzazione. L'infrastruttura di phishing e malware si affida a certificati DV (Domain Validation) gratuiti e rilasciati automaticamente — in particolare, un elevato volume di certificati Let's Encrypt rilasciati in rapida successione per domini senza una precedente presenza web. Il classificatore esamina l'emittente del certificato, il periodo di validità, le voci SAN (Subject Alternative Name) e se la catena di certificati corrisponde allo scopo apparente del dominio.
  • Comportamento DNS. L'infrastruttura C2 dei malware utilizza spesso il fast-flux DNS (rotazione rapida degli indirizzi IP dietro un dominio), nomi di dominio generati da DGA (stringhe generate algoritmicamente come xk3j7mq9.net), o tipi di record insoliti (record TXT usati per l'esfiltrazione di dati). Il classificatore esamina i valori TTL, il numero di indirizzi IP restituiti, la diversità geografica degli IP risolti e l'entropia lessicale del nome di dominio stesso.
  • Infrastruttura di hosting. I provider di hosting bulletproof e specifici ASN (Autonomous System Number) sono sproporzionatamente associati all'infrastruttura malware. Il modello impara quali ambienti di hosting sono correlati all'attività dannosa — non come blocklist, ma come feature ponderata insieme a tutte le altre.
  • Pattern delle richieste. I beacon C2 dei malware tendono a produrre pattern di traffico distintivi: callback a intervalli regolari, payload di piccole dimensioni in entrambe le direzioni, connessioni a infrastrutture prive di contenuti web legittimi. Il classificatore può identificare questi pattern dai metadati del flusso (tempi, dimensioni, direzione) senza ispezionare il contenuto cifrato.
  • Analisi lessicale e strutturale del nome di dominio. I domini DGA hanno alta entropia e bassa pronunciabilità. I domini di phishing imitano marchi noti con sostituzioni di caratteri (paypa1.com, arnazon-security.com). Le feature basate su NLP misurano la distanza di modifica rispetto ai brand noti, le distribuzioni di n-grammi di caratteri e se il dominio segue i pattern strutturali delle registrazioni legittime.

Nessuna singola feature è determinante — molti domini legittimi sono nuovi, usano Let's Encrypt o sono ospitati su infrastrutture condivise. Il compito del classificatore è pesare tutte le feature simultaneamente e produrre un punteggio di rischio. Un dominio nuovo da solo potrebbe ottenere un punteggio di 0.3; un dominio nuovo con un nome simile a un DGA, un certificato Let's Encrypt di 48 ore, ospitato su un ASN noto per abusi, senza contenuti web? Quello ottiene un punteggio di 0.95+.

Come Casper's Cloak utilizza il rilevamento ML a livello di rete

La protezione dalle minacce di Casper opera a livello di risoluzione DNS. Quando il tuo dispositivo effettua una query DNS — qualsiasi app, qualsiasi connessione — la query passa attraverso il resolver di Casper prima che venga restituito un indirizzo IP. Ecco cosa accade nei millisecondi tra query e risposta:

  1. La query DNS arriva al resolver di Casper. Il tuo telefono chiede "qual è l'IP di suspicious-domain.com?" La query viaggia attraverso il tunnel VPN cifrato, quindi nessuno sulla rete locale (WiFi del bar, ISP) può vederla.
  2. Controllo della blocklist statica. Prima di tutto, una ricerca veloce nelle blocklist curate — domini di phishing noti, domini C2 di malware noti, domini tracker noti. Questo è l'equivalente del controllo delle firme: preciso, veloce e limitato alle minacce note. Se c'è una corrispondenza, il dominio viene bloccato immediatamente.
  3. Punteggio del classificatore ML. Se il dominio non è in nessuna lista statica, il classificatore estrae le feature: età del dominio, registrar, metadati del certificato, storico dei record DNS, analisi lessicale, infrastruttura di hosting e pattern di query recenti per questo dominio tra tutti gli utenti Casper (anonimizzati e aggregati). Il modello assegna un punteggio di rischio al dominio.
  4. Decisione basata su soglia. Se il punteggio di rischio supera la soglia configurata, il dominio viene bloccato (il resolver restituisce NXDOMAIN). Se è al di sotto della soglia, viene restituito l'IP legittimo. Punteggi borderline possono attivare un "blocco morbido" — l'utente vede un interstiziale di avviso invece di un blocco definitivo, con l'opzione di procedere.
  5. L'intero processo si completa prima che la connessione venga stabilita. La classificazione avviene al momento della risoluzione DNS — prima dell'handshake TCP, prima della negoziazione TLS, prima che qualsiasi dato venga scambiato. La connessione dannosa non si apre mai.

Questo è ciò che rende il rilevamento ML a livello DNS particolarmente adatto al mobile: protegge ogni app del dispositivo, non richiede scansioni sul dispositivo (il modello gira sulla nostra infrastruttura di resolver), non scarica la batteria e funziona sia su iOS che su Android senza i limiti architetturali che impediscono al tradizionale antivirus di funzionare sul mobile. Abbiamo analizzato in dettaglio il lato phishing in la nostra analisi di tre campagne di phishing reali.

Cosa non fa il ML a livello di rete di Casper: non scansiona i file sul tuo dispositivo. Non ispeziona il contenuto delle connessioni cifrate. Non monitora il comportamento delle app sul dispositivo. Se un file dannoso è già sul tuo dispositivo e comunica solo tramite indirizzo IP (nessuna ricerca DNS), il classificatore DNS di Casper non lo vedrà. Questo è il limite onesto del rilevamento a livello di rete — è estremamente efficace nell'individuare minacce che coinvolgono infrastrutture basate su dominio (che costituisce la grande maggioranza di phishing, distribuzione di malware e comunicazioni C2), ma non sostituisce la sicurezza endpoint sul dispositivo in ambienti enterprise dove attaccanti sofisticati e mirati potrebbero usare canali C2 solo-IP.

Limiti e avvertenze oneste

Il rilevamento di malware basato su ML è un genuino miglioramento rispetto alle sole firme, ma ha limiti reali che qualsiasi discussione onesta deve nominare.

I falsi positivi hanno un costo reale

La classificazione probabilistica significa che il modello a volte contrassegnerà domini legittimi come dannosi. Una startup appena nata con un dominio registrato di recente, un certificato Let's Encrypt e hosting su un provider economico può inciampare nelle stesse feature che caratterizzano l'infrastruttura malware. Il tasso di falsi positivi per un classificatore DNS ben calibrato è tipicamente nell'intervallo 0.01–0.1% — basso in termini percentuali, ma quando si elaborano milioni di query al giorno, anche lo 0.01% significa migliaia di query legittime segnalate. Il lavoro di ingegneria consiste nel calibrare la soglia, costruire meccanismi di allowlisting rapidi e riaddestrare continuamente sui feedback di falsi positivi per abbassare ulteriormente il tasso.

Il machine learning avversariale è una disciplina reale

Gli attaccanti che comprendono i classificatori ML possono progettare la propria infrastruttura per aggirarli — invecchiando i domini prima dell'uso, ottenendo certificati EV, ospitando su provider affidabili, usando nomi di dominio dall'aspetto legittimo. Questo si chiama machine learning avversariale, ed è un'area di ricerca accademica attiva e un vero gioco del gatto e del topo nel mondo reale. Il framework MITRE ATLAS (Adversarial Threat Landscape for AI Systems) cataloga le tecniche di ML avversariale note specificamente per questo dominio.

Il vantaggio del difensore: aggirare una singola feature è facile; aggirare tutte le feature simultaneamente è costoso. Invecchiare un dominio costa tempo (e il tempo è denaro per le campagne di attacco). Ottenere un certificato EV richiede la verifica dell'identità organizzativa. Ospitare su provider affidabili significa accettare i loro processi di risposta agli abusi. Il classificatore ML non ha bisogno che ogni singola feature sia individualmente inattaccabile — ha bisogno che la combinazione sia abbastanza costosa da aggirare che la maggior parte degli attaccanti non si dia la pena, e quelli che ci provano vengono catturati su altre feature o al prossimo ciclo di riaddestramento.

I payload cifrati sono opachi a livello di rete

Il ML a livello di rete vede i metadati — nomi di dominio, attributi del certificato, statistiche di flusso — non il contenuto del payload. Se un payload dannoso viene consegnato tramite HTTPS da un dominio dall'aspetto legittimo (un sito WordPress compromesso, un file dannoso ospitato sullo storage di un grande provider cloud), il classificatore DNS potrebbe non segnalarlo perché le feature del dominio sembrano pulite. Ecco perché il rilevamento a livello di rete complementa ma non sostituisce gli altri livelli: il blocco dei tracker a livello DNS blocca il canale di esfiltrazione dei dati; le protezioni a livello di browser e sistema operativo (Google Safe Browsing, XProtect di Apple) gestiscono il livello di ispezione del payload.

La deriva del modello richiede un riaddestramento continuo

Il panorama delle minacce cambia costantemente. Gli attaccanti cambiano registrar, adottano nuovi provider di hosting, modificano i loro algoritmi di generazione dei domini. Un modello addestrato su dati del 2025 perderà accuratezza nel corso dei mesi se non viene riaddestratto su dati etichettati aggiornati. Il riaddestramento continuo su nuova threat intelligence — più i cicli di feedback dai falsi positivi e negativi in produzione — è essenziale. Un classificatore ML distribuito non è un artefatto "addestralo una volta, spediscilo per sempre"; è un sistema vivente che richiede investimenti continui.

Cosa significa per il tuo telefono

Se stai leggendo questo su un telefono — cosa che statisticamente fa la maggior parte di voi — ecco le implicazioni pratiche:

  • L'antivirus tradizionale non funziona bene sul mobile. iOS non lo consente architetturalmente; su Android scarica la batteria e non riesce comunque a scansionare la maggior parte dei dati delle app. Il modello basato su firme è stato costruito per computer desktop con accesso completo al filesystem.
  • Il rilevamento ML a livello di rete funziona su ogni piattaforma mobile. Non ha bisogno di accesso al filesystem, non deve girare sul dispositivo e protegge ogni app contemporaneamente. Quando il tuo telefono tenta di raggiungere un dominio di phishing, il classificatore a livello DNS lo blocca prima che la connessione si apra — indipendentemente da quale app ha avviato la connessione.
  • La combinazione di blocklist statiche e classificazione ML copre sia le minacce note che quelle sconosciute. Le blocklist intercettano i domini che sono già stati catalogati; il classificatore ML cattura quelli nuovi che non lo sono ancora. Insieme, sono significativamente più efficaci di ciascuno preso singolarmente.
  • Nessun singolo livello copre tutto. Il ML a livello DNS intercetta le minacce basate su dominio (phishing, distribuzione di malware, comunicazioni C2, tracciamento). Non intercetta le minacce ospitate in prima persona o quelle che bypassano completamente il DNS. Un approccio stratificato — Casper a livello di rete, protezioni del browser a livello di contenuto, protezioni del sistema operativo a livello di sistema — offre la copertura più ampia.

Il punto più ampio: il machine learning nella sicurezza non è hype e non è magia. È una specifica disciplina ingegneristica che riconosce pattern nei dati — e per il problema specifico "è probabile che questo dominio sia dannoso?", l'approccio basato sul riconoscimento di pattern supera le liste statiche con un ampio margine, specialmente per le minacce zero-day che le firme non riusciranno mai a intercettare in tempo. La domanda è se i tuoi strumenti di sicurezza lo utilizzano e se sono onesti su cosa coprono e cosa no.


Correlato: SMS di phishing nel 2026 — anatomia di tre campagne mostra il classificatore ML all'opera contro infrastrutture di phishing reali. Protezione dalle minacce è la pagina delle funzionalità per il rilevamento basato su ML di Casper. Blocco dei tracker copre il livello di filtraggio DNS complementare. Per le basi accademiche, il framework MITRE ATLAS cataloga le tecniche di ML avversariale, e il Cybersecurity Framework del NIST fornisce il contesto di gestione del rischio più ampio in cui operano questi sistemi di rilevamento.

Verificato da Casper's Cloak Security Team · Ultimo aggiornamento

Guarda il rilevamento ML delle minacce in azione

Casper's Cloak esegue il classificatore ML a livello DNS descritto sopra — analizzando ogni query DNS dal tuo telefono in tempo reale, bloccando i domini dannosi prima che la connessione si apra. Combinato con blocklist statiche, blocco dei tracker e un tunnel VPN cifrato. Scopri <a href="/features/threat-protection">come funziona la protezione dalle minacce</a> o consulta i <a href="/subscriptions">prezzi</a>.