Sei sulla pagina 1di 8

SICUREZZA DELLE RETI

La protezione delle informazioni ha subito un radicale cambiamento e l’avvento dei


computer ha portato con sé la necessità di nuove strategie per la sicurezza. Inoltre,
l’uso delle reti richiede strumenti che proteggano le informazioni anche durante la
loro trasmissione onde evitare intercettamenti a scopi malevoli di essi. Si
distinguono tre tipi di sicurezze informatiche:
 Computer Security: indica l’insieme degli strumenti utilizzati per proteggerei
dati locali dei computer
 Network Security: insieme di misure utilizzate per proteggere i dati durante la
loro trasmissione, ad esempio in una rete telefonica
 Internet Security: Insieme di misure utilizzate per proteggere i dati nella
trasmissione su Internet
Un documento importante è la raccomandazione X.800 dell’ITU-T (Security
Architecture for OSI). ITU-T è l'acronimo di International Telecommunication Union
– Telecommunication Standardization Bureau, ovvero è il settore dell'Unione
internazionale delle telecomunicazioni. Esso fornisce standard internazionali
riguardanti varie aree di lavoro, ogni area è identificata da una lettera maiuscola
dell’alfabeto. X sta per reti informatiche. Tale raccomandazione definisce quali sono
i requisiti di sicurezza da garantire ad una rete:
 Autenticazione: è la protezione che offre la certezza della sorgente, della
destinazione e del contenuto del messaggio
 Confidenzialità: è la protezione dei dati in modo che essi siano accessibili solo
in “lettura” per i destinatari.
 Integrità: è la protezione dei dati realizzata in modo da evitare la loro
corruzione. Nella trasmissione, i dati devono arrivare come sono stati
mandati, mentre nella memorizzazione i dati devono coincidere con quelli
memorizzati in origine.
 Disponibilità: I dati devono sempre essere accessibili agli utenti
 Non Ripudiabilità: è la protezione contro la negazione di un soggetto
coinvolto nella comunicazione
Definiti i criteri per definire la sicurezza di un sistema informatico, un sistema si
definisce sicuro se le informazioni contenute vengono garantite, tramite misure di
sicurezza apposite, contro il pericolo di violazioni dei criteri citati precedentemente.
Un buon gestore di sistemi informatici deve attuare una politica di sicurezza
adeguata e gestire eventuali intromissioni in esso. Quindi, il gestore deve progettare
un algoritmo crittografico, generare le chiavi di crittografia, sviluppare metodi di
trasmissione sicuri e specificare un protocollo di comunicazione sicuro. A livello
giuridico, la sicurezza informatica è collegata al complesso di accorgimento tecnici-
amministrativi che tutelano i beni giuridici della confidenzialità o riservatezza,
dell’integrità e della disponibilità delle informazioni.
Esistono due classificazioni di attacchi informatici. La prima riguarda gli attacchi
passivi ed attivi. Un attacco è passivo se comprende uno “sniffing” nelle
comunicazioni o nel traffico. Gli attacchi attivi comprendono: modifica di dati per
spacciare la propria identità per un’altra, o per rispondere ai messaggi altrui, o
modificare i messaggi in transito… La seconda classificazione comprende attacchi
accidentali o intenzionali. In base a questa classificazione abbiamo due tipi di agenti:
passivi (può violare solo la riservatezza di un sistema) e attivi (può violare tutti gli
aspetti della sicurezza). Inoltre, gli agenti possono essere umani o non umani (eventi
catastrofici frequenti o eccezionali).
Esistono diverse classi di attacchi informatici in base alle loro modalità e in quale
punto della trasmissione essi agiscono. La prima tipologia è il furto delle password,
che ruba la password e la decripta con appositi programmi. Poi abbiamo la social
engineering, ovvero tutto l’insieme di azioni atte a carpire in maniera fraudolenta
informazioni all’utente tramite l’acquisto della sua fiducia. Un esempio è il phishing.
Successivamente c’è lo sniffing: uno sniffer è un programma che permette a tutti i
computer di leggere automaticamente tutti i pacchetti in transito su una
determinata porzione di rete estraendone informazioni. In più abbiamo lo
spamming, ovvero l’invio di mail a destinatario che non acconsentono al ricevimento
di esse. Successivamente, si ha lo spoofing, ossia la tecnica criminale secondo cui si
inviano pacchetti che modificano l’IP del mittente facendo credere ai vari nodi che il
pacchetto sia mandato da un altro mittente. Infine, il DOS è la negazione
dell’erogazione di un servizio da parte di un sistema informatico.
Esistono diverse minacce software che mettono in pericolo la sicurezza di un sistema
informatico. Le minacce software possono necessitare o no un programma ospite.
Generalmente le minacce software si indicano col termine malware (malicious
software) che riesce ad introdursi in un sistema all’insaputa degli utenti e compiere
un insieme di operazioni più o meno dannose. I malware si dividono in vari tipi:
trojan, backdoor, worm e virus propriamente detti.
I worm sono programmi che si inseriscono nella memoria cercando aree libere per
replicarsi saturando il sistema. I worm assumono il controllo sulle funzioni del SO del
trasporto di file o informazioni. Molti saturano anche la banda disponibile con propri
messaggi.
I trojan sono codici che si nascondono all’interno di un programma che si attivano al
verificarsi di un evento. A tale funzione si aggiungono ulteriori funzioni malevoli.
Una backdoor è una porta laterale creata dai cracker per accedere e controllare un
sistema informatico.
Infine, abbiamo i virus propriamente detti che sono programmi autonomi che non
hanno bisogno di altri programmi che lo ospiti e si auto replicano. Le fasi di un
infezioni sono le seguenti:
 Fase silente: virus inattivo attivato da un evento
 Fase di propagazione: si duplica in altri programmi
 Fase di attivazione: si attiva per compiere azioni programmate o si attiva
dall’esterno
 Fase di esecuzione: compie funzioni di danneggiamento.
Esistono vari tipi di virus:
 Virus di boot: infettano il master boot record e il settore boot dei dischi,
due zone che contengono le informazioni per l’avvio del SO.
 Virus polimorfico: si moltiplicano producendo copie diverse fra loro e
nascondendosi attraverso tecniche criptografiche
 Virus di file: sono virus che si sostituiscono completamente ad un
programma ed ogni volta che viene eseguito tale programma, in realtà
viene eseguito il virus. In altri casi, il virus non sostituisce completamente
il programma, ma parzialmente.
 Virus furtivi (stealth): sono progettati per nascondersi dagli antivirus
 Virus TSR: si attivano quando il programma infetto si attiva, si installano
nella RAM e infettano tutti gli altri programmi in esecuzione.
La crittografia è quella branca della matematica che studia i metodi per trasformare
un messaggio in modo da renderlo visibile solo ad un gruppo di persone. Un buon
sistema di crittografia garantisce autenticazione e non ripudio del mittente e del
destinatario e confidenzialità dei dati. Definiamo i termini fondamentali per la
crittografia:
 Plaintext = messaggio originale X
 Ciphertext = messaggio crittografato Y
 Cipher = algoritmo che trasforma il plaintext in ciphertext. Deve essere
incondizionatamente e computazionalmente (lo sforzo per decifrare supera il
tempo in cui l’informazione ha valore) sicuro.
 Key = chiave di decifrature K
 Cryptanalysis = studio dei principi di base per ottenere il plaintext senza
sapere la chiave. Si basa su analisi crittografica (ciphertext only, known
plaintext, chosen plaintext, chosen ciphertext) o attacco a forza bruta (utilizza
ogni possibile chiave per decifrare il messaggio)
 Encryption = E: K x P→ C (k= insieme chiavi; P= insieme plaintext; C= insieme
ciphertext)
 Decryption= D: K x C → P
Un esempio di cifratura è la cifratura Playfair, introdotta nel 1854 da Charles
Wheatstone. Il cifrario si basa sull’utilizzo di una matrice 5x5. La tabella è costruita
introducendo le lettere della parola chiave (eliminando le lettere duplicate), e poi
riempiendo gli spazi rimanenti con le lettere non utilizzate dell'alfabeto, in ordine.
Essendo 26 le lettere dell'alfabeto inglese e 25 gli spazi nella matrice, occorre
escludere una lettera: generalmente viene esclusa la "Q", ma alcune versioni
mettono la "I" e la "J" nello stesso spazio mentre altre escludono la "W". Per cifrare
un messaggio, si deve dividere il messaggio in digrafi (gruppi di 2 lettere:
 Se entrambe le lettere sono le stesse nel digrafo (o se la lettera è da sola), si
aggiunga un "X" dopo la prima lettera. Cifrare la nuova coppia di lettere e
continuare. Alcune varianti usano la "Q" al posto della "X", ma ogni lettera
poco comune andrebbe bene.
 Se le lettere appaiono nella stessa riga della tabella, vengono codificate con le
lettere alla propria destra (considerando la tabella ciclica).
 Se le lettere appaiono nella stessa colonna della tabella, vengono codificate
con le lettere immediatamente sotto (considerando la tabella ciclica).
 Se le lettere non sono nella stessa riga o colonna, si codificano con le lettere
nelle stesse righe rispettivamente ma negli angoli opposti del rettangolo
definito dalla coppia originale. L'ordine è importante, la prima lettera della
coppia codificata è quella che appartiene alla stessa riga della prima lettera
nel messaggio in chiaro.
Esempio:
Chiave= mondano
m o n d a

b c e f g

h i l y w

x z p q r

s t u v k

Frase da crittografare= i topi non avevano nipoti


It- op- in-on-av-ev-an-on-ip-ot-ix  zonzolnddkgudmndlzcohz (frase crittografata)
IT = ZO
OP = NZ
IN = OL
ON = ND
AV = DK
EV = GU
AN = DM
ON = ND
IP = LZ
OT = CO
IX = HZ

La crittografia a chiave simmetrica è un tipo di crittografia in cui si utilizza una sola


chiave privata (cifrario) per criptare e decriptare il messaggio. Questo metodo è
stato utilizzato ampiamente negli ultimi decenni per facilitare la comunicazione tra
enti governativi e militare. Dato un messaggio in chiaro P e una chiave K, la funzione
di cifratura si indica con Ec(), mentre quello di decifratura Dc().

P Cifratura Ec( P) spedizione su canale insicuro Dc ( Ec ( M ) )=M


⇒ ⇒

Due degli schemi di crittografia simmetrica più comuni usati attualmente si basano
su cifrari a blocchi e cifrari a flusso. I cifrari a blocchi raggruppano i dati in blocchi di
dimensioni predeterminate, e ciascuno di essi viene cifrato usando la chiave e
l’algoritmo corrispondente. I cifrari a flusso non codificano i dati del testo semplice
in blocchi, ma secondo incrementi di 1 bit. La crittografia simmetrica è
relativamente sicura consentendo di decifrare e cifrare messaggi rapidamente.
Inoltre, la sicurezza garantita dalla cifratura simmetrica può essere incrementata
aumentando la lunghezza delle chiavi. Per ogni bit aggiunto, la difficoltà aumenta in
modo esponenziale (2n). Tuttavia, il problema più grande di questa crittografia è il
trasferimento delle chiavi in canali non protetti e, quindi, possono essere
intercettate da terzi. Per risolvere il problema, molti protocolli usano combinazioni
simmetriche e asimmetriche per stabilire connessioni sicure. Un esempio è il TLS.
La crittografia asimmetrica consiste in una coppia di chiavi asimmetriche (una diretta
ed una inversa). Nella crittografia a chiave pubblica è possibile utilizzare ambo le
chiavi per cifrare o decifrare i dati, ma la chiave usata per cifrare non può essere
utilizzata anche per decifrare. La complessità per ottenere la chiave pubblica è
polinomiale, mentre quella per la chiave privata è esponenziale. Una chiave è
pubblica e viene caricata su un server pubblico di chiavi, mentre l’altra è privata e
rimane al mittente del messaggio.
Nella crittografia asimmetrica è possibile delineare 3 schemi in modo da
determinare l’autenticazione del destinatario e la riservatezza, l’autenticazione del
mittente, la non ripudiabilità.

S preleva dal registro delle chiavi pubbliche quella di D, che precedentemente aveva
generato la coppia di chiavi. S cripta il messaggio con la chiave di D e la invia a D. D
con la sua chiave privata, unica associata alla sua chiave pubblica, riuscirà a criptare
il messaggio. Questo schema permette la riservatezza e l’autenticazione del
destinatario ma non della sorgente, dato che tutti possono accedere alla chiave
pubblica di D.
S cifra il messaggio con la propria chiave privata e lo invia a D. Quest’ultimo
accederà alla chiave pubblica di S con cui decriptare il messaggio cifrato e leggerlo.
Utilizzando la chiave privata di S è possibile attestare l’autenticazione del mittente.

S cifra una prima volta il messaggio con la sua chiave privata e, successivamente, lo
cifra una seconda volta con la chiave pubblica di D. Una volta arrivato a D, il
messaggio verrà decifrato prima utilizzando la chiave privata di D e poi usando la
chiave pubblica di S. In questo modo si garantiscono l’autenticazione della sorgente,
del destinatario e la riservatezza. Inoltre, il messaggio non è ripudiabile dal mittente.
Un esempio di algoritmo a chiave asimmetrica è l’algoritmo Diffie-Hellman,
introdotto nel 1976. Siano dati 2 numeri g (generatore) e un numero primo (p).
A sceglie un numero a e calcola A=ga mod p (mod=resistuisce il resto della divisione)
e lo invia a B
B sceglie un numero b e calcola B=gb mod p e lo invia ad A che calcola
Ka = Ba mod p, mentre B calcola Kb=Ab mod p. Quindi i due interlocutori hanno le
rispettive chiavi di cifratura.
Dato p=23 e g=5
A: a=2 A=g2 mod p=25 mod 23= 2
B: b=3 B=g3 mod p = 125 mod 23 = 10
Ka = Ba mod p = 102 mod 23=8 Kb= Ab mod p = 23 mod 23 = 8 (stessa
chiave segreta)
I principi crittografici illustrati vengono utilizzati nella firma digitale:
1. Mediante una funzione one-way hash, viene fatto una sintesi del messaggio in
una stringa di lunghezza limitata, detta fingerprint.
2. Viene poi crittografata l’impronta digitale utilizzando la crittografia
asimmetrica e la chiave privata del mittente.
3. La firma elettronica viene allegata in calce al messaggio non crittografato
4. Il destinatario decrittografa la firma digitale con la chiave pubblica del
mittente
5. Il destinatario confronta la firma digitale con una generata da un’altra
funzione one-way hash
6. Se corrisponde, allora il destinatrio avrà attestato:
a. L’integrità del messaggio
b. Autenticazione del mittente
c. Non ripudiabilità del mittente
La blockchain dei Bitcon usa un particolare algoritmo di firme digitali conosciuto
come Elliptic Curve Digital Signature Algorithm (ECDSA) che genera firme digitali
senza l’uso di cifratura.

Potrebbero piacerti anche