Bibliografia:
Computer Networking. Autori: James F. Kurose (University of Massachusetts, Amherst) Keith W. Ross (Polytechnic Institute of NYU).

Sicurezza dei sistemi informatici

Una rete aziendale, connessa alla rete pubblica, è esposta ad attacchi alla sicurezza che possono provenire sia da utenti interni alla rete aziendale, sia da utenti che usano la rete pubblica.

Rischi interni

Gli attacchi che hanno origine dall'interno della rete stessa possono essere particolarmente gravi, per le seguenti ragioni:

Rischi esterni

Un attaccante esterno alla rete aziendale, non dovrebbe avere nessuna conoscenza della rete e non dovrebbe avere nemmeno le credenziali di accesso, deve possedere però le conoscenze tecniche che gli consentono di studiare la rete. Ad esempio, chi intende attaccare una rete ha bisogno di conoscere gli indirizzi dei computer della rete e dei servizi che essi offrono. Queste informazioni può ottenerle generando una sequenza di ping e osservando gli indirizzi dai quali riceve la risposta. Dopo avere ottenuto l'elenco degli indirizzi IP della rete, per ogni host, l'attaccante esegue una scansione delle porte alla ricerca dei servizi disponibili. Quando l'attaccante scopre che su un host è disponibile un servizio, del quale ` nota una vulnerabilità, può sfruttare quel servizio per acquisire il controllo dell'host e attaccare anche ad altri host della rete.

Scopi della sicurezza delle reti

La sicurezza deve garantire che i dati siano:

Quando i dati viaggiano in rete, inoltre, è richiesta l'autenticazione delle parti in comunicazione. Il mittente ed il ricevitore devono essere in grado di confermare reciprocamente la loro identità, nel senso che entrambi devono essere sicuri di scambiare dati con chi realmente dichiara di trovarsi all'altro estremo della comunicazione. Sulla rete non si può essere sicuri di sapere con chi si stanno scambiando dati.

Alcune semplici norme di prevenzione sono:

Ci sono varie tecniche per consentire l'accesso ad un computer solo a personale autorizzato, per esempio usando smart card o misure di sicurezza biometriche (tecniche di autenticazione basate su caratteristiche fisiche come: impronte digitali, scansione della retina o analisi della voce).

Vulnerabilità

Una vulnerabilità in un sistema informativo è una debolezza che un utente malintenzionato potrebbe sfruttare per ottenere accesso non autorizzato al sistema o ai suoi dati. In alcuni casi, dopo avere scoperto una vulnerabilità, l'aggressore scrive un programma per sfruttare questa occasione di accesso al sistema o ai dati. questo tipo di programma maligno si chiama un exploit.

Tuttavia, anche se un sistema ha una vulnerabilità, bisognerebbe quantificare la probabilità che qualcuno possa sfruttarla per causare danni. Ad esempio, un Data Center potrebbe essere vulnerabile ad un incendio nell'edificio. Ma se il Data Center ha sistemi antincendio avanzati e supporti di backup ubicati in un altro edificio, il rischio per i dati viene ridotto.

definizione di rischio

Il rischio si può quantificare come il prodotto tra la gravità delle conseguenze di un evento e la probabilità che l'evento si verifichi: R=GxP.

La gravità delle conseguenze normalmente si può esprimere in termini di danno economico subito dall'azienda.

La probabilità che l'evento si verifichi dipende dalla vulnerabilità del sistema e, per minacce di tipo deliberato dalla motivazione dell'attaccante, mentre per minacce di tipo accidentale dalla probabilità intrinseca che l'evento accada.

La gestione del rischio si effettua attraverso modalità che prevedono l'eliminazione o la riduzione di una o di entrambe le variabili, attraverso l'utilizzo di contromisure di sicurezza.

Il rischio può essere gestito anche cedendolo a terzi (stipulando polizze di assicurazione).

Tipi di vulnerabilità

Gli errori umani sono vulnerabilità soggette a vari attacchi. Un attaccante potrebbe entrare in possesso di informazioni riservate sia in modo diretto, chiedendole esplicitamente, sia in modo indiretto, deducendole da altre informazioni. L'attacco "Social engineering" è un esempio di come ottenere informazioni risevate, carpendo la fiducia delle persone. Tipicamente, l'attaccante si spaccia per un altro e convince una persona a rivelargli le credenziali per accedere alla rete.

Per limitare le possibilità che una persona interna attacchi la rete, deliberatamente o involontariamente, alcune operazioni potrebbero richiedere le credenziali di due utenti.

Alcune operazioni potrebbero diventare noiose a causa del rispetto delle norme di sicurezza. Per questo motivo le persone potrebbero escogitare dei metodi per eludere i controlli, allo scopo di terminare molto rapidamente i propri compiti. Le persone, quindi dovrebbero essere sensibilizzate al rispetto delle norme.

Potenziali attaccanti

Chi e perchè può sferrare un attacco ad un sistema informatico:

(Hacker) Colui che ha le competenze per entrare nei sistemi informatici e testa la sicurezza di una rete per scoprire vulnerabilità che potrebbero procurare danni.

(Cracker) Un esperto che usa le sue abilità per fini fraudolenti.

Un hacker incaricato di sorvegliare e monitorare la sicurezza di una rete, potrebbe agire da insospettato per trarre vantaggi personali.

Un utente privo di conoscenze tecniche sui sistemi informatici e sulla sicurezza delle reti, che entra in possesso di strumenti software per analizzare il traffico di rete, potrebbe usare quegli strumenti per attaccare una rete.

Un hacker esperto di sicurezza informatica conosce sia gli aspetti tecnici dei sistemi di sicurezza che quelli della rete. Ad esempio, questa persona potrebbe tentare di attaccare un sistema protetto da un dispositivo anti-intruzione in modo che il traffico sembri lecito.

Le motivazioni che potrebbero spingere un hacker ad attaccare una rete, si possono riassumere nei seguenti scopi: un attaccante cerca di acquisire informazioni riservate o cerca di danneggiare gli interessi di un'azienda concorrente, oppure vuole ottenere un guadagno economico attraverso il suo attacco, oppure, semplicemente, prova soddisfazione a compromettere la protezione di un sistema.

Classificazione degli attacchi

Passivo: un attacco passivo non può essere rilevato, perchè l'attaccante non genera traffico, ma si limita a studiare il traffico dei pacchetti in transito, alla ricerca di informazioni riservate.

Attivo: un attacco attivo può essere facilmente riconosciuto, perchè l'attaccante tenta di accedere a informazioni riservate o cerca di modificare dati protetti.

Ravvicinato: un attacco ravvicinato avviene quando l'attaccante si trova in prossimità del sistema che ospita i dati riservati, e quindi riesce ad accedere senza doversi autenticarsi sul router o sul server di rete.

Interno: un attacco interno proviene da utenti che sfruttano le credenziali per accedere legittimamente alla rete e traggono profitto personale da informazioni riservate.

Distribuito: l'attaccante introduce delle "back door" in alcuni sistemi. Si tratta di software che l'attaccante può usare per raggirare la protezione applicata per accedere al sistema, oppure modificare i dati, o per rendere il sistema inutilizzabile.

Metodologia preliminare di un attacco.

Chi intende attaccare una rete segue alcuni criteri molto generali per studiare le vulnerabilità della vittima.

Fase di ricognizione. In questo passaggio l'hacker cerca di acquisire quante più informazioni possibili sul sistema. Ad esempio, può scoprire i nomi di dominio della rete della società e l'intervallo di indirizzi IP che questa utilizza. Potrebbe eseguire una scansione delle porte per vedere quali porte sono aperte sugli host della rete interna.

Identificare le applicazioni e il sistema operativo installati sugli host. Esistono molti strumenti per inviare una richiesta di apertura connessione ad un sistema. Normalmente, questi software propongono un prompt di login dal quale si può risalire al sistema operativo in esecuzione. Inoltre gli strumenti di scansione delle porte permettono di individuare le applicazioni installate sul sistema.

Conquistare l'accesso al sistema. Il Social engineering è la più diffusa tecnica per ottenere le credenziali di login. Ad esempio, i record DNS forniscono le informazioni per contattare gli host di una rete. Un attaccante potrebbe essere in grado di sfruttare queste informazioni per convincere l'amministratore di dominio a rivelargli informazioni sulla rete, magari spacciandosi per un tecnico del provider.

Accesso con le credenziali ottenute, e aumento dei privilegi. Un hacker potrebbe introdurre un cavallo di Troia (un software che sembra un'applicazione legittima, ma che svolge anche una funzione maligna invisibile) ed acquisire privilegi di accesso ai dati.

Scoprire account. Una volta che un sistema è stato violato, gli hacker possono scoprire le credenziali di utenti in possesso di particolari autorizzazioni.

Configurare una "back door". Un hacker non ha convenienza ad accedere ad un sistema mediante un account regolare. Infatti le password hanno una validità temporanea, ed il sistema potrebbe esigerne la modifica periodica. Oppure il sistema potrebbe registrare gli accessi degli utenti, e di conseguenza l'intestatario dell'account potrebbe accorgersi che qualcuno ha usato le sue credenziali. Per questi motivi gli hacker tentano di installare una "back door", ovvero un'applicazione che gli consente di acquisire il controllo del sistema, senza possedere alcun account.

Usare il sistema. Dopo avere acquisito il controllo del sistema, l'hacker passa alla ricerca di informazioni riservate, oppure potrebbe manipolare i dati del sistema, oppure potrebbe usare il sistema per lanciare attacchi verso altri sistemi con cui la macchina compromessa ha una relazione di fiducia.