Telematica di Basegroups.di.unipi.it/~dipierro/Didattica/TdB06/Sicurezza1.pdf · – secure email...

33
 1 Telematica di Base Sicurezza nelle reti

Transcript of Telematica di Basegroups.di.unipi.it/~dipierro/Didattica/TdB06/Sicurezza1.pdf · – secure email...

Page 1: Telematica di Basegroups.di.unipi.it/~dipierro/Didattica/TdB06/Sicurezza1.pdf · – secure email – secure transport (SSL) – IP sec – 802.11 4 Amici e nemici • wellknown in

  1

Telematica di Base

Sicurezza nelle reti

Page 2: Telematica di Basegroups.di.unipi.it/~dipierro/Didattica/TdB06/Sicurezza1.pdf · – secure email – secure transport (SSL) – IP sec – 802.11 4 Amici e nemici • wellknown in

  2

Cosa vuol dire sicurezza nelle reti?

Riservatezza: solo il sender e il receiver devono essere in grado di “capire” il messaggio– sender codifica i messaggio– receiver decritta il messaggio

Autenticazione: sender, receiver vogliono assicurarsi l’un l’altro della propria identita’ 

Integrita’ del messaggio: sender, receiver voglio assicurare che il messaggio non venga alterato (in transit, o dopo)

Disponibilita’ e controllo dell’accesso: servizi devono essere disponibili e accessibili agli utenti

Page 3: Telematica di Basegroups.di.unipi.it/~dipierro/Didattica/TdB06/Sicurezza1.pdf · – secure email – secure transport (SSL) – IP sec – 802.11 4 Amici e nemici • wellknown in

  3

SommarioTechniche di base…...

– crittografia (simmetrica e publica)– autenticazione– message integrity– distribuzione delle chiavi

…. usate in diversi scenari– secure email– secure transport (SSL)– IP sec– 802.11

Page 4: Telematica di Basegroups.di.unipi.it/~dipierro/Didattica/TdB06/Sicurezza1.pdf · – secure email – secure transport (SSL) – IP sec – 802.11 4 Amici e nemici • wellknown in

  4

Amici e nemici• well­known in network security world• Bob, Alice (lovers!) want to communicate “securely”• Trudy (intruder) may intercept, delete, add messages

securesender

securereceiver

channel data, control messages

data data

Alice Bob

Trudy

Page 5: Telematica di Basegroups.di.unipi.it/~dipierro/Didattica/TdB06/Sicurezza1.pdf · – secure email – secure transport (SSL) – IP sec – 802.11 4 Amici e nemici • wellknown in

  5

Chi sono Bob e Alice?•  Web browser/server per transazioni 

elettroniche (e.g., acquisti on­line)• on­line banking client/server• DNS servers• routers che si scambiano gli aggiornamenti 

delle tabelle di routing• altri esempi?

Page 6: Telematica di Basegroups.di.unipi.it/~dipierro/Didattica/TdB06/Sicurezza1.pdf · – secure email – secure transport (SSL) – IP sec – 802.11 4 Amici e nemici • wellknown in

  6

Bad guys (and girls)Q: Cosa puo’ fare “l’intruso”?A: molto!

– eavesdrop: intercettare messaggi– inserire attivamente messaggi nella connessione– impersonation: imitazione (spoofing) dell’indirizzo 

del mittente nei pacchetti– hijacking: “take over” ongoing connection by 

removing sender or receiver, inserting himself in place

– negazione di servizio (DoS): prevenire l’uso del servizio da parte di altri (e.g. sovraccaricando le risorse)

Page 7: Telematica di Basegroups.di.unipi.it/~dipierro/Didattica/TdB06/Sicurezza1.pdf · – secure email – secure transport (SSL) – IP sec – 802.11 4 Amici e nemici • wellknown in

  7

Principi di crittografia

1. Crittografia a chiave simmetrica

2. Crittografia a chiave pubblica

Page 8: Telematica di Basegroups.di.unipi.it/~dipierro/Didattica/TdB06/Sicurezza1.pdf · – secure email – secure transport (SSL) – IP sec – 802.11 4 Amici e nemici • wellknown in

  8

Il linguaggio della crittografia

critt. a chiave simmetrica: chiavi sender, receiver identiche

critt. a chiave pubblica: chiave per crittare pubblica, chiave per decrittare segreta  (privata)

plaintext plaintextciphertext

KA

encryptionalgorithm

decryption algorithm

Alice’ s encryptionkey

Bob’ s decryptionkey

KB

Page 9: Telematica di Basegroups.di.unipi.it/~dipierro/Didattica/TdB06/Sicurezza1.pdf · – secure email – secure transport (SSL) – IP sec – 802.11 4 Amici e nemici • wellknown in

  9

Crittografia a chiave simmetrica

plaintext: abcdefghijklmnopqrstuvwxyz

ciphertext: mnbvcxzasdfghjklpoiuytrewq

Plaintext: bob. i love you. aliceciphertext: nkn. s gktc wky. mgsbc

E.g.:

Q: Quanto e’ difficile rompere questo semplice cifrario?:

forza bruta altro?

Page 10: Telematica di Basegroups.di.unipi.it/~dipierro/Didattica/TdB06/Sicurezza1.pdf · – secure email – secure transport (SSL) – IP sec – 802.11 4 Amici e nemici • wellknown in

  10

Crittografia a chiave simmetrica

Bob e Alice condividono la stessa chiave (simmetrica): K

• e.g. conoscenza del pattern di sostituzione nel cifrario mono alfabetico

• Q: how do Bob and Alice agree on key value?

plaintextciphertext

KA-B

encryptionalgorithm

decryption algorithm

A-B

KA-B

plaintextmessage, m

K (m)A-B

K (m)A-Bm = K ( )

A-B

Page 11: Telematica di Basegroups.di.unipi.it/~dipierro/Didattica/TdB06/Sicurezza1.pdf · – secure email – secure transport (SSL) – IP sec – 802.11 4 Amici e nemici • wellknown in

  11

DESDES: Data Encryption Standard• US encryption standard [NIST 1993]• 56­bit symmetric key, 64­bit plaintext input• Qual’e’ il grado di sicurezza di DES?

– DES Challenge: frase crittata con chiave di 56 bit (“Strong cryptography makes the world a safer place”) decrittata (brute force) in 4 mesi

– non si conoscono approcci “backdoor” alla decrittazione

• DES si puo’ rendere piu’ sicura:– applicae sequenzialmente di 3 chiavi su ciascun dato 

(3­DES) – uso di “cipher­block chaining”

Page 12: Telematica di Basegroups.di.unipi.it/~dipierro/Didattica/TdB06/Sicurezza1.pdf · – secure email – secure transport (SSL) – IP sec – 802.11 4 Amici e nemici • wellknown in

  12

 DES

permutazione iniziale 16 applicazioni della 

funzione f, ognuna su 48 bits diversi della chiave

permutation finale

Operazioni DES

Page 13: Telematica di Basegroups.di.unipi.it/~dipierro/Didattica/TdB06/Sicurezza1.pdf · – secure email – secure transport (SSL) – IP sec – 802.11 4 Amici e nemici • wellknown in

  13

Crittografia a chiave pubblica

critt. a chiave simmetrica

• richiede sender, receiver conoscano chiave segreta comune

• Q: ma come accordarsi sulla chiave?

critt. a chiave publica• approccio radicalmente 

diverso [Diffie­Hellman76, RSA78]

• sender, receiver non condividono chiave segreta

• chiave publica nota a tutti

• chiave private solo a  receiver

Page 14: Telematica di Basegroups.di.unipi.it/~dipierro/Didattica/TdB06/Sicurezza1.pdf · – secure email – secure transport (SSL) – IP sec – 802.11 4 Amici e nemici • wellknown in

  14

Crittografia a chiave pubblica

plaintextmessage, m

ciphertextencryptionalgorithm

decryption algorithm

Bob’s public key

plaintextmessageK (m)

B+

K B+

Bob’s privatekey

K B-

m = K (K (m))B+

B-

Page 15: Telematica di Basegroups.di.unipi.it/~dipierro/Didattica/TdB06/Sicurezza1.pdf · – secure email – secure transport (SSL) – IP sec – 802.11 4 Amici e nemici • wellknown in

  15

Algoritmi crittografici a chiave pubblica

 K  ( ) and K  ( ) devono essere t.c.B B

. .

data la chiave pub K  , doverbbe essere impossibile calcolare la chiave privata K  B

B

Requisiti:

1

2

RSA: Rivest, Shamir, Adelson algorithm

+ -

K (K (m)) = m BB

- +

+

-

Page 16: Telematica di Basegroups.di.unipi.it/~dipierro/Didattica/TdB06/Sicurezza1.pdf · – secure email – secure transport (SSL) – IP sec – 802.11 4 Amici e nemici • wellknown in

  16

AutenticazioneObiettivo: Bob vuole stabilire l’identita’ di Alice

Protocollo ap1.0: Alice dice “ I am Alice”

obiettivo raggiunto??“ I am Alice”

Page 17: Telematica di Basegroups.di.unipi.it/~dipierro/Didattica/TdB06/Sicurezza1.pdf · – secure email – secure transport (SSL) – IP sec – 802.11 4 Amici e nemici • wellknown in

  17

Autenticazione

Obiettivo: Bob vuole stabilire l’identita’ di Alice

Protocol ap1.0: Alice dice “ I am Alice”

in a network,Bob can not “ see” Alice, so Trudy simply declaresherself to be

Alice

“ I am Alice”

Page 18: Telematica di Basegroups.di.unipi.it/~dipierro/Didattica/TdB06/Sicurezza1.pdf · – secure email – secure transport (SSL) – IP sec – 802.11 4 Amici e nemici • wellknown in

  18

Autenticazione: altro tentativo

Protocol ap2.0: Alice dice “ I am Alice” in un pacchetto IP contenente il suo indirizzo IP

obiettivo raggiunto??

“ I am Alice”Alice’s IP address

Page 19: Telematica di Basegroups.di.unipi.it/~dipierro/Didattica/TdB06/Sicurezza1.pdf · – secure email – secure transport (SSL) – IP sec – 802.11 4 Amici e nemici • wellknown in

  19

Autenticazione: altro tentativo

Protocol ap2.0: Alice dice “ I am Alice” in un pacchetto IP contenente il suo indirizzo IP

Trudy can createa packet

“ spoofing”Alice’ s address

“ I am Alice”Alice’s IP address

Page 20: Telematica di Basegroups.di.unipi.it/~dipierro/Didattica/TdB06/Sicurezza1.pdf · – secure email – secure transport (SSL) – IP sec – 802.11 4 Amici e nemici • wellknown in

  20

Autenticazione: altro tentativoProtocollo ap3.0: Alice dice “ I am Alice” e manda la sua password secreta per “ dimostrarlo” .

???

“ I’m Alice”Alice’ s IP addr

Alice’ s password

OKAlice’ s IP addr

Page 21: Telematica di Basegroups.di.unipi.it/~dipierro/Didattica/TdB06/Sicurezza1.pdf · – secure email – secure transport (SSL) – IP sec – 802.11 4 Amici e nemici • wellknown in

  21

Autenticazione: altro tentativoProtocollo ap3.0: Alice dice “ I am Alice” e manda la suapassword segreta per “ dimostrarlo”

playback attack: Trudy records Alice’ s packet

and laterplays it back to

Bob

“ I’m Alice”Alice’ s IP addr

Alice’ s password

OKAlice’ s IP addr

“ I’m Alice”Alice’ s IP addr

Alice’ s password

Page 22: Telematica di Basegroups.di.unipi.it/~dipierro/Didattica/TdB06/Sicurezza1.pdf · – secure email – secure transport (SSL) – IP sec – 802.11 4 Amici e nemici • wellknown in

  22

Autenticazione: un altro tentativoProtocollo ap3.1: Alice dice “ I am Alice” e manda la sua password cifrata per “ dimostrarlo” .

???

“ I’m Alice”Alice’ s IP addr

encrypted password

OKAlice’ s IP addr

Page 23: Telematica di Basegroups.di.unipi.it/~dipierro/Didattica/TdB06/Sicurezza1.pdf · – secure email – secure transport (SSL) – IP sec – 802.11 4 Amici e nemici • wellknown in

  23

Autenticazione: un altro tentativoProtocollo ap3.1: Alice dice “ I am Alice” e manda la sua password cifrata per “ dimostrarlo” .

playbackfunziona ancora!

“ I’m Alice”Alice’ s IP addr

encryptedpassword

OKAlice’ s IP addr

“ I’m Alice”Alice’ s IP addr

encryptedpassword

Page 24: Telematica di Basegroups.di.unipi.it/~dipierro/Didattica/TdB06/Sicurezza1.pdf · – secure email – secure transport (SSL) – IP sec – 802.11 4 Amici e nemici • wellknown in

  24

Autenticazione: un altro tentativoObiettivo: evitare “ playback attack”

Problemi, limiti?

Nonce: numero (R) usato solo una volta

ap4.0: Bob manda ad Alice nonce, R. Alice deve restituire R, crittato con la chiave segreta comune

“ I am Alice”

R

K (R)A-BAlice is live, and only Alice knows key to encrypt nonce, so it must be

Alice!

Page 25: Telematica di Basegroups.di.unipi.it/~dipierro/Didattica/TdB06/Sicurezza1.pdf · – secure email – secure transport (SSL) – IP sec – 802.11 4 Amici e nemici • wellknown in

  25

Autenticazione: ap5.0ap4.0 richiede chiave simmetrica condivisa• possiamo autenticare usando tecniche a chiave 

pubblica?ap5.0: usa nonce, critt. a chiave pubblica

“ I am Alice”

RBob computes

K (R)A-

“ send me your public key”

K A+

(K (R)) = RA

-K A+

and knows only Alice could have the private key, that encrypted R

such that(K (R)) = RA-

K A+

Page 26: Telematica di Basegroups.di.unipi.it/~dipierro/Didattica/TdB06/Sicurezza1.pdf · – secure email – secure transport (SSL) – IP sec – 802.11 4 Amici e nemici • wellknown in

  26

ap5.0: security holeMan (woman) in the middle attack: Trudy si finge 

Alice con Bob e Bob con Alice

I am Alice I am AliceR

TK (R)

-

Send me your public key

TK +

AK (R)

-

Send me your public key

AK +

TK (m)+

Tm = K (K (m))+

T-

Trudy gets

sends m to Alice encrypted with Alice’s public key

AK (m)+

Am = K (K (m))+

A-

R

Page 27: Telematica di Basegroups.di.unipi.it/~dipierro/Didattica/TdB06/Sicurezza1.pdf · – secure email – secure transport (SSL) – IP sec – 802.11 4 Amici e nemici • wellknown in

  27

ap5.0: security holeMan (woman) in the middle attack: Trudy si 

finge Alice con Bob e Bob con Alice

Difficile da individuare: Bob riceve tutto cio’ che manda Alice e vice versa. il problema e’ che Trudy riceve anche lei tutti i messaggi!

Page 28: Telematica di Basegroups.di.unipi.it/~dipierro/Didattica/TdB06/Sicurezza1.pdf · – secure email – secure transport (SSL) – IP sec – 802.11 4 Amici e nemici • wellknown in

  28

Intermediari di fiduciaProblema chiavi 

simmetriche:• come fanno due entita’ a 

stabilire la chiave segreta condivisa attraverso la rete?

Soluzione:• un centro di distribuzione delle 

chiavi “fidato” (KDC) agisce da intermediario tra le entita’

Problema chiavi pubbliche:

• Quando Alice ottiene la c.p. di Bob (da sito web, e­mail, ecc.), come fa a sapere che e’ la c.p. di Bob e non di Trudy?

Soluzione:• trusted certification 

authority (CA)

Page 29: Telematica di Basegroups.di.unipi.it/~dipierro/Didattica/TdB06/Sicurezza1.pdf · – secure email – secure transport (SSL) – IP sec – 802.11 4 Amici e nemici • wellknown in

  29

Key Distribution Center (KDC)• Alice, Bob devono trovare una chiave simmetrica.• KDC: server codivide c.s. differenti con ciascuno dei 

(molti) utenti registrati• Alice, Bob conoscono la propria c.s., KA­KDC KB­KDC , 

per comunicare con KDC. 

KB-KDC

KX-KDC

KY-KDC

KZ-KDC

KP-KDC

KB-KDC

KA-KDC

KA-KDC

KP-KDC

KDC

Page 30: Telematica di Basegroups.di.unipi.it/~dipierro/Didattica/TdB06/Sicurezza1.pdf · – secure email – secure transport (SSL) – IP sec – 802.11 4 Amici e nemici • wellknown in

  30

Centro distribuzione chiavi (KDC)

Aliceknows R1

Bob knows to use R1

to communicate with AliceAlice e Bob comunicano usando R1

comechiave di sessione

KDC permette a Bob, Alice di determinare la chiave simmetrica per la loro comunicazione

KDC generates R1

KB-KDC(A,R1)

KA-KDC(A,B)

KA-KDC(R1, KB-KDC(A,R1) )

Page 31: Telematica di Basegroups.di.unipi.it/~dipierro/Didattica/TdB06/Sicurezza1.pdf · – secure email – secure transport (SSL) – IP sec – 802.11 4 Amici e nemici • wellknown in

  31

Autorita’ di certificazione (CA)• CA: associa chiave pubblica a una data entita’ E.• E (persona, router) registra la sua c.p. con CA.

– E fornisce una “prova di identita’” alla CA. – CA crea un certificato che associa E alla sua c.p.– certificato riporta la firma digitale di CA– CA dice “questa e’ la c.p. di E”

Bob’ s publickey K B

+

Bob’ s identifyi

ng informati

on

digitalsignature(encrypt)

CA privat

ekey

K CA-

K B+

certificate for Bob’ s

public key, signed by CA

Page 32: Telematica di Basegroups.di.unipi.it/~dipierro/Didattica/TdB06/Sicurezza1.pdf · – secure email – secure transport (SSL) – IP sec – 802.11 4 Amici e nemici • wellknown in

  32

Autrita’ di certificazione (CA)• Quando Alice vuole la chiave pubblica di Bob:

– ottiene il certificato di Bob.– applica la chiave pubblica della CA al 

certificato di Bob, ottiene la chiave pubblica di Bob

Bob’ s public

key K B+

digitalsignature(decrypt)

CA public

key K CA+

K B+

Page 33: Telematica di Basegroups.di.unipi.it/~dipierro/Didattica/TdB06/Sicurezza1.pdf · – secure email – secure transport (SSL) – IP sec – 802.11 4 Amici e nemici • wellknown in

  33

Contenuto dei certificati• Serial number (unique to issuer)• info about certificate owner, including 

algorithm and key value itself (not shown)• info about 

certificate issuer

• valid dates• digital 

signature by issuer