Effective Pivot Attack Detection via System and Network Information
Il documento presenta Stitch, un sistema basato sull'host che sfrutta kernel programmabili per combinare informazioni di sistema e di rete per il rilevamento in tempo reale, accurato e leggero di attacchi di pivot, superando significativamente le difese esistenti in termini di accuratezza pur mantenendo un tasso di falsi positivi minimo.
Articolo originale sotto licenza CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). Questa è una spiegazione generata dall'IA dell'articolo qui sotto. Non è stata scritta né approvata dagli autori. Per precisione tecnica, consulta l'articolo originale. Leggi il disclaimer completo
Nel mondo digitale, la sicurezza si basa spesso su un'idea semplice: costruire un muro robusto attorno all'interno di una rete e non lasciare che nulla di sospetto passi attraverso. È così che funzionano i firewall e i sistemi di rilevamento delle intrusioni; essi stanno a guardia del perimetro, vigilando sugli attaccanti che cercano di penetrare dall'esterno. Tuttavia, questa strategia presenta un punto cieco. Una volta che un attaccante riesce a ingannare il muro esterno e a compromettere un singolo computer all'interno, non ha bisogno di abbattere nuovamente il muro per raggiungere il suo obiettivo finale. Inveve, può utilizzare quel primo computer compromesso come un trampolino di lancio, o un "pivot", per saltare ad altri computer più protetti nelle profondità della rete. Poiché il traffico che si muove tra questi computer interni appare perfettamente normale e affidabile, esso scivola via indisturbato davanti alle guardie del perimetro. Questa tecnica, nota come pivoting, permette agli attaccanti di muoversi silenziosamente attraverso una rete, rubando dati o diffondendo malware senza mai far scattare gli allarmi progettati per fermarli.
Il problema è che rilevare questo movimento è incredibilmente difficile. I dati che fluiscono tra i computer interni spesso sembrano identici al lavoro legittimo delle persone che li utilizzano. Le soluzioni esistenti per catturare questi attaccanti hanno lottato con un difficile compromesso: sono o troppo lente per essere utili in tempo reale, oppure richiedono che ogni singolo computer in una rete collabori (il che è spesso impossibile negli ambienti moderni e flessibili), oppure generano così tanti falsi allarmi da sopraffare i team di sicurezza, facendo perdere loro di vista le minacce reali. Per risolvere questo problema, dei ricercatori della Dalhousie University e della University of Virginia hanno sviluppato un nuovo sistema chiamato Stitch. Invece di cercare di monitorare l'intera rete da un punto centrale, Stitch vive direttamente sui singoli computer. Agisce come un osservatore locale che osserva come i processi interni di un computer gestiscono il traffico di rete, cercando la firma specifica di un attaccante che usa una macchina per comunicare con un'altra.
L'intuizione fondamentale alla base di Stitch è che, per catturare un pivot, è necessario collegare i puntini tra ciò che entra in un computer e ciò che ne esce, e bisogna sapere quale programma software è responsabile di tale movimento. I metodi precedenti guardavano spesso solo alla tempistica e alla dimensione dei pacchetti di dati, ipotizzando che se due flussi di dati arrivavano e partivano in tempi simili con dimensioni simili, fossero collegati. Questo approccio è fallace perché scambia frequentemente il traffico routinario e innocuo per attacchi, portando a un'ondata di falsi allarmi. Stitch evita questo indovinare utilizzando una tecnologia speciale integrata nel sistema operativo Linux chiamata eBPF. Questa tecnologia consente al sistema di inserire in modo sicuro piccoli programmi personalizzati nel kernel — il cuore del sistema operativo — senza dover rallentare il computer o richiedere il permesso da ogni altro dispositivo sulla rete.
Stitch funziona tracciando la vita di un processo, che è semplicemente un programma in esecuzione, dal momento in cui riceve un pezzo di dati al momento in cui invia un nuovo pezzo di dati in uscita. Quando un pacchetto di dati arriva a un computer, Stitch lo etichetta e lo segue mentre viene passato a un programma specifico. Se quel programma apre poi una nuova connessione per inviare dati altrove, Stitch controlla se la nuova connessione in uscita è collegata alla connessione in entrata originale. Lo fa monitorando le chiamate di sistema — le richieste che un programma fa al sistema operativo — per vedere se lo stesso processo che ha ricevuto i dati è quello che sta inviando i nuovi dati. Se il sistema rileva che un processo sta reindirizzando il traffico da un luogo all'altro, controlla quindi le caratteristiche di quel traffico. Esamina quanto tempo è trascorso tra i dati in entrata e quelli in uscita e quanto sono simili le loro dimensioni.
Per garantire di non dare falsi allarmi, Stitch tiene anche un registro di dove un computer invia solitamente i suoi dati. Se un computer comunica frequentemente con un server specifico per ragioni legittime, come il controllo di un database o la gestione di un account utente, Stitch impara a riconoscere questo come un comportamento normale e lo ignora. Fa scattare l'allarme solo se il modello di traffico sembra un pivot e si dirige verso una destinazione raramente visitata. Questa combinazione di tracciamento del processo software, analisi del flusso di dati e apprendimento delle abitudini normali del computer permette a Stitch di essere altamente accurato. In test utilizzando attacchi simulati, Stitch ha migliorato l'accuratezza del rilevamento di circa il 31 percento rispetto ai migliori metodi esistenti che si basano solo sul tempo e sulla dimensione del traffico. Ancora più importante, ha ridotto il tasso di falsi allarmi a meno di un quinto dello zero per cento, un enorme miglioramento rispetto ai sistemi precedenti che spesso segnalavano il traffico innocuo come pericoloso.
I ricercatori non si sono fermati alle simulazioni. Hanno installato Stitch su server reali all'interno di una grande rete universitaria, che serve migliaia di studenti, docenti e personale. Hanno eseguito il sistema per oltre 80 giorni su un server della facoltà condiviso e su un web server pubblico. Durante questo periodo, il sistema ha monitorato milioni di eventi di rete senza rallentare i server o richiedere modifiche alla configurazione di sicurezza esistente della rete. Sul server della facoltà, il sistema ha identificato con successo tutti gli attacchi di test lanciati dai ricercatori, che consistevano nell'uso di tunnel SSH per spostare dati. Ha generato solo un numero esiguo di falsi allarmi, la maggior parte dei quali causati da compiti amministrativi legittimi come il port forwarding per l'accesso ai database. Sul web server pubblico, il sistema è stato eseguito per 32 giorni senza generare un singolo avviso, confermando che può distinguere tra il normale traffico web e potenziali tentativi di pivoting.
I risultati dimostrano che Stitch offre un modo pratico per difendersi da questi attacchi furtivi senza dover ristrutturare completamente l'infrastruttura di una rete. Funziona indipendentemente su ogni computer, il che significa che non importa se gli altri dispositivi nella rete eseguono software diversi o se la topologia della rete cambia frequentemente. Il sistema è leggero, utilizza meno di 350 megabyte di memoria e aggiunge quasi nessun carico extra al processore del computer. Anche sotto carichi di traffico elevati, ha mantenuto la sua capacità di individuare gli attacchi. I ricercatori hanno scoperto che il sistema può gestire migliaia di nuove connessioni di rete al secondo pur continuando a tracciare accuratamente i percorsi dei dati. Questa efficienza è cruciale perché le reti moderne sono dinamiche e frenetiche; uno strumento di sicurezza troppo pesante o lento sarebbe impraticabile per l'uso nel mondo reale.
Concentrandosi sulla relazione tra i processi software e il traffico di rete, Stitch risolve il problema di distinguere tra un utente legittimo che svolge il proprio lavoro e un attaccante che usa il computer di quell'utente come ponte. Non dipende dalla cooperazione di tutti i dispositivi della rete, né richiede l'archiviazione di enormi quantità di dati storici per trovare modelli. Inveve, osserva il contesto immediato del traffico mentre accade. I ricercatori hanno dimostrato che questo approccio è efficace contro gli strumenti comuni utilizzati dagli attaccanti, come SSH, N nmap e Chisel, che sono frequentemente usati per creare questi tunnel di pivoting. Il sistema ha identificato con successo questi attacchi anche quando erano mascherati all'interno dell'attività di rete normale.
Il lavoro evidenzia anche l'importanza di guardare il quadro generale quando si protegge una rete. Affidarsi esclusivamente al perimetro non è più sufficiente, e affidarsi solo alle statistiche del traffico è troppo incline all'errore. Combinando l'osservazione dei processi di sistema con l'analisi del flusso di rete, Stitch fornisce una visione più completa di ciò che accade all'interno di un computer. I ricercatori intendono rilasciare il codice sorgente del sistema al pubblico, permettendo ad altri di testare e costruire sul loro lavoro. Questa trasparenza è destinata ad aiutare la comunità della sicurezza nel migliorare le difese contro le minacce persistenti avanzate (APT), che sono attacchi sofisticati e a lungo termine spesso lanciati da gruppi organizzati. Il successo di Stitch suggerisce che un passaggio verso il rilevamento basato sull'host e in tempo reale, che comprenda il contesto del traffico, sia una via percorribile e necessaria per la sicurezza della rete.
In definitiva, il documento presenta un sistema che è allo stesso tempo accurato ed efficiente, colmando una lacuna negli attuali strumenti di sicurezza. Dimostra che è possibile rilevare attacchi di pivoting in tempo reale senza generare un'ondata di falsi allarmi o richiedere che l'intera rete cambi il proprio comportamento. La capacità del sistema di operare indipendentemente sugli host individuali lo rende adattabile a vari ambienti, dalle piccole reti d'ufficio alle grandi e complesse infrastrutture universitarie. Le conclusioni suggeriscono che, integrando il tracciamento a livello di sistema con l'analisi di rete, i team di sicurezza possono ottenere una visione molto più chiara delle minacce che si annidano nelle loro reti, consentendo loro di rispondere agli attacchi prima che possano causare danni significativi. Il lavoro è una dimostrazione del fatto che la sicurezza efficace non richiede sempre hardware più complesso o costoso, ma un modo più intelligente di guardare i dati che sono già presenti.
Sommerso dagli articoli nel tuo campo?
Ricevi digest giornalieri degli articoli più recenti corrispondenti alle tue parole chiave di ricerca — con riassunti tecnici, nella tua lingua.