Home page

www.gelpi.it

Clusit image

home

area tecnica

articoli

eventi


Antivirus, firewall, VPN, NIDS e SIDS: la parola all'informatico

di Andrea Gelpi

Antivirus, firewall, VPN, IDS: sono gli strumenti più noti per implementare la sicurezza informatica di un sistema informativo.
La sicurezza informatica, però, non si realizza solo attraverso l'utilizzo di un "insieme di strumenti", ma mettendo in piedi un "processo" che, una volta avviato, non deve più fermarsi. E questo perché la tecnologia evolve a un ritmo elevatissimo e uno strumento che oggi offre ottime garanzie di sicurezza, domani può diventare insufficiente. Un esempio che tutti conosciamo è proprio quello dell'antivirus: se non lo si aggiorna su base giornaliera diventa uno strumento obsoleto in pochi giorni.
Oltre agli strumenti, poi, per realizzare una buona sicurezza informatica è necessario non trascurare la formazione di chi opera sul sistema, ovvero di collaboratori e dipendenti dell'azienda. Spesso sono proprio gli utenti a generare molti problemi di sicurezza. Pensiamo ai cosiddetti "troiani", cioè a quei programmi che permettono l'accesso remoto a un PC. In un'azienda è sufficiente che ci sia un solo PC "infettato" da un "troiano" per vanificare misure di sicurezza anche molto costose. Basta un utente un po' distratto o poco informato sulle conseguenze che alcuni comportamenti errati hanno sulla rete, per causare danni all'intera struttura.
La sicurezza informatica è quindi un processo dinamico. Non appena termina un ciclo deve cominciarne subito un altro. Bisogna quindi diffidare da chi propone soluzioni di sicurezza basate solo su strumenti, da chi dice "compri questo prodotto e sei sicuro" e non propone invece l'intervento di personale specializzato che esamina e verifica l'intero processo.
Vediamo ora uno per uno alcuni degli "strumenti di sicurezza" più conosciuti.

I virus

Gli "antivirus", come dice il nome stesso, combattono i virus. Ma che cosa sono esattamente i virus?
Si tratta di programmi dotati di tre caratteristiche fondamentali.
La prima è quella di avere al proprio interno un codice in grado di danneggiare il computer in cui riesce a installarsi. I danni più comuni sono la cancellazione di file e la disattivazione dell'antivirus stesso, mentre più insidiosi sono l'installazione di troiani, cioè di piccoli programmi che consentono di assumere il controllo remoto del PC o di usarlo come sponda per altre attività. Tra queste ultime una delle più note è quella denominata DOS (Denial of Service), ovvero l'invio di informazioni a un determinato server in quantità tali da causarne il blocco.
La seconda caratteristica è quella di essere in grado di generare una copia di se stesso: alcuni virus detti "polimorfi" sono in grado, durante questo processo, di modificarsi in parte, con l'evidente scopo di nascondersi meglio, tentando in questo modo di eludere i controlli degli antivirus.
La terza caratteristica è quella di essere in grado di propagarsi in altri computer. In passato il contagio, avveniva, nella maggioranza dei casi, tramite floppy, strumento in fase di abbandono in quanto sostituito da altri dispositivi (ad esempio le chiavette USB). Il metodo oggi più usato è la trasmissione via posta elettronica come allegato, ma non va dimenticata la trasmissione diretta via rete, molto efficace soprattutto all'interno di una rete aziendale, dove non ci sono generalmente filtri sul traffico. Gli ultimi virus che si trasmettono tramite posta elettronica sono particolarmente insidiosi perché utilizzano messaggi di testo e finti mittenti particolarmente "attraenti", in grado di trarre in inganno molto facilmente.

Gli antivirus

Generalmente sono programmi installati in punti chiave dell'architettura di un'azienda allo scopo di controllare i file in transito sul sistema e di identificare la presenza o meno di virus. Il numero di virus è però molto elevato, dunque per cercare di identificarli tutti l'antivirus utilizza un elenco di impronte virali, ovvero un elenco di elementi che caratterizzano ciascun virus. E' proprio questo elenco che deve essere tenuto aggiornato su base ormai giornaliera, visto che vengono identificati nuovi virus quasi tutti i giorni e che la loro propagazione è ormai velocissima. Inoltre, poiché abbiamo visto che alcuni virus sono in grado di modificarsi (polimorfi), anche gli antivirus devono riuscire a prevedere queste modifiche e a tenerne conto nella loro attività. Il lavoro dell'antivirus è quindi piuttosto complicato e con un numero sempre crescente di impronte da controllare. Non deve quindi stupire il fatto che questi programmi rallenti un pochino il PC sul quale sono installati.
Quando l'antivirus identifica il virus, può fare alcune cose.
La più semplice è informare di aver trovato il virus tramite l'apertura di una finestra sul video dell'utente o inviando un apposito messaggio di posta elettronica.
In aggiunta o in alternativa può tentare di rimuovere il codice maligno dal file in cui è incluso, ma questa operazione non sempre è possibile. Purtroppo esistono virus che non è possibile rimuovere dai file in cui si annidano. In questo caso l'intero file deve essere eliminato. Se il virus non può essere rimosso, l'antivirus può essere configurato o per eliminare l'intero file (operazione radicale, ma un po' pericolosa se il file contiene informazioni importanti) o per memorizzare il file in un'area apposita del sistema detta quarantena. L'utente poi deciderà che cosa fare del file infetto.
La configurazione di un antivirus è quindi di estrema importanza, ma ancora più importante è controllare che lo stesso stia funzionando bene - cioé nel modo in cui è stato configurato - e che, per errore o per colpa di un virus, non venga disattivato.

Dove deve essere posizionato l'antivirus?

Per una maggiore sicurezza dovrebbe stare su ciascun PC, ma assume sempre più importanza quello di tipo perimetrale, posto lungo i "confini" dell'azienda, punti dai quali partono i contatti con il mondo esterno.
Tutta la posta deve sempre essere controllata - sia in arrivo che in partenza - e non solo quella da/per l'esterno. Anche le sessioni di navigazione su Internet devono essere controllate al fine di evitare l'ingresso di virus e troiani.
Dal punto di vista logico, quindi, il posto ideale è subito all'interno del firewall.

Che cos'è un firewall

La parola "firewall" tradotta alla lettera significa "muro di fuoco", anche se la definizione più corretta è quella di "muro" o "porta" tagliafuoco. Lo scopo di tali strumenti, infatti, è proprio quello di filtrare il traffico in entrata e in uscita e di far passare solo il traffico per cui il firewall è stato configurato.
Va, però, subito sfatata una falsa sicurezza: l'avere un firewall non mette al sicuro l'azienda, ne semplifica solo il lavoro, lo "screma". Il firewall "ferma" un certo tipo di traffico, ma quello che passa non è detto che sia sicuro. Un esempio per chiarire il concetto è dato dalla posta elettronica: il firewall lascia passare la posta sia in entrata che in uscita, ma non verifica se alla mail sia allegato o meno un virus. Non è compito suo. Come abbiamo detto precedentemente, questo controllo è affidato dell'antivirus.
Il firewall più semplice è dotato di due interfacce: una esterna - di solito collegata a Internet - e una interna, di solito collegata alla rete locale (figura 1).

Un firewall ben configurato deve lasciar entrare solo il traffico diretto ai server che ospitano servizi visibili su Internet, come ad esempio il server di posta o il sito Web dell'azienda. Il resto deve essere fermato.
Molto importante è anche la configurazione nella direzione opposta, cioè in uscita verso Internet dove si deve lasciar passare solo il traffico proveniente dai server o dai posti di lavoro che devono poter raggiungere Internet. Mi spiego meglio con un esempio: se all'interno di un'azienda esiste un server di posta elettronica e il firewall permette solo a questo l'invio di posta all'esterno, sarà l'unico in grado di ricevere e di spedire posta. Tutti gli altri dovranno rivolgersi al server di posta aziendale. Una semplice configurazione di questo tipo permette, ad esempio, di limitare la propagazione di virus al di fuori dell'azienda (direttamente non potranno uscire) e in ogni caso di identificare rapidamente il posto di lavoro eventualmente infettato.

Come funziona

Per capire il funzionamento di un firewall è necessario dire due parole su che cosa succede quando un posto di lavoro si collega, ad esempio, a un sito Web. Tutte le comunicazioni nel mondo IP avvengono mediante scambio di informazioni tra il chiamante (client) e il chiamato (server). Si tratta quindi di comunicazioni di tipo client/server. Semplificando all'osso, il client si collega al server, chiede di ricevere delle informazioni, il server - se le ha -le invia e il client chiude la comunicazione. Esistono anche altri modi di comunicare, ma non ci interessano in questo contesto. Questo colloquio avviene mediante la trasmissione di messaggi chiamati "pacchetti". Ogni pacchetto ha un'intestazione con dentro specificato mittente, destinatario e altre informazioni utili alla comunicazione. Il firewall analizza proprio queste informazioni contenute nella testata e, in base alle regole di configurazione, decide che cosa fare del pacchetto in esame.
Le principali scelte che il firewall opera sono di due tipi:

- accetta il pacchetto e quindi lo lascia passare
- rifiuta il pacchetto e invia o meno al mittente un messaggio di errore

Abbiamo visto che il firewall più semplice ha due interfacce. Quello più diffuso invece ne usa tre, in quanto, oltre all'interfaccia esterna collegata a Internet e a quella interna collegata alla rete aziendale, ne utilizza, appunto, una terza detta DMZ (DeMilitarized Zone - Zona De Militarizzata) per collegare i server visibili su Internet (figura 2).

Così facendo, il livello di sicurezza aumenta di molto, in quanto viene definitivamente tolta la possibilità di raggiungere direttamente da internet la rete locale aziendale, come invece poteva capitare con il sistema a due vie. Se qualcosa accade a uno dei server esposti su Internet, comunque non si è sulla rete locale dell'azienda, ma su una rete a se stante. La complessità che ne nasce è ampiamente ripagata dal guadagno, in termini di sicurezza, che una configurazione del genere offre. Proseguendo in tale ragionamento, è possibile aggiungere al firewall altre interfacce. Dal punto di vista logico, infatti, non c'è limite al loro numero. I limiti si impongono dal punto di vista hardware, ma soprattutto dipendono dalla complessità che ne nasce. Le regole che configurano un firewall devono tener conto del fatto che ogni pacchetto in arrivo su una certa interfaccia può uscire da una qualsiasi delle altre. E' quindi evidente come la complessità cresca velocemente con il numero delle interfacce. Va aggiunto, inoltre, che se la complessità è elevata, elevato è anche il rischio di commettere errori nella configurazione e quindi di creare potenziali buchi di sicurezza proprio nello strumento che ha come unico scopo quello di creare sicurezza. Nella scrittura delle regole di un firewall, assume grande importanza l'insieme di quelle regole che proteggono il sistema stesso, che, come è facile intuire, diventa elemento cruciale nell'architettura della rete aziendale. Se per un errore di configurazione, o per la mancata tenuta in sicurezza del sistema, qualcuno riesce a entrare nel sistema firewall e a prenderne il controllo, potrà con una certa facilità alterarne le regole e crearsi opportuni e pericolosi canali verso la rete aziendale.
Una caratteristica dei sistemi firewall è quella di poter scrivere da qualche parte informazioni sul traffico che è transitato e, in particolare, sulle scelte adottate dal sistema stesso, in modo da sapere quali connessioni sono state bloccate e quali no.
Stiamo parlando dei famosi file "di log". In essi normalmente si tengono informazioni sulla data e ora dell'evento, sul mittente, sul destinatario (indirizzi IP) e sul tipo di comunicazione, cioè messaggio di posta elettronica, piuttosto che navigazione su sito Web o collegamento a sistema P2P ecc.. E' inoltre possibile memorizzare la quantità di traffico che la sessione ha generato, cioè il numero di byte che sono transitati. Non viene memorizzato il contenuto della comunicazione.
Facendo un paragone con le comunicazioni telefoniche, basta pensare ai tabulati in cui vengono indicate in modo puntuale telefonate, recapiti e durata delle conversazioni.
Anche per i sistemi firewall vale quanto già detto in precedenza: è fondamentale che il sistema venga tenuto aggiornato e monitorato, cioè è necessario, anzi indispensabile, che qualcuno analizzi il contenuto dei file di log, non certo per controllare che cosa fanno gli utenti, cosa vietata da più di una norma, bensì per andare a caccia di eventuali errori di configurazione e per scoprire eventuali problemi che potrebbero sfuggire da controlli eseguiti in altri punti della rete. Se ad esempio un PC ha l'antivirus che non funziona e in questo PC c'è un virus che cerca di propagarsi, opportuni controlli sui log di firewall sono in grado di rivelare la presenza stessa del virus, che altrimenti sarebbe difficile individuare. Inoltre, il monitoraggio del firewall può permette di scoprire in anticipo eventuali tentativi di intrusione nella rete aziendale.

La "Rete privata virtuale"

La sigla VPN sta per Virtual Private Network, ovvero Rete Privata Virtuale.
L'obiettivo di una VPN è quello di realizzare una comunicazione "sicura" tra due punti di una rete che sono già collegati tra loro tramite una rete "non sicura". Qui l'aggettivo "sicuro" ha un'accezione un po' particolare, infatti con esso si intende una rete il cui traffico non può essere analizzato lungo la strada, come invece capita per le reti dette "non sicure". Le comunicazioni sulle reti normalmente transitano "in chiaro", cioè chiunque sia in grado di mettersi lungo il percorso con opportuni strumenti è in grado di ascoltare la comunicazione. Cercando di fare un paragone, è come se qualcuno si "mettesse" lungo il percorso di una telefonata e intercettasse la comunicazione: sentirebbe perfettamente tutto.
La stessa identica cosa capita nelle comunicazioni in rete: è possibile mettersi lungo il percorso e "sniffare" (questo è il termine tecnico) la comunicazione. Nel momento stesso in cui ho necessità che una comunicazione sia "tecnicamente" riservata e che lo resti nel tempo, la strada migliore è quella di utilizzare una VPN. L'esempio forse più semplice è quello delle due sedi aziendali già in collegamento tra loro tramite Internet, in cui entrambe proteggono le proprie reti con dei firewall.
E' evidente che se collego le due reti locali tramite Internet lasciando che il traffico passi in chiaro, chiunque si ponga in mezzo è in grado di ascoltare il traffico e quindi di entrare in possesso di informazioni che dovrebbero invece restare all'interno dell'azienda. La soluzione a questo problema - che in passato stava nell'acquisto di una linea dedicata tra le due sedi - oggi sta nell'utilizzo di una VPN posta sopra la connessione che già esiste: Internet (figura 3).

La cifratura dei dati trasmessi

Come si realizza una VPN? Come si fa a nascondere il contenuto di una comunicazione? Il metodo usato oggi è quello della cifratura dei dati trasmessi, tra i più vecchi che la storia ci ha tramandato.
La cifratura consiste nell'applicare ai dati da cifrare una qualche trasformazione matematica, tale per cui il dato viene reso non più leggibile, cifrato appunto. La trasformazione matematica è composta da un algoritmo (il programma) e da una o più chiavi, che permettono così di ottenere cifrature diverse cambiando solo la chiave. Il punto di forza dei sistemi moderni sta proprio in questo: la sicurezza dipende solo dalla segretezza della chiave. Questo è un elemento molto importante, perché permette di rendere pubblico l'algoritmo, garantendo così la qualità dello stesso (chiunque può verificare la bontà dell'algoritmo). Esistono molti modi per trasformare matematicamente dei dati. Quelli più usati appartengono a due categorie:

- sistemi a chiavi simmetriche
- sistemi a chiavi asimmetriche

Vediamoli brevemente. I sistemi a chiavi simmetriche usano la stessa unica chiave sia per cifrare che per decifrare i dati. Sono sistemi molto veloci, ma risentono del problema che la chiave deve essere nota sia al mittente che al destinatario. La chiave deve quindi essere inviata in modo sicuro al destinatario. E' evidente che se sto cercando di creare un canale sicuro, l'invio della chiave deve avvenire su un canale non sicuro: questo è il punto debole di tali sistemi. Il DES e il 3DES sono forse i più noti sistemi a chiavi simmetriche.
I sistemi a chiavi asimmetriche, invece, utilizzano una coppia di chiavi. Ciò che viene cifrato con una chiave può essere decifrato solo e soltanto con la corrispondente e viceversa. Questi sistemi hanno il pregio che è sufficiente conoscere solo una delle due chiavi per cifrare o decifrare i dati. Le due chiavi vengono infatti chiamate "privata" quella che deve assolutamente rimanere segreta e "pubblica" quella che può tranquillamente essere messa a disposizione di chiunque. Tali sistemi hanno però un limite dovuto alla lentezza dell'operazione di cifratura e decifratura dei dati e sono, dunque, quasi inutilizzabili su una quantità di dati elevata.
La soluzione è quella di usare entrambi i sistemi, usando per la trasmissione dei dati un sistema a chiave simmetrica, che abbiamo visto essere veloce, e usare un sistema a chiave asimmetrica per l'invio della sola chiave usata dal sistema simmetrico. In altre parole, utilizzo il sistema a chiavi asimmetriche per creare un canale sicuro su cui inviare la chiave usata dal sistema simmetrico (figura 4).

Questo è ciò che si fa per realizzare una VPN. I dati vengono cifrati all'ingresso della VPN e decifrati all'altra estremità. Per rendere le cose ulteriormente più sicure il sistema cambia la chiave di cifratura simmetrica periodicamente. I concetti qui esposti per descrivere le VPN sono quelli utilizzati anche nelle sessioni https - quelle sicure, quelle usate per fare e-commerce - che possono essere considerate delle VPN temporanee.

NIDS e SIDS

l termine NIDS sta per Network Intrusion Detection System (Sistema di Rilevamento delle Intrusioni di Rete), mentre SIDS sta per Server Intrusion Detection System (Sistema di Rilevamento delle Intrusioni sui Server). Queste due sigle indicano un insieme di strumenti molto utili per cercare di individuare eventuali intrusioni o tentativi di intrusione sia sulla rete aziendale sia sui singoli server.
I più noti e usati sono sicuramente i NIDS, che, opportunamente piazzati sulla rete, permettono di individuare la maggior parte dei problemi. Per cercare velocemente di capire che cosa fanno questi sistemi, possiamo paragonarli, in un certo senso, agli antivirus, in quanto lavorano al loro stesso livello. Abbiamo visto che il firewall svolge il proprio lavoro a un livello che potremmo definire "basso", mentre l'antivirus entra nel merito di ciò che il firewall ha lasciato passare, ad esempio il messaggio di posta. I sistemi NIDS e SIDS fanno la stessa cosa, entrano nel merito di ciò che passa sulla rete o delle richieste ricevute da un server e se trovano qualche cosa di anomalo lo segnalano. Questi strumenti, se piazzati opportunamente, sono in grado non solo di segnalare tentativi di accesso non autorizzati o non voluti dall'esterno, ma anche anomalie o attacchi provenienti dall'interno. E' utile ricordare che gli attacchi avvengono dall'interno dell'azienda, oltre che dall'esterno, con una frequenza più alta di quello che si pensa. I NIDS funzionano un po' come gli antivirus: "sniffano" un tratto di rete e confrontano ciò che passa con un archivio contenente l'elenco delle violazioni possibili. La differenza con l'antivirus è che questo elenco è configurabile dal sistemista.
Mentre i virus sono tutti dannosi, e quindi devono sempre essere cercati tutti, nel caso di un sistema NIDS non è detto che tutto il traffico che passa sia dannoso. Se, ad esempio, piazzo due di questi sensori in punti diversi della mia rete, devo evitare che la stessa segnalazione mi arrivi da entrambi i sensori. Altro esempio: se non ho un server Web, qualsiasi tentativo di accedervi va segnalato, ma se il server Web esiste, ci sarà del traffico verso di esso perfettamente regolare e il sistema NIDS deve tenerne conto. Quando il sistema NIDS trova qualcosa di potenzialmente anomalo lo segnala a un operatore che valuterà il da farsi.
Molti dei sistemi NIDS, se non tutti, hanno la possibilità di interagire con il firewall, in modo da attuare delle contromisure per fermare o almeno limitare il più possibile i danni di eventuali attacchi. Questa funzionalità, però, è estremamente delicata perché potrebbe trasformarsi facilmente in un boomerang, causando più danni di quelli che si vorrebbero evitare.
I sistemi SIDS operano sul server su cui sono installati e, a differenza dei NIDS, vanno a caccia di richieste che sono perfettamente lecite, sia per il firewall che per il NIDS, ma che invece non lo sono per il server in sé. Un esempio, credo, possa chiarire la cosa. Immaginiamo che a un server Web esposto su Internet arrivino continuamente delle richieste di accesso a un'area riservata con UserID e Password. E' evidente che per il firewall quel traffico è lecito e lo è anche per il NIDS, in quanto si tratta di richieste di autenticazione su un server della rete. E' il SIDS che si accorge che è sempre lo stesso utente che sta provando tante password diverse, cioè che è in corso un attacco al sistema di autenticazione del server stesso. Anche in questo caso il SIDS fa la segnalazione all'operatore, che decide il da farsi.
Anche questi sistemi sono in grado di interfacciarsi con i firewall per prendere contromisure e anche qui vale quanto detto prima sulla delicatezza di tali operazioni. Questi strumenti sono piuttosto complicati da configurare, in quanto se si sbaglia qualche cosa si rischia o di non ricevere segnalazioni importanti o di riceverne in quantità tale da non riuscire a valutarle. Inoltre, essendo strumenti che richiedono un monitoraggio quasi continuo, sono piuttosto impegnativi per un'azienda.

Il backup

Parlando di strumenti di sicurezza, non si può non parlare del backup, cioè di quei sistemi che si preoccupano di copiare le informazioni su altri supporti (ad esempio nastri), per evitare che a fronte di errori, sia umani che dei sistemi informatici, vengano persi dei dati. Questi programmi non sono né complicati né difficili da usare.
Tuttavia si deve porre attenzione a che cosa si salva, quando lo si salva e dove vengono tenuti i supporti con i dati salvati. La bontà di un backup dipende molto, quindi, da aspetti organizzativi più che tecnici. Gli errori commessi dagli operatori nella configurazione sono i più comuni. Come al solito un esempio chiarirà meglio la cosa. Supponiamo di fare backup su nastro e lasciare il nastro inserito nell'unità (la cosa è quasi normale in molti casi). In questo caso mi sono garantito da problemi al disco fisso del server, ma non da problemi al locale dove sta il server. Se il server dovesse prendere fuoco o se il locale si dovesse allagare, anche il backup resterebbe danneggiato.
Scherzosamente, nel mondo informatico si dice che esistono due categorie di persone: quelle che hanno perso dei dati e quelle che li perderanno. Credo che questa battuta evidenzi abbastanza bene la delicatezza dell'operazione di backup, che troppo spesso viene sottovalutata.

Conclusioni

In questa carrellata abbiamo visto i principali strumenti utilizzati al fine di implementare la sicurezza aziendale. Ne esistono altri, più o meno sofisticati, ma credo che i vari "pezzi" di cui abbiamo parlato siano paragonabili a degli orchestrali: ciascuno ha il proprio strumento e la propria partitura da suonare. L'insieme prodotto dall'orchestra è un suono sublime, ma basta che un solo orchestrale commetta un errore, una stonatura, per rovinare l'intera esecuzione.
Gli strumenti che abbiamo illustrato devono essere ben configurati e basta un solo errore, anche banale, per minare, a volte anche gravemente, l'intera opera di sicurezza, proprio come accade in un'orchestra. E come nell'orchestra serve il direttore, che controlli che nessuno stoni o vada fuori tempo, anche per la gestione di tutti gli strumenti di sicurezza serve una regia, cioè un progetto ben fatto e pensato, possibilmente prima di imbattersi nei vari problemi. Nel mondo della sicurezza informatica, ma credo anche in altri settori, curare costa più che prevenire.

Pubblicato sulla rivista Sicurezza numero 2/2004 pag. 76

Copyright rivista Sicurezza Gruppo Editoriale JCE



copyfree/privacy

contatto

curriculum


Ultimo aggiornamento il 14 August 2018 20:18:31.