Introduzione alla sicurezza informatica: concetti e protocolli di rete

Slide di Università su Introduzione Sicurezza. Il Pdf, un documento di Informatica di grado universitario, esplora i concetti fondamentali della sicurezza informatica, distinguendo tra Safety e Security Engineering, analizzando i requisiti CIA e i protocolli di rete con crittografia, come il TLS.

Mostra di più

61 pagine

🛡
Introduzione Sicurezza
📌
Safety Engineering
Prevenzione dei danni causati dal cattivo funzionamento di un sistema
informatico
Security Engineering
Prevenzione, difesa e recupero danni contro la possibilità di attacchi
che possono mettere a repentaglio un sistema informatico
Tutte le misure di safety sono anche di security ma non viceversa
Requisiti per la Sicurezza - CIA
Confidentiality
Capacità di controllare ed assicurare la riservatezza delle informazioni
archiviate o trasmesse rispetto a soggetti non autorizzati
Integrity
Capacità di controllare ed assicurare la non modificabilità da parte di soggetti
non autorizzati delle informazioni memorizzate o trasmesse e lʼattendibilità di
questi ultimi
Potrebbe essere necessario garantire
Autenticazione del Mittente
Capacità di garantire lʼidentità del mittente
Non Ripudio
Capacità di assicurare che il mittente non possa negare la proprietà
delle informazioni archiviate o trasmesse. Ossia garantire che ogni
risorsa archiviata o trasmessa dall'utente sia a lui riconducibile
Introduzione Sicurezza
1
Availability
Capacità di controllare e assicurare la possibilità di utilizzare risorse e servizi
per gli utenti autorizzati
DAD
Attacchi ai requisiti CIA sono definiti DADî‚’
Disclosure  Confidentiality
Alteration  Integrity
Destruction  Availability
Ostacoli
Lʼobiettivo dellʼinformatica e dellʼingegneria del software è favorire lʼaccesso
alle risorse, al contrario, la sicurezza obbliga a limitare lʼaccesso alle risorse
Spesso la sicurezza viene presa in considerazione solo dopo il verificarsi delle
prime problematiche
I sistemi di sicurezza costano e non sempre stanno nel budget
Diventa quindi fondamentale una corretta analisi dei rischi
Analisi dei Rischi
📌
Rischio: Possibilità di Perdita o Danno
Vulnerabilità
Debolezze e/o attacchi che possono essere sfruttati per compromettere
la confidenzialità, lʼintegrità o la disponibilità
Minacce
Circostanze o agenti che possono arrecare danni
Valori Sensibili
Elementi da proteggere e relativa importanza
Rischio = Vulnerabilit ×aˋ Minacce × Valori
Introduzione Sicurezza
2

Visualizza gratis il Pdf completo

Registrati per accedere all’intero documento e trasformarlo con l’AI.

Anteprima

Introduzione alla Sicurezza

Safety Engineering Prevenzione dei danni causati dal cattivo funzionamento di un sistema informatico Security Engineering Prevenzione, difesa e recupero danni contro la possibilità di attacchi che possono mettere a repentaglio un sistema informatico Tutte le misure di safety sono anche di security ma non viceversa

Requisiti per la Sicurezza - CIA

Confidentiality

Capacità di controllare ed assicurare la riservatezza delle informazioni archiviate o trasmesse rispetto a soggetti non autorizzati

Integrity

Capacità di controllare ed assicurare la non modificabilità da parte di soggetti non autorizzati delle informazioni memorizzate o trasmesse e l'attendibilità di questi ultimi Potrebbe essere necessario garantire

  • Autenticazione del Mittente
  • Capacità di garantire l'identità del mittente
  • Non Ripudio
  • Capacità di assicurare che il mittente non possa negare la proprietà delle informazioni archiviate o trasmesse. Ossia garantire che ogni risorsa archiviata o trasmessa dall'utente sia a lui riconducibile

Introduzione Sicurezza 1Availability Capacità di controllare e assicurare la possibilità di utilizzare risorse e servizi per gli utenti autorizzati

DAD

Attacchi ai requisiti CIA sono definiti DAD:

  • Disclosure > Confidentiality
  • Alteration > Integrity
  • Destruction -> Availability

Ostacoli

L'obiettivo dell'informatica e dell'ingegneria del software è favorire l'accesso alle risorse, al contrario, la sicurezza obbliga a limitare l'accesso alle risorse Spesso la sicurezza viene presa in considerazione solo dopo il verificarsi delle prime problematiche I sistemi di sicurezza costano e non sempre stanno nel budget Diventa quindi fondamentale una corretta analisi dei rischi

Analisi dei Rischi

Rischio: Possibilità di Perdita o Danno Rischio = Vulnerabilità x Minacce x Valori

  • Vulnerabilità
    • Debolezze e/o attacchi che possono essere sfruttati per compromettere la confidenzialità, l'integrità o la disponibilità
  • Minacce
    • Circostanze o agenti che possono arrecare danni
  • Valori Sensibili
    • Elementi da proteggere e relativa importanza

Introduzione Sicurezza 2Probabilità: vuln. x minacce

Principali applicazioni dei meccanismi di sicurezza

controllo e contenimento prevenzione e protezione rischio ignorabile assicurazione, piano di backup, multiple point-of-failure Impatto rispetto a valori sensibili

Introduzione Sicurezza 3

Crittografia

Crittografia: Disciplina che studia le tecniche per codificare/decodificare messaggi in modo da garantire la privacy nella comunicazione tra due soggetti Crittoanalisi: Studio delle tecniche per occultare un messaggio oppure per ottenere il significato di informazioni cifrate senza averne accesso, opposto della crittografia

Sistema Crittografico

Un sistema crittografico è composto da 5 componenti:

2. Insieme di chiavi per codifica e decodifica 1. Insieme di messaggi in chiaro (plaintext) 3. Funzione di codifica: K x P -> C encrypt P K C 5. Funzione di decodifica: K x C -> P decrypt 4. Insieme di messaggi cifrati (cyphertext)

Brute Force

Provare tutte le istanze di un insieme finito di schemi crittografici che potrebbero corrispondere a messaggio

Algoritmi Crittografici

Algoritmi degni di Fiducia poiché: Crittografia 1

  • Basati su matematica consolidata
  • Analizzati da esperti
  • Hanno superato la prova del tempo
  • Usabili
  • La complessità temporale dell'algoritmo per criptare/decrittare deve essere commisurata alla sicurezza necessaria
    • Le chiavi e il testo di input non devono essere soggetti a requisiti complessi
  • Il processo sottinteso dall'uso della crittografia deve essere semplice per l'utente

Algoritmi Simmetrici - Chiave Segreta

Si utilizza la stessa chiave k sia per codifica che decodifica: decrypt(k, encrypt(k,p)) = p Per instaurare una comunicazione confidenziale entrambi i soggetti devono conoscere una chiave k, non nota a nessun altro

Testo in chiaro Testo in chiaro Cifra con chiave segreta Decifra con chiave segreta Testo cifrato n(n-1) n individui, per comunicare in maniera sicura a coppie hanno bisogno di 2 chiavi ossia una per coppia

Crittografia 2A B D C

DES - Data Encryption Standard

Basato su confusione e diffusione dell'informazione Codifica messaggi in blocchi da 64bit applicando 16 volte una funzione combinatoria F ad ogni blocco usando la chiave come uno dei parametri di F

Algoritmo Blocco 64 bit J Metà Sx Metà Dx Combina Chiave Ripeti ×16 Permuta Somma Blocco 64 bit

Crittografia 3La versione originale di DES utilizza una chiave da 56bit più 8 per la correzione d'errore Consiste in operazioni logiche facilmente implementabili sia lato hardware che software

Sicurezza

DES si può violare con forza bruta, ha 256 chiavi in totale, inizialmente si stimava ci volessero 700 anni per violarlo con forza bruta, nel 1998 ci sono voluti 4 giorni

Alternative

Triple DES: Si cifra con tre chiavi diversa, la sicurezza diventa pari all'utilizzo di una chiave da 112bit

AES - Advanced Encryption Standard

Basato su trasformazioni (sostituzione, scorrimento e mescolamento dei bit) applicabili a blocchi di 128bit Utilizza chiavi da 128, 192 o 256 bit Numero di cicli fissato tra 10 e 14 ma estendibile

Requisiti di Sicurezza

RequisitoSi/NoMotivo
ConfidenzialitàSiSolo chi conosce la chiave segreta può decodificare il messaggio
IntegritàSiUna volta che il messaggio è stato criptato non è possibile manometterlo prima della recezione
Autenticazione e Non RipudioSi, con eccezioniSolo chi conosce la chiave segreta può essere mittente del messaggio, non è però possibile fornire evidenze a terze parti senza perdere confidenzialità

Sistemi Asimmetrici - Chiave Pubblica

Ogni soggetto possiede una coppia di chiavi:

  • k_pub
    • Chiave Pubblica

Crittografia 4

  • Conosciuta di chiunque
  • k_priv
    • Strettamente Privata

Un messaggio codificato con una delle chiavi può essere decodificato solo con la chiave corrispondente decrypt(k_priv, encrypt(k_pub, p)) =p decrypt(k_pub, encrypt(k_priv, p)) = p

Messaggio per A: Testo in chiaro Testo in chiaro A Cifra con chiave pubblica di A Testo cifrato Decifra con chiave privata di A Per N individui sono necessarie N coppie di chiavi

A B D C

Requisiti di Sicurezza

Crittografia 5

RequisitoSi/NoMotivo
ConfidenzialitàSiSolo chi conosce la chiave segreta può decodificare il messaggio criptato con la corrispondente chiave pubblica
IntegritàSiUna volta che il messaggio è stato criptato non è possibile manometterlo prima della decodifica
Autenticazione e Non RipudioSi, con eccezioniSolo chi conosce la chiave segreta può essere mittente di un messaggio che si codifica con la corrispondente chiave pubblica

RSA

Funzionamento:

  • Si calcolano chiave pubblica e privata come funzioni di due numeri primi molto grandi, da 60 a 200 cifre ciascuno
  • I numeri primi utilizzati sono scelti random e possono essere scartati dopo il calcolo delle chiavi, devono però rimanere privati
  • La sicurezza dell'algoritmo si basa sulla difficoltà di risolvere il problema di fattorizzare numeri molto grandi
  • Le chiavi possono essere usate intercambiabilmente per codificare e decodificare il messaggio

Algoritmo:

  1. Scelgo pe q come numeri primi molto grandi
  2. Calcolo n = p * q ed f = (p-1) * (q-1)
  3. Scelgo e, d tali che e * d = 1( mod f)
  4. Cestino p, q, f
  5. Uso k_pub = (e, n) e k_priv = (d, n)

Poiché solo e ed n sono pubblici, al fine di scoprire d sarebbe necessario scoprire i fattori pe q che compongono n, n però è un numero parecchio grande

Hashing - Message Digest

Un message digest (o riassunto del messaggio) è una sorta di checksum crittografico che identifica in modo univoco un messaggio.

Crittografia 6Caratteristiche ideali e pratiche:

  • Idealmente, ogni message digest dovrebbe corrispondere a un solo messaggio.
  • Nella pratica, questo non è sempre possibile. Ad esempio, con un codice a 128 bit per messaggi di 64 kilobyte, si avrebbe in media un codice per ogni 65.408 messaggi.
  • Tuttavia, l'algoritmo utilizzato per generare il message digest deve approssimare il più possibile la proprietà di unicità.

Proprietà fondamentali dell'algoritmo:

  1. A senso unico (non invertibile):
    • Dato un message digest, deve essere impossibile (o estremamente difficile) risalire al messaggio originale o trovare un altro messaggio che generi lo stesso message digest.
  2. Resistente alle collisioni (Collision resistant):
    • Deve essere altamente improbabile che due messaggi diversi producano lo stesso message digest.

Utilizzo principale: Integrità dei messaggi L'hashing, e quindi il message digest, viene utilizzato per garantire l'integrità dei messaggi. Ecco come:

  1. Si presume di conoscere il message digest (MD) originale di un messaggio (MSG).
  2. Per verificare se il messaggio MSG è stato alterato:
    • Si calcola nuovamente il message digest del messaggio MSG ricevuto.
    • Si confronta questo nuovo message digest con quello originale (MD).
  3. Risultato: Se i due message digest sono identici, si può ragionevolmente presumere che il messaggio non sia stato modificato.

MD5

Applica una trasformazione combinatoria complessa a blocchi di 512bit del messaggio e genera un output a 128bit

Crittografia 7

Riassunto Iniziale 128 bit messaggio 512 bit 512 bit ... 512 bit MD5 MD5 ... MD5 Message digest 128 bit

Requisiti di Sicurezza

RequisitoSi/NoMotivo
ConfidenzialitàNoNessuno può decodificare il codice MD di un messaggio per la proprietà di non invertibilità
IntegritàSiLa coppia permette di stabilire che il messaggio non sia stato manomesso
Autenticazione e Non RipudioNoChiunque può generare il codice MD di un dato messaggio

Algoritmi a Confronto

DES ed MD5 sono parecchio più veloci di RSA, se implementati in hardware DES ed MD5 raggiungono velocità misurabili in gigabit al secondo mentre RSA kilobit al secondo Tipicamente RSA è utilizzato per cifrare piccole quantità di dati

Garanzia di Confidenzialità: RSA + DES

  • Si cifra con RSA una chiave segreta casuale (chiave di sessione)
  • Si utilizza tale chiave come chiave segreta del DES
  • Solo chi può decodificare la chiave può decodificare il messaggio
  • Si sfrutta così l'efficienza di DES e la flessibilità di RSA

Crittografia 8

Non hai trovato quello che cercavi?

Esplora altri argomenti nella Algor library o crea direttamente i tuoi materiali con l’AI.