Contenuti

w/arc Intrusion Detection Systems

Una intrusione è il tentativo di abusare di un sistema informatico da parte di qualcuno (hacker, cracker, etc…). Il termine “abuso” ha un significato abbastanza vasto e può riferirsi a una quantità di operazioni che vanno dalla sottrazione di dati confidenziali ali’uso del sistema di email per fare dello spam: in ogni caso si tratta di un uso non autorizzato e spesso nocivo per chi lo subisce.

I Network Analyzer

I Network Analyzer sono dei dispositivi che si occupano di monitorare ed analizzare in tempo reale il traffico di rete, con finalità di individuazione di eventuali inosservanze arbitrarie alla policy, impostata deli’amministratore della sicurezza. Sono molti i tipi di network analyzer, detti anche in senso lato “network sniffer”. La differenza intercorrente tra loro riguarda soprattutto la metodica di analisi e di reporting, nonché il tipo di traffico individuabile.

Gli Intrusion Detection Systems

i’incremento della connettività internet, ha generato un aumento degli attacchi in maniera proporzionale. Implementare dei sistemi capaci di determinare lo svolgersi di questi attacchi, possibilmente senza falsi allarmi, dando inoltre la possibilità ali’amministratore di intervenire prontamente, costituisce i’attività di un’area particolare della ricerca sul networking, i’intrusion detection.

Gli IDS sono da considerarsi un’estensione dei network analyzer. Il loro incarico, infatti, é quello di registrare e segnalare le violazioni (anche sotto forma di tentativo) dei sistemi informativi.

Chiariamo subito una cosa: non si tratta di dispositivi di tipo perimetrale, in altre parole non costituiscono un sostituto di un firewall, di un proxy o di dispositivi della stessa natura. Gli IDS sono delle integrazioni ai firewall, che effettuano un controllo a livello interno, al di qua della rete.

Generalmente si opera una suddivisione degli Intrusion Detection Systems in due famiglie: la prima svolge principalmente opera di auditing, effettuando continue chiamate agli host collegati; la seconda, invece, opera in autonomia, osservando direttamente il traffico sulle reti, e passivamente operando il “solito” packet filtering. É possibile trovare in commercio dei prodotti che uniscano entrambe le metodiche.

i’opera di molti IDS è di tipo “automatic network attack recognition and response system”. In pratica gli IDS vengono installati e fatti “girare” sulla totalità del network o su parti di esso, ove sussista i’esigenza di preservare le informazioni critiche.

Abbiamo detto che il monitoraggio del traffico di dati avviene generalmente sul flusso TCP/IP in transito su infrastrutture Ethernet Based (alcuni produttori si stanno attrezzando per supportare altre tipologie). i’IDS affianca quindi alle funzioni di semplice Network Analyzer quelle di riconoscimento degli attacchi, effettuato generalmente a mezzo di un controllo di firma, un po’ come accade per gli antivirus. In pratica il sistema ha un database degli attacchi, che funge da termine di paragone con il traffico analizzato. Quando viene riconosciuto un attacco, i’Intrusion Detection System può immediatamente fermare il flusso di dati, impedendo che i’attacco provochi dei danni alla rete.

Un IDS che si rispetti deve, inoltre, consentire la registrazione della data, fonte e bersaglio deli’attacco, tipo deli’attacco stesso, nonché registrazione deli’attività intrapresa. Relativamente alla fonte deli’attacco, i’IDS deve implementare funzioni anti spoofing e features collegate. Questo si rivela di grande importanza soprattutto per la prevenzione degli attacchi DDoS (Denial of Service).

Il principio essenziale di funzionamento degli IDS si basa sulla tempestività di intervento. In pratica, una volta scoperto il tentativo di intrusione, il sistema deve avvertire il responsabile della sicurezza aziendale, il quale deve poter prendere, anche da remoto, le decisioni del caso. A tal fine molti IDS possono essere programmati per agire in maniera automatica in caso di intrusioni. E’ possibile che lo stesso sistema possa avvisare circa un attacco in corso, per esempio con un messaggio SMS o un avviso sul cercapersone del security administrator.

In ordine alla potenza di calcolo richiesta, riscontrabile in termini di rallentamento delle prestazioni di tutta la rete, un Intrusion Detection System deve poter consentire la massima rapidità di scansione, quindi la minima domanda in termini di tempi di latenza.

Nonostante ciò venga garantito dalla maggior parte dei produttori, le discussioni degli amministratori sul problema sono soprattutto imperniate su questo argomento.

Perché dotarsi di un IDS?

Se la maggior parte degli attacchi é di provenienza esterna, é pur vero, e inoppugnabile, che le risorse interne male amministrate e controllate possono costituire fonte di grossi problemi. Questo é il motivo principale per cui, a volte, non é sufficiente dotarsi di un firewall per limitare i danni.

Inoltre il firewall può spesso andare in crash o, peggio ancora, essere stato mal configurato. In questo caso é importante avere un prodotto di retroguardia che possa interagire con il sistema perimentrale.

I prodotti più noti

Abbiamo introdotto gli Intrusion Detection Systems come delle estensioni dei normali network analyzers, o meglio come delle soluzioni che consentono il costante monitoraggio della rete, al fine di identificare particolari tipologie di attacchi, eventuali operazioni sospette, nonché violazioni alle policy di sicurezza implementate.

CyberCop é un IDS recentemente rilasciato da Network Associates.

i’installazione di CyberCop non richiede alcuna riconfigurazione della rete, né i’aggiunta di plug in. Come gli altri IDS, CyberCop costuisce uno strato di software aggiuntivo che opera monitorando le porte ed i servizi abilitati dal firewall.

CyberCop si compone di due elementi: il Management server ed i sensori. Questi ultimi vengono collocati sui punti strategici della rete e colloquiano con il management server, comunicandogli tutti gli eventi sospetti. Questi eventi sono inquadrati secondo un set di 170 attacchi differenti. Uno dei progettisti di CyberCop é lo stesso di SATAN, uno dei tool di auditing più noti, disponibile in public domain, forse ancora per poco. I commerciali di Network Associates affermano che ciò rappresenta il vero valore aggiunto di CyberCop.

In caso di tentativo di accesso, il management server avvisa in tempo reale i’amministratore della sicurezza, con un report dettagliato deli’accaduto. I progettisti ritengono che CyberCop può in soli dieci minuti cristallizzare la situazione e dare i’input al security manager per i provvedimenti del caso. La gestione della configurazione di CyberCop, così come la ricetrasmissione dei rapporti di intrusion detection, può avvenire da remoto con una connessione crittografata che parte soltanto previa autenticazione dei soggetti.

Naturalmente tutto il traffico monitorato viene memorizzato su log files, che in qualsiasi momento possono essere consultati dal security manager, sia per tracciare gli attacchi sia per un successivo step in sede giudiziaria.

La configurazione e il posizionamento dei sensori sono semplificati da un set di installazione pre configurato, il quale consente di facilitare le operazioni e di limitare le falle.

**Bro ** é un real time Intrusion Detection System, studiato e sviluppato da Vern Parxon e da altri esperti del Network Research Group deli’ Università di Berkley.

Il codice sorgente di Bro é disponibile public domain; anche per questo motivo, si può affermare che il principio su cui si basa Bro é di stampo decisamente accademico. Con un’interfaccia spartana, indicante un’attenzione maggiore data alla sostanza più che alla GUI, Bro basa la sua operatività sulla velocità di scansione (Fddi Rate), notifica in real time delle violazioni, nonché chiara separazione tra i’engine, la policy impostata e le opzioni di estensibilità.

Bro é suddiviso in varie componenti: i’“event engine” la cui attività consiste nella traduzione del traffico intercettato a livello kernel in eventi di alto livello, e il “policy script interpreter” che si occupa di definire la policy impostata, sempre a mezzo di determinate istruzioni scritte in un linguaggio proprietario. In questo modo, i’amministratore può utilizzare la granularità di questo IDS per adattare il sistema alle sue esigenze. I servizi monitorati in maniera prioritaria da Bro sono: Finger, FTP e il Telnet; inoltre la funzione Portmapper di questa soluzione consente di controllare anche i’attività sulle singole porte.

Iss Realsicure per Windows NT 4.0 di Internet Security Systems é uno degli IDS più conosciuti e venduti sul mercato. Naturalmente non é detto che sia uno dei migliori ma, per le ragioni che andremo a descrivere di seguito, é da considerarsi sicuramente valido.

Il principio operativo di base é quello comune agli altri IDS: monitoraggio del traffico in transito e confronto delle attività con il pattern in dotazione. In caso di matching con quest’ultimo, spedizione deli’alert ed eventuali contromisure automatiche.

i’attività sospetta, documentata con le notizie relative alla cronologia deli’attacco, sorgente e destinazione, più altri dati a scelta, può essere gestita in maniera estremamente dinamica.

Il monitoraggio del traffico é soprattutto di packet filtering: é possibile, infatti, configurare RealSecure per controllare il traffico TCP/IP in tutte le sue accezioni (TCP, UDP, ICMP), porte di partenza e destinazione, Ip address eccetera. Inoltre é possibile controllare il traffico in base ai servizi utilizzati, anche perché il pattern degli attacchi segue, soprattutto, questa ripartizione schematica.

La filosofia che hanno seguito i progettisti di Iss é la seguente: partendo dali’assunto che gran parte degli attacchi proviene dali’interno, i’amministratore ha bisogno di un prodotto che controlli tutto il traffico (non solo quello consentito dal sistema di sicurezza perimetrale). Circa i’attività consentita dal firewall, inoltre, é indispensabile un controllo anche su quest’ultima, in quanto, come poc’anzi ribadito, anche un utente autorizzato può “bucare” un sistema.

Per quanto sopra, la politica di sicurezza impostata da RealSicure ha i seguenti obiettivi:

  • Controllare ed identificare a priori chi può accedere al sistema e chi no;

  • Quali protocolli e/o servizi sono consentiti;

  • Quali nuovi host sono aggiunti alla rete e quali sono i relativi diritti di “colloquio” con il resto deli’infrastruttura.

Partendo da questi presupposti, sono state sviluppate in RealSicure una serie di features, finalizzate, a dire di Iss, alla massima facilitazione del lavoro deli’administrator, nonché alla massima flessibiltà di utilizzo.

Le polemiche suli’efficacia degli IDS

Quanto un IDS può influire sulle prestazioni di una rete? E quanto é realmente efficace? Sono queste le domande che maggiormente si pone il management. In ordine alle richieste di calcolo e di banda bisogna tener presente innanzitutto due particolari: la gestione della centrale e del management devono essere possibile da macchine dedicate. Per questo scopo, per esempio, RealSecure Engine richiede come minimo un P 200 MHz , 32 Mb di Ram, 100 Mb minimo di spazio su disco per i log files ed i database, 10 Mb per il software e una Nic Ethernet che operi in modalità promiscua. Una console di gestione remota, invece, richiede, in caso di IDS funzionanti su sistemi Intel, un P 200, 32 Mb di Ram e 100 Mb di spazio su disco per ogni motore di scansione che gestisce. A parte le previsioni delle case produttrici di questi sistemi circa le risorse minime, un altro fattore da considerare è: con i’avvento (per ora forse un pò lontano) di topologie del tipo GigaBit Ethernet e così via, sistemi di questo genere non costituiranno mica un collo di bottiglia? La domanda é evidentemente retorica, ma non troppo.

Relativamente alla concreta utilità degi IDS, due noti esperti di sicurezza americani, Thomas T Ptacek e Thimoty N Newsham, hanno recentemente sollevato una polemica circa la reale efficacia degli Intrusion Detection Systems.

Sono molti i punti “deboli” di questi tipi di dispositivo, secondo questi studiosi. Tuttavia la maggior parte di questi “talloni d’Achille” risiede nei modelli di analisi.

Vengono infatti presi in considerazione gli IDS “troppo basati” sul metodo della Signature Analisys detta anche “misuse detection”. Viene infatti obiettato che, spesso, vengono implementate policy troppo rigide e vincolate al mero signature matching, in pratica troppo basate su monitoring passivo. Queste possono portare, se si commettono errori in sede di configurazione, anche ad una raffica di falsi allarmi, specialmente quando si usano determinati servizi. A tal fine i due studiosi, che si dichiarano più vicini ad impostazioni di tipo active proxy monitoring, richiedono la massima granularità degli IDS basati su questa metodica. Una cosa va però puntualizzata: come più volte viene ribadito dagli attori di questa costruttiva discussione, evidenziare delle potenziali falle nel modello di analisi ed operativo di un Intrusion Detection System, non significa etichettare questi dispositivi come irrimediabilmente insicuri, anzi. Si tratta di evidenziare una serie di miglioramenti da apportare a prodotti il cui scopo é realmente interessante, al fine di rendere questi sistemi i più sicuri possibili.

Conclusioni

Gli analisti ritengono che i’attuale status tecnologico degli Intrusion Detection Systems sia assimilabile a quello dei firewall di alcuni anni fa, alcuni paragonano gli IDS, viste anche le metodiche di approccio al problema, ai primi antivirus, con tutti i problemi che essi avevano tempo addietro. Forse, e lo sottolineiamo, le soluzioni in commercio sono ancora “immature”. Tuttavia é da ritenersi che prodotti come quelli che abbiamo citato in questo articolo, possano dire la loro, autorevolmente, entro poco tempo, se non addirittura diventare dei punti di riferimento.

Chi abusa del mio sistema?

Fondamentalmente esistono due termini che definiscono gli intrusi di un sistema informatico: hacker e cracker.

Il termine hacker, di cui spesso i media hanno abusato ultimamente, indica colui che entra nei sistemi altrui per divertimento, studio, curiosità o semplicemente per dimostrare di essere in grado di farlo. Nella maggior parte dei casi i’hacker non causa danni al sistema vittima anzi, non sono rari i casi in cui i’hacker descrive agli amministratori dei sistemi violati le tecniche utilizzate e i modi per chiudere i buchi utilizzati. i’intrusione da parte di un hacker è difficile da rilevare e un bravo hacker può rimanere nascosto e in ascolto in un sistema vittima per settimane se non mesi prima di essere scovato.

Il termine cracker, invece, indica colui che viola i sistemi informatici con i’intento ben preciso di provocare un danno (economico, d’immagine, etc…). Esempi classici sono le sostituzioni di pagine web.

Un’altra distinzione da fare è quella fra intrusi esterni ed interni.

  1. Outsiders: sono coloro che operano dali’esterno del network che intendono attaccare. Normalmente gli attacchi portati da queste persone sono limitati alle macchine periferiche del network (web server, mail servers, news servers, etc…).

  2. Insiders: sono coloro che sono autorizzati ali’uso della rete e che cercano di abusarne. Un tipico esempio è quello di un dipendente che ha diritti limitati e che tenta di acquisire privilegi amministrativi. Le statistiche indicano che gli attacchi interni ammontano ali'80% del totale e spesso i danni provocati sono maggiori.