La sicurezza di un sistema informatico La Sicurezza: Definizione Sicurezza: – Assenza di rischio o pericolo Sicurezza informatica: – Prevenzione o protezione contro: • Accesso, distruzione o alterazione di risorse/informazioni da parte di utenti non autorizzati 2 Proteggersi da chi o da cosa? Calamità naturali Attentati terroristici Guasti ed interruzioni Hardware Errori umani Virus Attacchi da: – Hacker – Criminali (solitari o organizzazioni) – Spie industriali – Forze dell’Ordine – Etc… etc…. 3 Gli aspetti della sicurezza Per sicurezza di un sistema informatico si intende la salvaguardia dei seguenti aspetti fondamentali: – affidabilità ; – integrità; – riservatezza; – autenticità; – non ripudio. 4 Affidabilità dei dati E’ la proprietà che devono possedere i dati per essere sempre accessibili o disponibili agli utenti autorizzati. Esempi di violazione di affidabilità sono: – Mancanza di fornitura elettrica, – Rottura di un componente hardaware 5 Integrità dei dati I dati devono essere protetti per evitare la loro corruzione. In particolare nella trasmissione, i dati devono arrivare così come inviati; nella memorizzazione, i dati devono coincidere in ogni istante con quelli memorizzati originariamente. Si dice che la garanzia dell’integrità riguarda la protezione da modifiche non autorizzate. Esempi di violazione di integrità sono: Cancellazione non autorizzata di un file; Modifica non autorizzata di un file; 6 Riservatezza I dati devono essere protetti in modo che essi siano accessibili in lettura solo ai legittimi destinatari. Si dice che la riservatezza riguarda la protezione da letture non autorizzate. Esempi di violazione della riservatezza sono: – Intercettazione dei dati durante la loro trasmissione – Accesso non autorizzato dei dati memorizzati su un server 7 Autenticazione o autenticita E’ la certezza della sorgente, della destinazione e del contenuto del messaggio. Un esempio di violazione è: – la spedizione di un’email da parte di un pirata informatico che si maschera facendo credere che il mittente dell’email sia una persona conosciuta al destinatario. 8 Non ripudio E’ la certezza che chi trasmette ( non ripudio del mittente) e chi riceve ( non ripudio del destinatario) non possono negare di aver rispettivamente inviato e ricevuto i dati. Esempi di non ripudio presi dalla vita di tutti i giorni sono Raccomandata con ricevuta di ritorno Autenticazione della firma da parte di un pubblico ufficiale 9 Sicurezza e Usabilità Sicurezza ed usabilità sono spesso in antitesi. Il sistema più usabile è quello privo di misure di sicurezza. Un sistema completamente sicuro è un sistema che: – – – – – opera localmente, Sistema davvero sicuro, staccato dalla rete, ma chi lavorare collocato in unvorrebbe bunker, in finestre, tali condizioni ? senza con un plotone di guardie armate e cani ringhiosi dietro del filo spinato e con un sistema di sorveglianza con telecamere. 10 Difesa adeguata Le misure di sicurezza da implementare devono essere dimensionate in funzione delle minacce ed al fattore di rischio che si intende sostenere. Per proteggere un bene non si dovrebbe mai spendere di più del valore reale del bene stesso. La sicurezza di un sistema può essere paragonata ad una catena. La misura del livello di sicurezza dell’intero sistema è determinato dalla robustezza dell’anello più debole della catena. 11 Elementi di base della sicurezza Prevenzione: E’ necessario implementare delle misure per prevenire lo sfruttamento delle vulnerabilità. Rilevazione: E’ importante rilevare prontamente il problema; prima si rileva il problema, più semplice è la sua risoluzione. Risoluzione:bisogna sviluppare un piano appropriato di intervento in caso di violazione con individuazione delle responsabilità e le azioni da intraprendere. 12 Crittografia e Firma Digitale Che cos’è la crittografia? La crittografia (dal greco kryptos, nascosto, e graphein, scrivere) è la scienza che studia la scrittura e la lettura di messaggi in codice. Dall’antichità fino a pochi anni fa: – Essenzialmente comunicazioni private – Usi Militari e Diplomatici Oggi: E’ entrata a far parte della nostra vita quotidiana per la protezione delle informazioni digitali. smart card cellulari trasmissioni via Internet tv satellitari 14 Esempio: Cifrario di Cesare 15 Crittografia: gli attori m Il Messaggio Un algoritmo crittografico (cipher) è un processo matematico o una serie di funzioni usate per “rimescolare” i dati. Il termine chiave si riferisce all’insieme delle informazioni necessarie all’algoritmo crittografico per cifrare e decifrare i dati. In generale una chiave è una sequenza di bit e la sicurezza della chiave è espressa in termini della sua lunghezza. 16 Che cos’è la crittografia? La crittografia risponde alle esigenze di sicurezza: Confidenzialità: proteggere i dati dall’essere letti da persone non autorizzate Integrità: proteggere i dati da modifiche non autorizzate Autenticazione: verificare le credenziali Non ripudiabilità: il mittente non può disconoscere la paternità del messaggio, cioè non può negare di aver inviato il messaggio al mittente 17 Architettura per la sicurezza Servizi Soluzioni •Confidenzialità •Cifratura •Autenticazione •Firma digitale •Integrità •Funzione hash •Non ripudio •Firma digitale 18 Principio di Kerckhoffs “La sicurezza di un crittosistema non deve dipendere dalla segretezza dell’algoritmo usato, ma solo dalla segretezza della chiave” La sicurezza dei sistemi crittografici Per sistema crittografico si intende un sistema in grado Jean Guillaume Hubert Victor Francois Alexandre Auguste dalla(1835-1903), robustezza dell’algoritmo Kerckhoffs vone Nieuwenhof filologo olandese, didipende cifrare decifrare un messaggio attraverso l’uso di “La Criptographie Militarie” [1883] unealgoritmo (metodo di calcolo) e di una chiave. dalla segretezza della chiave Il messaggio che dovrà essere cifrato viene chiamato testo in chiaro (plaintext) mentre il risultato dell’algoritmo crittografico testo cifrato (ciphertext). Sistema crittografico Cifratura Decifratura Algoritmo + chiave Testo in chiaro Algoritmo + chiave Testo cifrato Testo in chiaro 19 Sistemi crittografici Fondamentalmente i sistemi crittografici si dividono in due tipologie: Sistemi crittografici Sistemi simmetrici Si utilizza una sola chiave per cifrare e decifrare Sistemi asimmetrici Si utilizza una coppia di chiavi una per cifrare e l’altra per decifrare 20 Crittografia simmetrica Si utilizza la stessa chiave per codificare e decodificare, mantenendola segreta da entrambe le parti. Il vantaggio è la rapidità. Testo da trasmettere Testo crittografato Testo decifrato 21 Esempio di chiave simmetrica: GSM Chiave simmetrica di 128 bit, contenuta nel Home Location Register della rete GSM Chiave simmetrica di 128 bit, contenuta nella SIM card 22 Crittografia asimmetrica La crittografia asimmetrica o a chiave pubblica prevede l’utilizzo di una coppia di chiavi, correlate tra loro, per ciascun partner; – una pubblica, nota a tutti, – ed una privata nota solo al proprietario, mantenuta segreta e protetta (smart card) Ciò che viene codificato con la prima chiave può essere decodificato con l’altra e viceversa E’ impossibile derivare la chiave privata conoscendo la chiave pubblica 23 Crittografia asimmetrica Le informazioni vengono cifrate e decifrate attraverso due chiavi distinte. Chiave privata del destinatario Chiave pubblica del destinatario Testo da trasmettere Testo crittografato Testo decifrato 24 Crittografia asimmetrica La crittografia asimmetrica garantisce le seguenti funzioni: Confidenzialità: nel caso in cui il mittente voglia inviare un messaggio non decifrabile da altri, è sufficiente che codifichi il messaggio in chiaro con la chiave pubblica del destinatario e lo trasmetta. Il destinatario potrà decodificare il messaggio con la sua chiave privata Autenticazione e non ripudio : nel caso in cui il mittente voglia firmare il documento in modo che possa rivendicarne la proprietà, è sufficiente che al documento applichi la sua chiave privata. Il destinatario potrà leggere il contenuto e verificarne la provenienza con il solo ausilio della chiave pubblica del mittente. 25 Funzioni hash one-way m Algoritmo di Hashing digest Partendo da dati di lunghezza variabile, restituiscono una stringa di lunghezza fissa ( in genere 128 bit o 160 bit) Sono algoritmi – Facili da calcolare – Difficili da invertire • Al variare anche di un solo bit dell’input cambia l’output corrispondente • Offrono una “impronta” del dato originale 26 Funzioni hash one-way Caratteristiche principali di una funzione hash: Coerenza: ad input uguali corrispondono sempre output uguali Casualità: output uniformemente distribuito Univocità: la probabilità che due messaggi generino la medesima impronta è nulla Non invertibile: è impossibile risalire al messaggio originale dall’impronta: minime variazioni sul messaggio comportano variazioni significative sull’impronta Computazionalmente poco onerosa 27 Firma Digitale La chiave privata può essere utilizzata anche in senso inverso per codificare un messaggio che viene decifrato da chi è in possesso della chiave pubblica. In questo modo chi riceve utilizzerà la chiave pubblica e avrà la sicurezza di chi sta scrivendo. Per ridurre le dimensioni del messaggio e velocizzare le operazioni, viene applicato al messaggio una funzione di Hash chiave privata Firma digitale Funzione Hash Documento Documento firmato 28 Certificato Digitale Una firma digitale, da sola, non fornisce un legame stretto con la persona o è entità. Questa funzione svolta dal certificato digitale. Come si fa a sapere che una chiave pubblica, usata I certificati digitali sono il mezzo per creare una firma digitale, realmente appartiene ad un determinato di distribuzione delle individuo, chiavi e che la chiave sia ancora valida ? pubbliche. E’ necessario un meccanismo che leghi la chiave pubblica alla persona. 29 Certificato digitale Ogni certificato attesta l’appartenenza di una determinata chiave pubblica ad una persona o una ente pubblico o privato. Sono rilasciati da una autorità (Certification Authority) che verifica l’identità. Sono firmati con la chiave privata della Certification Authority 30 Certificato Digitale I certificati digitali hanno un formato comune e si basano sullo standard X.509v3 (RFC 2459). Lo standard X.509v3 definisce gli elementi contenuti in un certificato digitale: Versione del certificato Numero seriale del certificato Informazioni sull’algoritmo utilizzato dalla CA Estremi di chi ha rilasciato il certificato Periodo di validità del certificato Firma digitale dell’autorità rilasciante Estensioni standard (vers. 3): Key Usage, Private Key Usage Period, Certificate Policies e Policy Mapping 31 Certification Authority La Certification Authority (CA) è il soggetto di fiducia che avalla la validità di un certificato. Alla CA spetta il compito di: raccogliere le richieste rilasciare e distribuire i certificati sospenderli o revocarli quando le informazioni in essi contenute non sono più valide. 32 Infrastruttura PKI I certificati digitali richiedono uno strumento per creare, distribuire, memorizzare, revocareche i Consiste di servizi e standard certificati e per aggiornare e fare il backup delle supportano applicazioni di chiavi. crittografia a chiave pubblica e firma Questo sistema di gestione è conosciuto come digitale infrastruttura Public Key Infrastructure (PKI) 33 I componenti principali di una PKI sono: Registration Authority: entità delegata dalla CA a verificare PSEgrado di emettere dei l’identità dei soggetti richiedenti ma non in certificati Processo di generazione delle chiavi: processo che dà chiave privata di chiavi (privata e pubblica) come output una coppia Private Security Environment (PSE): è l’ambiente (smart generazione della card, PCMCIA, etc.) che contiene le informazioni di chiave pubblica coppia di chiavi sicurezza dell’utente (chiave privata, certificato, CA fidate, Directory Service informazioni etc.) sull'utente Directory Service: è il servizio Operazione che rende pubblico il di firma certificato con annessa chiave pubblica dell’utente. Certification Standard più diffuso: LDAP Authority Certificate Revocation List (CRL ): certificati revocati Repository dei certificati contiene la e della CRL Repository Directory lista dei Service 34