La sicurezza nelle reti di calcolatori - DPIA Udine...

Post on 18-Feb-2019

228 views 0 download

Transcript of La sicurezza nelle reti di calcolatori - DPIA Udine...

La sicurezza nelle reti di calcolatoriLa sicurezza nelle La sicurezza nelle reti di calcolatorireti di calcolatori

Contenuti del corsoContenuti del corsoLa progettazione delle retiLa progettazione delle reti

Il routing nelle reti IPIl routing nelle reti IP

Il collegamento agli Internet Service Provider e problematiche di sicurezza

Il collegamento agli Internet Service Provider e problematiche di sicurezza

Analisi di traffico e dei protocolli applicativiAnalisi di traffico e dei protocolli applicativi

Multimedialità in reteMultimedialità in rete

Tecnologie per le reti futureTecnologie per le reti future

Contenuti del corsoContenuti del corsoLa progettazione delle retiLa progettazione delle reti

Il routing nelle reti IPIl routing nelle reti IP

Il collegamento agli Internet Service Provider e problematiche di sicurezza

Il collegamento agli Internet Service Provider e problematiche di sicurezza

Analisi di traffico e dei protocolli applicativiAnalisi di traffico e dei protocolli applicativi

Multimedialità in reteMultimedialità in rete

Tecnologie per le reti futureTecnologie per le reti future

Argomenti della lezioneArgomenti della lezione

AutenticazioneAutenticazione

Integrità dei messaggiIntegrità dei messaggi

Sicurezza nell’infrastruttura di rete: VPN, IPsecSicurezza nell’infrastruttura di rete: VPN, IPsec

Sicurezza nel livello di trasporto: SSLSicurezza nel livello di trasporto: SSL

Sicurezza a livello applicativo: SSH, SHTTP, secure copy, SETSicurezza a livello applicativo: SSH, SHTTP, secure copy, SET

AutenticazioneAutenticazione

Esempi di possibili attacchi:Esempi di possibili attacchi:IP spoofingIP spoofing

AliceAlice

IP di Trudy:158.110.253.254IP di Trudy:158.110.253.254

IP di Bob:158.110.254.1IP di Bob:158.110.254.1

IP mittente:158.110.254.1

HELLO,BOB

AutenticazioneAutenticazione

Esempi di possibili attacchi:Esempi di possibili attacchi:Lettura delle password in chiaroLettura delle password in chiaro

PWD:5XY7ZW

HELLO,BOB

AliceAlice

BobBob

TrudyTrudy

AutenticazioneAutenticazione

Esempi di possibili attacchi:Esempi di possibili attacchi:Lettura delle password in chiaroLettura delle password in chiaro

PWD:5XY7ZW

HELLO,BOB

AliceAlice

BobBob

TrudyTrudy

AutenticazioneAutenticazione

Lettura e riutilizzo di passwordcifrate (attacco di replica)Lettura e riutilizzo di passwordcifrate (attacco di replica)

PWD:lovealice

??

PWD:%&$#*@

Esempi di possibili attacchi:Esempi di possibili attacchi:

AliceAlice

BobBob

TrudyTrudy

HELLO,BOB

AutenticazioneAutenticazione

AliceAlice

BobBob

PWD:%&$#*@

HELLO,BOB

TrudyTrudy

Lettura e riutilizzo di passwordcifrate (attacco di replica)Lettura e riutilizzo di passwordcifrate (attacco di replica)

Esempi di possibili attacchi:Esempi di possibili attacchi:

Protocollo di autenticazione a chiave simmetrica basato

su nonce

Protocollo di autenticazione a chiave simmetrica basato

su nonce

BobAlice

sono Alice!sono Alice!

KAB (R)KAB (R)

RR

Protocollo di autenticazione a chiave pubblica

Protocollo di autenticazione a chiave pubblica

sono Alice!sono Alice!

dA (R)dA (R)

RR

chiave pubblica?

chiave pubblica?

eAeA

BobAlice

Protocollo di autenticazione a chiave pubblica (fallimento)Protocollo di autenticazione

a chiave pubblica (fallimento)

Trudy Bob

dT (R)dT (R)

RR

chiave pubblica?

chiave pubblica?

eTeT

sono Alice!sono Alice!

Man in the middleMan in the middle

BobBob

dT (R)dT (R)RR

chiave pubblica?

chiave pubblica?

eTeT

TrudyTrudy

AliceAlice

sono Alice!sono Alice! sono Alice!sono Alice!

dA (R)dA (R)RR

chiave pubblica?

chiave pubblica?

eAeA

Man in the middleMan in the middle

dati cifrati con eTdati cifrati con eTdati cifrati con eAdati cifrati con eA

BobBobTrudyTrudyAliceAlice

Trudy riceve e decifra tutti i dati trasmessi

Trudy riceve e decifra tutti i dati trasmessi

Alice e Bob non si accorgono di nulla!

Alice e Bob non si accorgono di nulla!

Autenticazione basata su crittografiaAutenticazione basata su crittografia

Richiede distribuzione sicura delle chiaviRichiede distribuzione sicura Richiede distribuzione sicura delle chiavidelle chiavi

Crittografia a chiavi simmetriche: serve intermediario di fiducia (KDC, Key Distribution Center)

Crittografia a chiavi simmetriche: Crittografia a chiavi simmetriche: serve intermediario di fiducia serve intermediario di fiducia (KDC, (KDC, Key DistributionKey Distribution Center)Center)

Crittografia a chiave pubblica:CA (Certification Authority)Crittografia a chiave pubblica:Crittografia a chiave pubblica:CA (CA (Certification AuthorityCertification Authority))

Key Distribution CenterKey Distribution Center

Chiave simmetrica condivisa tra ogni utente registrato e il KDCChiave simmetrica condivisa tra ogni utente registrato e il KDC

Il KDC genera ed invia una chiave simmetrica per singola sessioneIl KDC genera ed invia una chiave simmetrica per singola sessione

Key Distribution CenterKey Distribution Center

Il KDC invia anche ad Alice la chiave di sessione e l’identificativo di Alice cifrati con la chiave di Bob, che serviranno ad Alice per farsi autenticare da Bob e per trasmettergli la chiave di sessione

Il KDC invia anche ad Alice la chiave di sessione e l’identificativo di Alice cifrati con la chiave di Bob, che serviranno ad Alice per farsi autenticare da Bob e per trasmettergli la chiave di sessione

Key Distribution CenterKey Distribution Center

KB-KDC(“Alice”, R1)KB-KDC(“Alice”, R1)

Dati cifrati con R1Dati cifrati con R1

KA-KDC (“Alice”, “Bob”)KA-KDC (“Alice”, “Bob”)KDCKDC

BobBob

AliceAlice

KA-KDC (R1, KB-KDC(“Alice”, R1))KA-KDC (R1, KB-KDC(“Alice”, R1))

Certification AuthorityCertification Authority

Garantisce la corrispondenza entità - chiave pubblicaGarantisce la corrispondenza entità - chiave pubblica

Crea un certificato per ogni entità registrata (standard X.509 e RFC 1422)

Crea un certificato per ogni entità registrata (standard X.509 e RFC 1422)

Pubblica i certificati in siti noti senza possibilità di contraffazione

Pubblica i certificati in siti noti senza possibilità di contraffazione

IntegritàIntegrità

Cifratura del messaggio con chiave pubblica del destinatario

Cifratura del messaggio con chiave pubblica del destinatario

ABCD

testo in chiaro

testo in chiaro

%&*#

testo cifratotesto

cifratochiavepubblica di Bob

chiavepubblica di Bob

BobBobAliceAlice

tempi di cifratura/decifraturatroppo lunghitempi di cifratura/decifraturatroppo lunghi

Cifratura del solo digest (riassunto)Cifratura del solo digest (riassunto)

Problema:Problema:

IntegritàIntegrità

Cifratura del messaggio con chiave pubblica del destinatario

Cifratura del messaggio con chiave pubblica del destinatario

Digest del messaggioDigest del messaggio

Stringa di lunghezza fissaStringa di lunghezza fissa

Generata con funzione di hash H(m)Generata con funzione di hash H(m)

Proprietà:Proprietà:

Non si può trovare y tale che H(y)=xNon si può trovare y tale che H(y)=x

Non si possono trovare duemessaggi x e y tali che H(x)=H(y)Non si possono trovare duemessaggi x e y tali che H(x)=H(y)

Algoritmo MD5Algoritmo MD5

Attualmente molto usatoAttualmente molto usato

RFC 1321RFC 1321

Produce un digest di 128 bitProduce un digest di 128 bit

Processo a 4 fasiProcesso a 4 fasi

Digest del messaggioDigest del messaggio

messaggiomessaggiodigest

in chiarodigest

in chiaro

chiaveprivata del mittente

chiaveprivata del mittente

digestcifratodigestcifratospedizionespedizione

Digest del messaggioDigest del messaggio

chiavepubblica del

mittente

chiavepubblica del

mittentedigestcifratodigestcifrato

digestin chiarodigest

in chiaro

messaggiomessaggiodigest

in chiarodigest

in chiaro

con

fron

toco

nfro

nto

Può essere usatocome firma digitalePuò essere usato

come firma digitale

Estensioni di TCP/IP per la sicurezzaEstensioni di TCP/IP per la sicurezza

HTTPHTTP FTPFTP SMTPSMTP

AHAH ESPESPIPsecIPsec

TCPTCP

Nell’infrastruttura di reteNell’infrastruttura di rete

Nel livellodi trasportoNel livello

di trasporto

Estensioni di TCP/IP per la sicurezzaEstensioni di TCP/IP per la sicurezza

HTTPHTTP FTPFTP SMTPSMTP

TCPTCP

SSLSSL

IPIP

Estensioni di TCP/IP per la sicurezzaEstensioni di TCP/IP per la sicurezza

TCPTCP

HTTPHTTP SMTPSMTP

IPIP

SETSET PGPPGPSS--HTTPHTTPS/MIMES/MIME

Nelle applicazioniNelle applicazioni

VPN (Virtual Private Network)VPN (Virtual Private Network)

Traffico privato su parte di infrastruttura pubblica

(tipicamente IP)

Traffico privato su parte di infrastruttura pubblica

(tipicamente IP)

VPN (Virtual Private Network)VPN (Virtual Private Network)

Trasparenza alle applicazioniTrasparenza alle applicazioniRiservatezzaRiservatezza

Sicurezza (non accessibile a chiunque)Sicurezza (non accessibile a chiunque)

Requisiti:Requisiti:

Esempio: ExtranetEsempio: Extranet

Modelli di VPNModelli di VPN

OverlayOverlay

PeersPeers

OverlayOverlay

I router della rete non sono a conoscenza dell’esistenza della VPN

I router della rete non sono a conoscenza dell’esistenza della VPN

Realizzazione mediante tunnelingRealizzazione mediante tunneling

Overhead di imbustamento(può richiedere frammentazione)

Perdita della QoS

Overhead di imbustamento(può richiedere frammentazione)

Perdita della QoS

Problemi:Problemi:

OverlayOverlay

Routing potenzialmente non efficienteRouting potenzialmente non efficiente

Problemi:Problemi:

tunnelingtunneling

non utilizzatonon utilizzato

tunnelingtunneling

PeersPeers

Tutti i router della rete conoscono e gestiscono la VPNTutti i router della rete conoscono e gestiscono la VPN

Routing classicoRouting classico

Incompatibilità con piano di indirizzamento privato

Più difficile garantire la sicurezza

Incompatibilità con piano di indirizzamento privato

Più difficile garantire la sicurezza

Problemi:Problemi:

IPsecIPsec

Famiglia di protocolli per la sicurezza al livello 3 (RFC 2401 e RFC 2411)

Famiglia di protocolli per la sicurezza al livello 3 (RFC 2401 e RFC 2411)

IPsecIPsec

AH(Authentication Header)

AH(Authentication Header)

Protocolli principali:Protocolli principali:

Autenticazione della sorgente eintegrità dei messaggi

Autenticazione della sorgente eintegrità dei messaggi

IPsecIPsec

ESP(Encapsulation Security Payload)

ESP(Encapsulation Security Payload)

Autenticazione, integrità esegretezza

Autenticazione, integrità esegretezza

Protocolli principali:Protocolli principali:

IPsecIPsec

SA(Security Association)canale unidirezionale

SA(Security Association)canale unidirezionale

Costruisce una connessione logica a livello 3:

Costruisce una connessione logica a livello 3:

Security AssociationSecurity Association

Identificatore a 32 bit dellaconnessione (SPI: SecurityParameter Index)

Identificatore a 32 bit dellaconnessione (SPI: SecurityParameter Index)

Indirizzo IP del mittenteIndirizzo IP del mittente

Identificatore del protocollodi sicurezza (AH o ESP)Identificatore del protocollodi sicurezza (AH o ESP)

Identificata da:Identificata da:

Authentication Header (AH)Authentication Header (AH)

protocollo = 51protocollo = 51

headerheaderIPIP AHAH segmento TCP/UDPsegmento TCP/UDP

contiene l’informazione originale di protocollo e

le informazioni SA

contiene l’informazione originale di protocollo e

le informazioni SA

Authentication Header (AH)Authentication Header (AH)

headerheaderIPIP AHAH segmento TCP/UDPsegmento TCP/UDP

contiene un digest deldatagram IP originale

firmato con DES, MD5 o SHA

contiene un digest deldatagram IP originale

firmato con DES, MD5 o SHA

Authentication Header (AH)Authentication Header (AH)

headerheaderIPIP AHAH segmento TCP/UDPsegmento TCP/UDP

contiene un numero di sequenza su 32 bit per ciascun datagram (difesa da attacchi di replica e

man-in-the-middle)

contiene un numero di sequenza su 32 bit per ciascun datagram (difesa da attacchi di replica e

man-in-the-middle)

Encapsulation Security Payload (ESP)

Encapsulation Security Payload (ESP)

protocollo = 50protocollo = 50 digestdigest

headerheaderIPIP

headerheaderESPESP

segmentosegmentoTCP/UDPTCP/UDP

trailertrailerESPESP

autent.autent.ESPESP

cifratocifrato

autenticatoautenticato

Protocolli di gestione di IPsecProtocolli di gestione di IPsec

Scambio di chiaviScambio di chiavi

Protocollo IKE: Internet Key Exchange (RFC 2409)Protocollo IKE: Internet Key Exchange (RFC 2409)

Protocolli di gestione di IPsecProtocolli di gestione di IPsec

Procedure per stabilire einterrompere le SAProcedure per stabilire einterrompere le SA

Protocollo ISKMP: Internet Security Association and Key Management Protocol (RFC 2407 e RFC 2408)

Protocollo ISKMP: Internet Security Association and Key Management Protocol (RFC 2407 e RFC 2408)

Tunneling con IPsecTunneling con IPsec

AHAHAH

nuovonuovoheaderheader

IPIPAHAH segmentosegmento

TCP/UDPTCP/UDP

headerheaderIPIP

originaleoriginale

Tunneling con IPsecTunneling con IPsec

ESPESPESP

nuovonuovoheaderheader

IPIP

headerESP

segmentosegmentoTCP/UDPTCP/UDP

headerheaderIPIP

originaleoriginale

trailerESP

autent.ESP

cifratocifrato

autenticatoautenticato

SSL e TSLSSL e TSL

SSL (Secure Socket Layer): cifratura e autenticazione fra client e server Web (Netscape)

SSL (Secure Socket Layer): cifratura e autenticazione fra client e server Web (Netscape)

TSL (Transport Layer Security): RFC 2246 basato su SSLTSL (Transport Layer Security): RFC 2246 basato su SSL

Applicazione tipica: commercio elettronicoApplicazione tipica: commercio elettronico

Autenticazione SSLAutenticazione SSL

Il browser contiene lista diCertification Authorities fidateIl browser contiene lista diCertification Authorities fidate

Il browser autentica il server prima dell’invio dei dati(es. numero di carta di credito)

Il browser autentica il server prima dell’invio dei dati(es. numero di carta di credito)

È anche possibile l’autenticazionedel client da parte del serverÈ anche possibile l’autenticazionedel client da parte del server

SSL e TSLSSL e TSL

Le informazioni scambiate all’interno di una sessione SSLsono cifrate

Le informazioni scambiate all’interno di una sessione SSLsono cifrate

Utilizzo di chiavi simmetriche scambiate con chiavi pubblicheRSA

Utilizzo di chiavi simmetriche scambiate con chiavi pubblicheRSA

Secure Electronic Transaction (SET)

Secure Electronic Transaction (SET)

Sviluppato in origine da Visa International e MasterCard International

Sviluppato in origine da Visa International e MasterCard International

Limitato a messaggi inerenti a transazioni commercialiLimitato a messaggi inerenti a transazioni commerciali

Coinvolge (e certifica) acquirente, venditore e banca del venditoreCoinvolge (e certifica) acquirente, venditore e banca del venditore

La sicurezza nelle reti di calcolatoriLa sicurezza nelle La sicurezza nelle reti di calcolatorireti di calcolatori