Ogni prodotto che si definisce «rilevamento avanzato delle minacce» per il Mac è costruito su un numero ridotto di meccanismi, per lo più documentati da Apple. Sapere su quale meccanismo si basa una certa funzione dice cosa può vedere davvero e a cosa è cieca. Questo articolo esamina quei livelli uno per uno: cos’è una firma, cosa verifica la notarizzazione, cosa il framework Endpoint Security di Apple espone al software di sicurezza, cosa significa in pratica l’analisi comportamentale e cosa un modello che osserva le connessioni di rete può e non può giudicare.
La versione breve è che nessun livello, da solo, vede tutto. Uno scanner di file non vede mai una connessione. Un monitor di rete non vede mai un file. I prodotti che sono onesti su questo confine sono più utili di quelli che lo confondono.
Livello uno: le firme (XProtect)
La tecnica di rilevamento più antica è la firma: uno schema che corrisponde a un pezzo noto di software malevolo. Sul Mac questo compito spetta a XProtect. La Guida alla sicurezza delle piattaforme Apple, nella pagina Protezione dal malware, descrive XProtect come basato su firme e spiega che entra in azione in tre momenti: al primo avvio di un’app, quando un’app è stata modificata su disco e quando le firme di XProtect vengono aggiornate.
Apple è schietta sulla portata di questo approccio. La stessa pagina osserva che le regole di XProtect sono «più generiche di un hash di file specifico, quindi possono trovare varianti che Apple non ha ancora visto», e descrive un motore di correzione che rimuove le infezioni a posteriori. Ciò che una firma non può fare, per costruzione, è riconoscere qualcosa per cui nessuno ha ancora scritto una regola. È questa la lacuna che ogni altro livello esiste per ridurre.
Livello due: notarizzazione e Gatekeeper
Il secondo livello agisce prima che un’app venga aperta per la prima volta. La pagina di Apple su Gatekeeper e protezione runtime spiega che Gatekeeper verifica che un’app scaricata provenga da uno sviluppatore identificato, sia stata notarizzata da Apple e non sia stata alterata, e che chiede l’approvazione dell’utente prima di aprire software scaricato. La notarizzazione in sé è una scansione che Apple esegue sul software firmato con Developer ID prima della distribuzione; la guida di Apple aggiunge che in seguito può emettere un ticket di revoca per software risultato malevolo, anche se in precedenza era stato approvato.
Questo livello è un controllo alla porta. Risponde alla domanda «sappiamo chi ha costruito questa app, e Apple ci ha trovato qualcosa di palesemente sbagliato?». Non segue l’app una volta che è dentro. Un’app che supera la porta e poi si comporta male, o un’app il cui comportamento cambia dopo un aggiornamento, da quel momento è fuori dalla vista di Gatekeeper.
Livello tre: il framework Endpoint Security
I prodotti di rilevamento di terze parti per il Mac, la categoria di solito chiamata EDR (endpoint detection and response), sono in gran parte costruiti su un’unica API Apple: il framework Endpoint Security. Apple lo ha introdotto in macOS 10.15 perché il software di sicurezza potesse ricevere un flusso di eventi di sistema dallo spazio utente (un processo che viene avviato, un file aperto o scritto, un task creato) invece di caricare un’estensione del kernel, che Apple sta progressivamente eliminando.
È questo il livello che vede gli alberi dei processi: quale processo ha generato quale, con quali argomenti, toccando quali file. È anche il livello in cui di solito risiede l’«analisi comportamentale». Il rilevamento comportamentale consiste nel confrontare ciò che fa un processo con le tecniche note degli attaccanti, anziché con un file noto. Il riferimento pubblico per quelle tecniche è la matrice MITRE ATT&CK per macOS, che cataloga le tattiche dall’accesso iniziale e dalla persistenza fino al comando e controllo e all’esfiltrazione, ciascuna suddivisa in tecniche specifiche e osservabili.
L’analisi comportamentale ha un costo reale: un’app che per motivi legittimi scrive launch agent, legge il portachiavi o avvia comandi di shell, vista dal solo flusso di eventi, somiglia molto a una che lo fa per cattivi motivi. Ogni fornitore di EDR regola quel compromesso in modo diverso, e nessuno pubblica abbastanza dettagli perché un esterno possa confrontarli. Quello che si può dire con certezza è che questo livello richiede un prodotto a pagamento o una buona dose di competenza per essere gestito. Per i privati, la Objective-See Foundation, organizzazione senza scopo di lucro, pubblica strumenti gratuiti e open source costruiti sugli stessi framework Apple, come TaskExplorer per ispezionare i processi in esecuzione e KnockKnock per elencare ciò che è impostato per avviarsi automaticamente.
Livello quattro: memoria e contenuto dei file
Due tipi di analisi si collocano ancora più in basso del livello Endpoint Security: l’ispezione approfondita del contenuto di un file (analisi statica, cioè quello che fa uno scanner antivirus) e l’ispezione della memoria di un processo in esecuzione. Sono gli unici modi per sapere cosa contiene davvero un programma, e sono il dominio degli strumenti antivirus e forensi. Vale la pena dirlo chiaramente, perché i testi di marketing spesso lasciano intendere il contrario: un firewall, FireAI compreso, non fa niente di tutto questo. FireAI non scansiona i file, non legge la memoria dei processi e non è un antivirus.
Livello cinque: la rete
L’ultimo livello è quello che gli altri non possono raggiungere. Quasi tutto ciò che un attaccante vuole fare dopo aver portato del codice su un Mac passa per la rete: scaricare una seconda fase, presentarsi a un server di controllo, inviare all’esterno i dati rubati. Nella matrice ATT&CK questi passaggi hanno colonne proprie, comando e controllo ed esfiltrazione, proprio perché sono una fase distinta e osservabile.
Un livello di rete vede un insieme di fatti diverso da quello dei livelli precedenti. Per ogni nuova connessione in uscita conosce il binario firmato che l’ha aperta, l’host di destinazione, l’IP e la porta, il protocollo, se la connessione è cifrata e il momento in cui avviene. Tanto basta perché un revisore, umano o modello, possa formulare diversi giudizi utili:
- Reputazione della destinazione: l’host o l’IP compare in una lista di blocco pubblica come abuse.ch, Spamhaus, Phishing Army o OpenPhish, oppure è un nodo di uscita Tor? I feed di threat intelligence sono una consultazione in una lista, non un’ipotesi, e possono essere applicati localmente senza inviare il traffico da nessuna parte.
- Binario visto per la prima volta: è la prima volta che questa firma di codice apre una connessione su questo Mac? Uno strumento appena installato e non firmato che si collega subito a un IP sconosciuto è un rischio diverso da Safari che si collega a una CDN.
- Anomalie di porta e protocollo: un editor di testo che parla sulla porta 4444, un’app che usa indirizzi IP grezzi invece di nomi host, o una connessione verso un paese in cui l’app non ha nulla da fare.
- Credenziali in HTTP non cifrato: se una connessione non è cifrata, il contenuto è leggibile sul Mac prima che esca, e un numero di carta, una password o una chiave API in chiaro può essere fermata in quel preciso istante.
È questo che fa la verifica Private AI di FireAI. Un piccolo modello sul dispositivo (un download opzionale di 1,5 GB) esamina ogni connessione di un’app sconosciuta usando esattamente i fatti elencati sopra, e la blocca, la segnala o la lascia passare con una motivazione in linguaggio semplice che si può leggere e annullare. Il giudizio viene formulato sul Mac; il traffico non viene mai inviato a HisnLabs né a nessun altro per l’analisi.
I limiti sono altrettanto concreti. Un revisore di rete non può vedere il contenuto dei file, quindi non può dire che un download è ostile prima che venga eseguito. Non può vedere la memoria, quindi non può rilevare un payload iniettato in un processo affidabile, e se del codice ostile si nasconde dietro un’app firmata e consentita, il suo traffico eredita i permessi di quell’app. Non può decifrare TLS, quindi per una connessione cifrata giudica la destinazione e lo schema, non il contenuto. E un feed di reputazione conosce solo le destinazioni che qualcuno ha già segnalato.
Mettere insieme i livelli
Letto come una pila, il quadro è coerente. Notarizzazione e Gatekeeper decidono se il codice entra. XProtect rimuove ciò che è già noto come dannoso. Gli strumenti basati su Endpoint Security osservano cosa fanno i processi. Antivirus e analisi forense leggono il contenuto dei file e la memoria. Il livello di rete osserva ciò che esce. Ciascuno risponde a una domanda a cui gli altri non possono rispondere, e il test utile per qualsiasi affermazione di «rilevamento avanzato» è semplicemente: quale di questi livelli è, e cosa vede quel livello?
Questo spiega anche perché i livelli non sono in concorrenza. Un prodotto EDR e un firewall per app possono girare sullo stesso Mac senza mai guardare lo stesso fatto: uno legge l’albero dei processi, l’altro legge la tabella delle connessioni. Un’azienda che già paga per il rilevamento sugli endpoint guadagna poco da un secondo monitor dei processi, ma può guadagnare molto dal poter dire, per app e per destinazione, cosa è autorizzato a uscire. Un utente domestico senza alcun EDR ottiene, dal solo livello di rete, l’unico segnale che i livelli di Apple non mostrano mai.
Per la maggior parte dei proprietari di un Mac, la combinazione pratica è: i livelli integrati di Apple, tenuti aggiornati, più la visibilità sull’unica fase che Apple non mostra, cioè quali app si connettono e dove. È una promessa più modesta di «ferma ogni minaccia», ed è quella che si può davvero mantenere.
Il ruolo di FireAI e di HisnLabs
FireAI is the network layer of that stack and nothing more: it does not scan files or read memory, but it is the one place every app’s outbound connection has to pass through, reviewed on your Mac by a model that explains what it saw.
FireAI è il prodotto di HisnLabs: un firewall con IA che funziona direttamente sul Mac. Mostra in linguaggio chiaro ogni connessione che le tue app effettuano e ti lascia decidere cosa esce dal tuo Mac — la sua IA lavora in locale, quindi il tuo traffico non viene mai inviato a noi né a nessun altro. Il team di ricerca sulla sicurezza di HisnLabs è quello che mantiene affidabili queste decisioni: cataloga quali domini sono semplice telemetria e quali un servizio reale, traccia il Paese e la rete dietro una connessione e addestra il modello locale (la funzione Autopilot) su schemi di traffico reali, senza che nulla lasci il tuo Mac.
Puoi leggere le scelte tecniche che ci stanno dietro, oppure provare FireAI per 17 giorni, su FireAI, di HisnLabs.
