Proteggere i sistemi da minacce esterne
Le misure di sicurezza adottate per proteggere gli host e le informazioni scambiate tra gli utenti sono veramente efficaci solo se nessun sistema e/o flusso di dati critici risulta escluso dall’ambito del controllo.
In caso contrario, un attaccante può compromettere un sistema presente sulla rete aziendale, anche non contenente servizi o dati rilevanti, e utilizzare tale piattaforma come testa di ponte per cercare di violare sistemi più interessanti.
All’aumentare del numero di sistemi interconnessi e di servizi fruiti dagli utenti, la necessità di assicurare copertura completa a ognuno di questi, può risultare un impegno troppo oneroso per l’azienda e soprattutto dar luogo a un costo per la gestione della sicurezza non adeguato al reale rischio a cui si ritiene di essere esposti.
Per ridurre tale costo molte realtà, pur consapevoli che possibili attacchi al sistema possono aver origine anche dall’interno (come nel caso di programmi che girano su host che possono avere ripercussioni negative su dati e servizi attivi sulla stessa piattaforma locale), attivano solo le soluzioni tecnologiche atte ad assicurare adeguata protezione contro le minacce esterne.
Per minaccia esterna si intende quella che può essere portata da soggetti (hacker e/o programmi) che operano a partire da postazioni non appartenenti al target.
Nel caso di utenza domestica la definizione si può riferire ad attaccanti che non agiscono direttamente dal computer locale dell’utente (o tramite agenti ostili installati su di esso).
Tali soggetti possono portare i loro attacchi agendo tramite sistemi propri o di terze parti precedentemente compromessi.
Il fattore comune di tutte le minacce esterne è che la fonte dell’attacco è per definizione esterna alla rete aziendale e ai sistemi informatici che ne fanno parte.
Un attacco di questo tipo deve essere necessariamente portato via rete.
La prima condizione necessaria per bloccare la minaccia esterna è conoscere in che modo i sistemi da proteggere possono entrare in contatto con la minaccia stessa.
Anche se, in molti casi, quando si affronta il progetto per implementare adeguate misure di protezione contro le minacce esterne, si pensa subito agli attacchi condotti via Internet, questi non sono i soli cui occorre prestare attenzione.
Tutte le vie di comunicazione tra sistema controllato dall’attaccante e sistema target devono essere note e adeguatamente controllate se si vuole veramente scongiurare la minaccia.
In linea teorica canali di comunicazione tra attaccante e target possono anche non esistere (per esempio se i sistemi non consentono altra forma di accesso a dati e programmi se non tramite le periferiche locali), di fatto esistono e sono molteplici.
Sono da annoverare tra questi le seguenti vie di accesso:
- accesso alla rete locale tramite collegamenti wireless;
- accesso alla singola stazione o alla rete tramite collegamenti Dial-up;
- accessi dedicati Lan-to-Lan con reti di terze parti “untrusted”;
- accesso via internet pubblica.
In questa lista, la via di accesso a Internet è solo quella che può essere sfruttata dall’attaccante a costo più basso e con maggior semplicità (grazie all’accessibilità alla rete che oramai si registra a livello mondiale).
In passato, per evitare che tale via diventasse un mezzo attraverso cui la minaccia giungeva fin dentro i sistemi aziendali, molte entità hanno preferito rinunciare a collegare la propria rete IP privata a Internet (rinunciando di fatto anche ai servizi che questa metteva a disposizione).
Molte volte tale soluzione è stata abbracciata sperando così di non esporre i propri sistemi ad alcun rischio, ma dimenticandosi delle altre vie di accesso.
Gli incidenti registrati anche da quelle società che hanno a lungo rinunciato ad avere punti di contatto con Internet pubblica, dimostrano che buoni risultati possono essere ottenuti solo inserendo adeguati controlli su tutto il perimetro, senza rinunce, ma soprattutto senza trascurare nessun canale di accesso.
Possono infatti rivelarsi potenziali vie di attacco anche collegamenti che a un primo esame appaiono decisamente meno pericolosi.
Tale elenco deve includere anche i collegamenti geografici esistenti tra rete aziendale e reti di terze parti (esempio fornitori e altri soggetti untrusted).
Vengono generalmente definiti untrusted tutti gli utenti, i computer e i sistemi che non possono essere controllati da specifiche norme (policy di sicurezza) e/o strumenti di controllo imposti dall’azienda.
È infatti corretto non limitarsi a considerare untrusted i soli sistemi controllati direttamente dagli attaccanti.
Ogni qualvolta non si conosce lo stato di aggiornamento dei software per la sicurezza (AV, Personal Firewall, IDS) installati sui sistemi esterni, questi possono rivelarsi minacce, anche se utilizzati da utenti legittimi, ma esterni all’ambito di controllo.
Le stazioni appartenenti a terze parti possono agire in maniera corretta, ma possono anche nascondere pericolose insidie, non note agli stessi utilizzatori.
Le soluzioni tecnologiche per controllare le vie di accesso alla propria rete sono molteplici.
Fino a un recente passato molti addetti ai lavori si sono limitati a implementare controlli sui pacchetti in transito configurando regole restrittive (indicate come Access Control List, o semplicemente ACL) sui dispositivi di rete su cui sono terminati i vari collegamenti.
Questa soluzione, per quanto economica (tutti i dispositivi di rete operanti a livello IP supportano oggi controlli molto flessibili tramite ACL) non rappresenta più lo stato dell’arte.
I controlli che si possono effettuare usando i comuni dispositivi di rete non sempre sono così approfonditi da riuscire a discriminare tra flussi leciti e tentativi di intrusione.
E anche quando l’ispezione condotta sui pacchetti, prima di effettuare l’instradamento è adeguata, l’extra carico di lavoro a cui gli apparati di rete sono soggetti può abbatterne considerevolmente le prestazioni.
Per poter ridurre il numero di falsi negativi e mantenere alte le prestazioni dei dispositivi è decisamente consigliabile provvedere all’attivazione di sistemi dedicati al controllo di quanto transita sui canali di interconnessione tra ambienti interni ed esterni.
Si tratta di dispositivi con la capacità di ispezionare consistenti quantità di pacchetti esaminando tutti i livelli fino a quello applicativo, in grado di supportare meccanismi di autenticazione per stabilire univocamente l’identità di chi richiede l’accesso, provvisti delle funzionalità per controllare i contenuti richiesti dal singolo utente in modo da poter validare puntualmente ognuna delle risorse e dei servizi acceduti.
Dispositivi il cui ruolo e le cui funzioni devono essere ben comprese prima di pensare alla loro configurazione in quanto la complessità del problema richiede innanzitutto di saper progettare la soluzione più adeguata alle proprie esigenze, e non implementare complessi controlli configurando al meglio gli apparati a disposizione.
La scelta delle componenti più idonee per effettuare i vari controlli è generalmente influenzata dal ruolo che assumono i sistemi interni da proteggere.
Le soluzioni adottate per proteggere i propri sistemi, se questi agiscono da semplici client, sono normalmente diverse da quelle che vengono scelte se occorre invece proteggere le piattaforme server.
L’accesso ai servizi e risorse esterne (per esempio disponibili su Internet Pubblica) da parte degli utenti interni può essere regolato sulla base di privilegi che possono essere definiti tramite un sistema informativo aziendale che consenta la creazione e gestione dei profili utente (comunemente indicato come sistema di Identity Access Management, o IAM).
Un sistema IAM deve, non solo provvedere a definire i privilegi puntuali su ciascuna risorsa posseduti dall’utente interno, ma anche permettere di tracciare l’evoluzione di tali diritti, facilitandone l’inserimento e la rimozione quando necessario.
Lo scenario è ben diverso se invece occorre garantire la raggiungibilità di server aziendali da parte di utenza esterna.
In tal caso il canale di comunicazione esistente tra esterno e interno deve poter essere utilizzato per l’accesso ai server da parte di utenti che non sono necessariamente noti all’organizzazione aziendale.
Anche se talvolta è possibile prevedere il completamento di una fase di autenticazione, prima di consentire l’accesso ai server interni esposti, questa non è la norma.
Per tali servizi occorre prevedere soluzioni di controllo in cui non necessariamente è prevista la validazione dell’utente prima di mettere in comunicazione la terza parte con il sistema.
Un’organizzazione che espone un Web server o un Mail Server non può sottoporre ad autenticazione preliminare tutti i soggetti che tentano accessi a tali servizi.
Pertanto può accadere che soggetti malintenzionati provino a far giungere sollecitazioni arbitrarie a tali piattaforme sfruttando il collegamento esistente.
Se gli accessi al servizio sono consentiti in maniera anonima e non vengono bloccati sulla frontiera, le sollecitazioni possono tramutarsi in attacchi.
Il target dell’attacco dell’hacker esterno può anche essere uno dei sistemi che fungono da gateway applicativo verso componenti e informazioni critiche memorizzate all’interno della rete privata.
Tutte le piattaforme esposte (raggiungibili da pacchetti contenenti la minaccia) devono essere pertanto protette da una adeguata sicurezza sistemistica, sia che contengano dati critici, sia che svolgano funzioni di intermediazione/instradamento (proxy server, relay server o router).
Perimetro di una rete
Gli attacchi portati da minacce esterne devono esser veicolati necessariamente via rete.
Per questo ogni entità che oggi prevede di interconnettere la propria infrastruttura ICT con altre reti untrusted (per esempio Internet pubblica) è chiamata ad attivare una soluzione di controllo sui punti di connessione, se vuole che i propri sistemi non siano esposti a simili attacchi.
L’interconnessione ha luogo anche tra reti IP provviste di un piano di indirizzamento privato (come quelle realizzate tramite collegamenti Lan-to-Lan o Dial-up), che non prevedano di transitare da Internet.
L’obiettivo generale è consentire agli utenti di fruire di servizi telematici che in passato non erano accessibili in tale forma (pagamento degli stipendi, servizi di stampa), migliorando l’efficienza e le performance del personale.
Anche quando si tratta di reti IP private di società con cui si ha un contratto di outsourcing, che include specifiche clausole sulla sicurezza, non si può fare eccezioni.
È necessario esercitare adeguate forme di controllo sui pacchetti scambiati con tutti i partner esterni se si vuole scongiurare ogni pericolo.
A differenza del collegamento a Internet pubblica, che magari è uno solo, in azienda possono esistere molteplici punti di interconnessione con altre reti IP private di terze parti.
In un simile scenario non sempre è facile individuare tutti i punti in cui effettuare i controlli perimetrali.
Ancor più complesso è riuscire a determinare quali flussi dati possono attraversarlo.
Lo scarso livello di dettaglio della documentazione disponibile (quando esiste) relativa a come le applicazioni client-server operano sulla rete IP, rende particolarmente complesso risalire all’ordine con cui i pacchetti sono scambiati e al ruolo delle parti coinvolte nel servizio.
Sarebbe decisamente più facile difendere il perimetro se tutti i flussi dati potessero essere preventivamente autenticati, ma in realtà ciò non accade se non molto raramente.
Sarebbe ancor più semplice approntare la propria difesa perimetrale eliminando tutti i punti di scambio.
Ma nell’era dell’onnipresenza delle reti IP, è impossibile non avere scambi di dati con terze parti.
Per questo occorre immaginare il perimetro della propria rete più come un diaframma permeabile che deve lasciar transitare i flussi dati e gli utenti legittimi, tenendo fuori i soggetti non graditi, che come un muro senza aperture.
Accedere in maniera sicura ai diversi servizi telematici e a quelli Internet in particolare, rappresenta un bisogno irrinunciabile per ogni utente legittimo.
In special modo per quelli che devono accedere ai servizi tramite stazioni attestate alla rete aziendale, utilizzate anche per svolgere generiche funzioni di Office Automation e per accedere ai sistemi e alle risorse locali (esecuzione di programmi gestionali, accesso a database privati).
Amministrare in maniera sicura le stazioni presenti in una rete locale comporta un impegno notevole, sia per quanto concerne il tempo direttamente dedicato alla gestione delle singole stazioni, sia per quanti riguarda il tempo dedicato all’aggiornamento del personale sulle nuove problematiche di sicurezza.
Molte realtà cercano di comprimere questi tempi e i costi relativi, scegliendo un unico sistema operativo per tutte le stazioni interne.
Questo approccio, pur riducendo le conoscenze tecniche necessarie per amministrare in maniera corretta le stazioni locali, non è una soluzione accettabile.
Rinunciare in partenza ad avere sistemi eterogenei, all’interno di una stessa rete, può risultare penalizzante per l’organizzazione.
La necessità di salvaguardare gli investimenti effettuati, inoltre, impedisce a un amministratore di abbandonare le piattaforme con sistemi operativi datati, per passare in maniera istantanea a sistemi più moderni.
Generalmente, la transizione da un sistema all’altro è un processo graduale. La conseguenza immediata di questa progressiva evoluzione dei sistemi e dei servizi, è il manifestarsi di uno scenario in cui sulla stessa rete locale coesistono contemporaneamente stazioni con sistemi operativi diversi, chiamate a ricoprire ruoli e fornire servizi profondamente diversi.
Configurare e controllare il livello di sicurezza implementato su ogni stazione di una rete rappresenta un’attività molto dispendiosa.
La consapevolezza che un singolo sbaglio si ripercuota sulla sicurezza dell’intera infrastruttura, rende questo processo un compito decisamente ingrato.
È pienamente comprensibile pertanto il desiderio di ogni amministratore di riuscire a semplificare il problema, puntando ad amministrare l’intero dominio con un approccio globale (come se tutti i sistemi in rete fossero un’unica macroentità), concentrandosi sui controlli e sulle protezioni da sollecitazioni che provengono da avversari esterni al perimetro.
Nell’eventualità che tutte le stazioni appartenenti alla rete godano reciprocamente di massima fiducia, l’Intranet aziendale può essere descritta come un unico dominio di sicurezza.
In tal caso il processo conduce all’individuazione di un unico perimetro di sicurezza. Se all’interno dell’Internet sono invece presenti gruppi di risorse di diversa criticità (postazioni di lavoro, server, database, apparati di rete) può essere preferibile scomporre l’infrastruttura locale in più domini di sicurezza distinti, ciascuno contraddistinto dal proprio perimetro di sicurezza.
Il numero di domini di sicurezza in cui è corretto segmentare la propria rete è il risultato del giusto compromesso tra semplicità di gestione e sicurezza.
Se per le componenti più critiche si può arrivare a delineare un dominio di controllo che comprende un singolo sistema, normalmente non occorre spingersi a tale estremo.
Anche se ciascuna azienda ha esigenze diverse, e quindi può giungere a risultati diversi, una suddivisione che può essere usata come base di partenza è la seguente:
– creare un dominio in cui inserire tutte le piattaforme client fisse
– uno in cui inserire tutte le piattaforme client mobili
– uno in cui inserire tutti i server interni che non hanno bisogno di comunicare con reti esterne
– uno in cui mettere i server che partecipano a servizi esterni
– uno in cui includere tutti gli apparati di rete.
Se l’infrastruttura di rete è stata pensata tenendo conto di queste segregazioni, il numero di punti di accesso risulta sensibilmente minore rispetto al numero di stazioni presenti sull’Intranet.
In questo caso il problema di gestire la sicurezza dell’infrastruttura, bloccando le minacce esterne tramite soluzioni di protezione perimetrale, risulta considerevolmente più semplice che procedere su tutti i singoli sistemi ospitati sulla rete locale.
L’individuazione dei punti di attraversamento sul perimetro di sicurezza può risultare comunque un processo molto complesso.
Il compito è spesso reso difficile da fattori come: la presenza di numerose postazioni mobili dotate di modem; la mancanza di una planimetria dettagliata del cablaggio della rete locale; la scarsa documentazione relativa a linee dati e telefoniche presenti negli edifici oggetto dell’indagine.
Nel seguito, per semplicità immaginiamo di aver previsto la creazione di un unico dominio di sicurezza.
Una volta elencati i sistemi interni al perimetro, delineata la frontiera e determinati i punti di accesso, prima di poter passare a implementare la soluzione per la sicurezza perimetrale, occorre stabilire:
- a quali servizi internet possono accedere gli utenti interni;
- quali stazioni esterne possono essere raggiunte dagli utenti interni;
- a quali servizi residenti su server interni possono accedere gli utenti esterni;
- quali stazioni interne possono essere raggiunte dagli utenti esterni.
La determinazione dei servizi e delle stazioni, che possono comunicare attraverso la frontiera, permette di definire le azioni di controllo da esercitare nei punti di accesso sui flussi informativi in transito.
Per una semplice implementazione della politica di sicurezza, le regole di controllo vengono organizzate in liste di controllo (o ACL), memorizzate sui dispositivi che regolano la trasmissione di pacchetti, lungo la frontiera.
Permettere un servizio significa generalmente lasciar passare i datagrammi IP che trasportano le informazioni relative al protocollo applicativo che ne definisce regole e funzionalità; proibire un servizio significa, invece, bloccare ogni datagramma IP a esso riconducibile.
Se la rete possiede un solo accesso a una stessa rete esterna (per esempio Internet pubblica), il controllo dei dati scambiati è relativamente semplice.
Le cose si complicano se le vie di accesso sono più di una.
Per attivare una soluzione di sicurezza perimetrale efficace, è necessario che tutto il traffico in entrata e in uscita dalla rete sia soggetto agli stessi controlli.
Attività che viene effettuata da dispositivi dedicati, disposti in tutti i punti di accesso individuati lungo il perimetro.
Se esistono più punti di accesso, sorvegliati da dispositivi distinti, è fondamentale che nessun attacco possa essere condotto suddividendo opportunamente i pacchetti tra i vari dispositivi di interconnessione presenti.
Per evitare questo, tutti i dispositivi devono possedere configurazioni allineate (disporre delle stesse ACL).
Spesso la presenza di più dispositivi perimetrali per la stessa interconnessione è dovuta al bisogno di aumentare l’affidabilità del collegamento.
Per poter esercitare un elevato livello di controllo e garantire la continuità del servizio anche in caso di guasto può essere opportuno che ciascun dispositivo sia informato delle sessioni in corso sugli altri apparati.
In questo modo un dispositivo di backup può eventualmente farsi carico di continuare una sessione già instaurata se viene meno il dispositivo principale.
La corretta configurazione e allineamento dei dispositivi di sicurezza perimetrale è il punto centrale dell’implementazione di un perimetro di difesa veramente sicuro.
Il solo approccio possibile per assicurare una protezione ai sistemi interni da attacchi provenienti da hacker esterni.
È bene ricordare che l’attuazione di una soluzione di sicurezza perimetrale non elimina completamente la possibilità che un sistema sia violato da un attaccante.
La distinzione tra minacce interne ed esterne è solo funzionale all’implementazione dei controlli perimetrali.
Anche se oggi è ancora molto diffusa la convinzione che le minacce possono essere solo esterne, identificando il problema degli incidenti informatici come un fattore alieno all’azienda, in realtà non può essere escluso a priori che l’attaccante agisca da un sistema appartenente allo stesso dominio di sicurezza del target.
In tal caso le misure di controllo e monitoraggio esercitate nei punti di accesso alla rete locale non sono di nessun aiuto per bloccare l’attacco.
Una rete locale può risultare popolata di hacker per cause diverse;
- una politica di sicurezza troppo restrittiva, che non viene condivisa e applicata dagli utenti interni (in tal caso è frequente che un utente cerchi di aggirare le restrizioni imposte con sotterfugi che lo trasformano a sua volta in un hacker o che rendono la sua stazione facile preda di hacker esterni); una volta che la stazione interna è sotto il controllo dell’hacker esterno, essa può essere utilizzata per portare attacchi alle altre stazioni, aggirando ogni controllo attivo sulla frontiera;
- interessi personali che trasformano gli utenti interni in hacker, alla caccia di informazioni aziendali riservate da rivendere a terzi (esempio di spionaggio industriale) o da utilizzare per qualche forma di ricatto.
Esistono infine casi in cui hacker interni si sono serviti delle risorse aziendali semplicemente per portare i loro attacchi a stazioni esterne alla rete locale.
Anche se in tal caso la propria rete locale non è l’oggetto finale dell’attacco, l’amministratore della rete è comunque responsabile del controllo delle attività degli altri utenti.
Il presidio sicurezza deve introdurre tutte le misure per prevenire il verificarsi di simili eventi.
La creazione di un perimetro è quindi da considerarsi solo un primo passo, indispensabile per l’implementazione di una corretta politica di sicurezza per una rete locale.
Una componente fondamentale, che si affianca e non sostituisce completamente le altre soluzioni tecnologiche descritte nei precedenti articoli; soluzioni che continuano a essere valide e indispensabili per assicurare un livello di sicurezza complessivo soddisfacente (che preveda adeguate protezioni anche da minacce interne).