Il blog sulla sicurezza di FireAI

Di FireAI Security & Research Team · Pubblicato

Perché un firewall con IA è indispensabile su Mac

Perché un firewall con IA è indispensabile su Mac

La maggior parte di chi possiede un Mac crede che la propria macchina arrivi con un firewall funzionante. Ed è così, nel senso stretto che Apple documenta: un filtro che, nelle parole di Apple, ti protegge dai «contatti indesiderati avviati da altri computer quando sei connesso a internet o a una rete». Quella frase è tutta la storia, e vale la pena leggerla due volte. Il firewall integrato in macOS riguarda le connessioni che arrivano al tuo Mac. Non dice nulla su ciò che il tuo Mac invia all’esterno.

Questo articolo parla di quella seconda metà: la falla in uscita, perché conta più di un tempo, cos’è davvero un firewall in uscita moderno per macOS e dove un revisore IA locale aiuta davvero. Parla anche, deliberatamente, dei limiti di questo approccio. HisnLabs produce FireAI, un firewall con IA per Mac, quindi abbiamo un interesse evidente; il modo in cui restiamo onesti è citare la fonte di ogni affermazione ed essere altrettanto chiari su ciò che un firewall non può fare quanto su ciò che può fare.

Cosa fa il firewall di Apple, e cosa non fa

Il Manuale utente di macOS di Apple colloca il firewall in Impostazioni di Sistema, nella sezione Rete. La guida alla sicurezza della piattaforma descrive cosa controlla la funzione: può bloccare tutte le connessioni in entrata a prescindere dall’app, consentire automaticamente al software integrato e firmato di accettare connessioni in entrata, consentire o negare l’accesso in entrata ad app specifiche che indichi tu, e abilitare la modalità invisibile, che impedisce al Mac di rispondere a sonde ICMP e scansioni delle porte. Ognuna di queste opzioni riguarda il traffico che entra.

È inoltre un’impostazione che Apple ti chiede di attivare. Il Manuale utente è scritto come istruzioni per attivare la protezione del firewall, non come descrizione di qualcosa che è già in funzione; se non hai mai aperto quel pannello, vale la pena controllarlo oggi. E anche una volta attivo, il design resta solo in entrata. La guida alla sicurezza di Apple non menziona affatto il filtraggio delle connessioni in uscita, perché semplicemente non è a questo che serve la funzione.

Niente di tutto ciò è una critica ad Apple. Un filtro in entrata è il primo livello giusto: chiude la porta agli sconosciuti che bussano dalla rete. Ma su un portatile che passa la giornata tra il Wi-Fi di casa, le reti dell’ufficio e i bar, la maggior parte del rischio oggi viene da software che è già dentro e ha il permesso di parlare con l’esterno.

La falla: nessuno guarda cosa esce

Considera cosa gira davvero su un Mac di lavoro: le app che hai installato, i processi ausiliari che generano, le utility della barra dei menu, i controlli di aggiornamento, le estensioni del browser, qualche strumento a riga di comando preso da un tutorial che hai seguito una volta. Ognuno di questi può aprire una connessione verso qualsiasi server su internet, e macOS glielo permetterà. Il firewall in entrata non viene consultato, perché la connessione parte dalla tua parte.

È così che la telemetria ordinaria lascia la macchina, che un’app per le note sincronizza in silenzio con un server a cui non hai mai acconsentito, e che uno strumento per il furto di credenziali, una volta riuscito a eseguirsi, manda a casa ciò che ha raccolto. Le difese di Apple contro i programmi dannosi, Gatekeeper, la notarizzazione e XProtect, agiscono nel punto in cui il software viene scaricato e avviato, e la guida alla sicurezza della piattaforma di Apple è esplicita nel dire che XProtect «analizza solo le app che sono state modificate o le app al primo avvio» usando regole basate su firme. Quei livelli sono preziosi; sono anche muti riguardo alla rete. Se qualcosa li supera, o è semplicemente un’app ordinaria che si comporta male, l’unico posto rimasto per intercettarla è il momento in cui prova a connettersi.

Cos’è davvero un firewall in uscita su macOS

Sul macOS attuale, un firewall di terze parti non modifica il kernel. La documentazione per sviluppatori di Apple descrive estensioni di sistema che girano nello spazio utente e possono essere distribuite come estensioni di rete, inclusi i filtri di contenuto. Un filtro di contenuto vede ogni flusso di rete, insieme al processo che lo ha aperto, e risponde a una sola domanda: consentire o scartare. Poiché gira come estensione di sistema, macOS richiede che tu la approvi in Impostazioni di Sistema prima che possa fare qualsiasi cosa, e dallo stesso punto puoi disattivarla di nuovo.

È questa architettura a rendere possibili le regole per app. Una regola può stabilire che una certa app possa raggiungere un dominio e nient’altro, che non possa mai usare una certa porta, o che non possa connettersi affatto. Gli strumenti migliori legano queste regole alla firma del codice dell’app anziché al suo nome file, così un binario rinominato o sostituito non eredita permessi che non gli sono mai stati dati. FireAI funziona così: le regole seguono la firma dell’app, e puoi consentire o negare per host, dominio, indirizzo IP o porta.

Dove un revisore IA locale aiuta

Il problema classico dei firewall in uscita non è la capacità ma l’attenzione. La prima settimana con uno strumento che chiede a ogni connessione è un muro di finestre di dialogo, e la maggior parte delle persone o clicca Consenti su tutto o lo disinstalla. Le regole risolvono questo per le app che conosci. Non fanno nulla per l’app che hai installato dieci minuti fa, che è esattamente quella con cui dovresti fare attenzione.

È questo il compito ristretto per cui un revisore IA è adatto. In FireAI, un piccolo modello che gira sul tuo Mac esamina le connessioni delle app che non hanno ancora una regola. Guarda ciò che può legittimamente vedere: quale app sta chiedendo, se è firmata e da chi, l’host e la porta di destinazione, se quella destinazione compare in un feed di minacce, e come la richiesta si confronta con ciò che software simile fa normalmente. Poi blocca o segnala la connessione e scrive la sua motivazione in linguaggio chiaro, così l’avviso che vedi dice qualcosa come «una utility non firmata sta cercando di raggiungere un indirizzo IP grezzo su una porta insolita» invece di un semplice nome host.

Due scelte di progettazione contano più del modello stesso. Primo, la revisione avviene sul dispositivo. Il modello di FireAI è un download opzionale di circa 1,5 GB, e dopo di che il tuo traffico non viene mai inviato da nessuna parte per l’analisi; un firewall che caricasse i metadati delle tue connessioni su un servizio cloud per decidere se sono sicure creerebbe proprio la fuga che afferma di prevenire. Secondo, ogni decisione dell’IA diventa una regola visibile che puoi annullare. Il modello è un assistente che abbozza una decisione; resti tu a firmarla.

Cosa non può fare

  • Non può leggere dentro il traffico cifrato. Quasi tutte le connessioni usano TLS, quindi un revisore vede l’app, la destinazione e la forma della connessione, non il contenuto. Basta per giudicare se un’app dovrebbe parlare con un certo posto; non basta per sapere cosa ha detto.
  • Non può conoscere le tue intenzioni. Se hai installato di proposito uno strumento di condivisione dello schermo, la sua connessione a un server di inoltro va bene; la stessa connessione da un’app che non riconosci non va bene. Il revisore ti dà il contesto per prendere quella decisione in fretta. Non la prende al posto tuo nel senso di avere sempre ragione, ed è per questo che esiste l’annullamento.
  • Non è un antivirus. FireAI non analizza i file, non esamina i processi in memoria, non rimuove nulla dal disco e non decifra i file dopo un incidente ransomware. Sta al confine della rete, e nient’altro.
  • Non può fermare un programma che non usa mai la rete. Uno strumento che corrompe solo file locali, o che aspetta offline, è invisibile a qualsiasi firewall. È l’argomento più forte per mantenere Gatekeeper, XProtect e gli aggiornamenti di sistema invece di sostituirli.

Feed di minacce: la parte che non è IA, e non ha bisogno di esserlo

Gran parte di ciò che le persone si aspettano da un firewall «intelligente» è in realtà confronto con liste, e le liste vanno benissimo. Progetti come abuse.ch, che pubblica URLhaus, ThreatFox e la SSL Blacklist come intelligence sulle minacce guidata dalla comunità, e lo Spamhaus Project, la cui lista DROP indica intervalli di rete che non dovrebbero essere instradati né avere peering, mantengono dati pubblici sulle infrastrutture usate per abusi. FireAI può applicare i feed di abuse.ch, Spamhaus, Phishing Army, OpenPhish, FireHOL e la lista dei nodi di uscita Tor come blocklist di IP a livello di sistema, aggiornate e confrontate localmente sul tuo Mac.

Vale la pena tenere chiara la distinzione. Un feed risponde a «questa destinazione è già nota come pericolosa?». Il modello locale risponde a «questa connessione sembra sbagliata per questa app, anche se nessuno ha ancora segnalato la destinazione?». Vuoi entrambi, e vuoi che nessuno dei due richieda di inviare il tuo traffico a terzi.

Prestazioni, privacy e il prezzo del modello

Un filtro di contenuto aggiunge una decisione a ogni nuovo flusso, non a ogni pacchetto, quindi la navigazione quotidiana non sembra diversa una volta che le tue app abituali hanno le loro regole. Il modello locale è il componente più pesante, ed è per questo che FireAI lo tiene opzionale: firewall, regole, avvisi, blocklist e feed funzionano tutti senza di esso, e scarichi il modello solo se vuoi il revisore. FireAI richiede macOS 14 o successivo su un Mac con Apple Silicon; non c’è ancora una versione Intel, anche se è in programma.

Mac di casa e Mac aziendali

A casa, il valore è soprattutto consapevolezza: vedere, sulla mappa del mondo in tempo reale di FireAI, dove si connettono le tue app e fermare quelle che non hanno alcun motivo di farlo. Le modalità di sicurezza lo rendono pratico: Casa è permissiva, Bar stringe le maglie sulle reti condivise, Paranoico e Sotto attacco bloccano telemetria, tracker e app non firmate, e un kill switch taglia l’accesso a internet mantenendo la rete locale. Puoi anche digitare un ordine in inglese o in francese, per esempio «block Microsoft Teams», invece di cercare in una lista di regole.

In una piccola azienda, le funzioni utili sono quelle noiose: una protezione dei dati non cifrati che impedisce a numeri di carta, password e chiavi API di uscire su HTTP in chiaro, e file di regole che puoi esportare come testo leggibile e importare su ogni Mac in modo che ogni macchina parta dalla stessa policy. FireAI non ha ancora una console di amministrazione centrale né una guida al deployment via MDM; entrambe sono nella roadmap, e i file di regole sono la risposta onesta di oggi.

Per iniziare

Attiva prima il firewall di Apple in Impostazioni di Sistema; è gratuito e chiude il lato in entrata. Poi aggiungi un firewall in uscita, che sia FireAI o un altro tra i diversi strumenti seri per macOS, approva la sua estensione di rete quando macOS lo chiede, e dagli una settimana. Rispondi agli avvisi per le app che riconosci, lascia che le regole si costruiscano, e leggi le motivazioni che il revisore ti dà per le app che non riconosci. Dopo quella prima settimana il Mac diventa silenzioso, e ogni connessione che genera ancora un avviso è una di cui volevi davvero sapere.

Il ruolo di FireAI e di HisnLabs

Everything above is the reasoning behind FireAI: an outbound firewall for Apple silicon Macs whose reviewer runs on your own machine, explains itself in plain language, and can be overruled by you at any time.

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.

Fonti