SockMi: un meccanismo per la migrazione di connessioni sicure

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "SockMi: un meccanismo per la migrazione di connessioni sicure"

Transcript

1 SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 1/29 SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco Università degli Studi di Roma La Sapienza

2 Connessione sicura SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 2/29 Garantisce riservatezza alle comunicazioni tra due entità: Client Server

3 Connessione sicura SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 2/29 Garantisce riservatezza alle comunicazioni tra due entità: Il client apre una connessione TCP/IP con il server Client TCP/IP Server

4 Connessione sicura SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 2/29 Garantisce riservatezza alle comunicazioni tra due entità: Il client apre una connessione TCP/IP con il server Client SSL 01 Server Il protocollo SSL o TLS rende sicura la connessione, garantendo tre funzionalità fondamentali:

5 Connessione sicura SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 2/29 Garantisce riservatezza alle comunicazioni tra due entità: Il client apre una connessione TCP/IP con il server Client SSL 01 Server Il protocollo SSL o TLS rende sicura la connessione, garantendo tre funzionalità fondamentali: confidenzialità

6 Connessione sicura SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 2/29 Garantisce riservatezza alle comunicazioni tra due entità: Il client apre una connessione TCP/IP con il server Client SSL 01 Server Il protocollo SSL o TLS rende sicura la connessione, garantendo tre funzionalità fondamentali: confidenzialità autenticazione

7 Connessione sicura SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 2/29 Garantisce riservatezza alle comunicazioni tra due entità: Il client apre una connessione TCP/IP con il server Client SSL Server Il protocollo SSL o TLS rende sicura la connessione, garantendo tre funzionalità fondamentali: confidenzialità autenticazione affidabilità

8 Connessione sicura SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 2/29 Garantisce riservatezza alle comunicazioni tra due entità: Il client apre una connessione TCP/IP con il server Il protocollo SSL o TLS rende sicura la connessione, garantendo tre funzionalità fondamentali: confidenzialità autenticazione affidabilità Client SSL Server Non prevede la possibilità di migrare la comunicazione verso un altro sistema, mantenendo la stessa connessione

9 Migrazione di una connessione È il trasferimento di un peer dal sistema originale a un altro (obiettivo), senza effetti distruttivi sulla connessione: B SSL A C SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 3/29

10 Migrazione di una connessione È il trasferimento di un peer dal sistema originale a un altro (obiettivo), senza effetti distruttivi sulla connessione: il sistema originale (B) esporta la connessione B A C SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 3/29

11 Migrazione di una connessione È il trasferimento di un peer dal sistema originale a un altro (obiettivo), senza effetti distruttivi sulla connessione: il sistema originale (B) esporta la connessione B il sistema obiettivo (C) importa la connessione A C SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 3/29

12 Migrazione di una connessione È il trasferimento di un peer dal sistema originale a un altro (obiettivo), senza effetti distruttivi sulla connessione: il sistema originale (B) esporta la connessione B il sistema obiettivo (C) importa la connessione i pacchetti vengono rediretti verso il nuovo peer A C SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 3/29

13 Migrazione di una connessione È il trasferimento di un peer dal sistema originale a un altro (obiettivo), senza effetti distruttivi sulla connessione: il sistema originale (B) esporta la connessione B il sistema obiettivo (C) importa la connessione i pacchetti vengono rediretti verso il nuovo peer A SSL C la connessione sicura prosegue tra i sistemi A e C SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 3/29

14 SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 4/29 Considerazioni sulla migrazione La migrazione coinvolge i seguenti livelli: Network: i pacchetti IP devono essere rediretti verso il sistema obiettivo ad esempio utilizzando opportune regole di Network Address Translation (NAT)

15 SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 4/29 Considerazioni sulla migrazione La migrazione coinvolge i seguenti livelli: Network: i pacchetti IP devono essere rediretti verso il sistema obiettivo ad esempio utilizzando opportune regole di Network Address Translation (NAT) Transport: le informazioni sullo stato della connessione devono essere trasferite dal sistema che esporta verso quello che importa migrazione del socket

16 SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 4/29 Considerazioni sulla migrazione La migrazione coinvolge i seguenti livelli: Network: i pacchetti IP devono essere rediretti verso il sistema obiettivo ad esempio utilizzando opportune regole di Network Address Translation (NAT) Transport: le informazioni sullo stato della connessione devono essere trasferite dal sistema che esporta verso quello che importa migrazione del socket Application: i dati del protocollo SSL devono essere trasferiti sul sistema obiettivo migrazione del protocollo applicativo

17 Caratteristiche della soluzione proposta SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 5/29 TRASPARENZA: l estremità fissa della connessione non è consapevole della migrazione dell altra parte

18 SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 5/29 Caratteristiche della soluzione proposta TRASPARENZA: l estremità fissa della connessione non è consapevole della migrazione dell altra parte ASINCRONIA: la migrazione è indipendente dallo stato del protocollo applicativo SSL

19 SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 5/29 Caratteristiche della soluzione proposta TRASPARENZA: l estremità fissa della connessione non è consapevole della migrazione dell altra parte ASINCRONIA: la migrazione è indipendente dallo stato del protocollo applicativo SSL SIMMETRIA: la migrazione è applicabile ad entrambe le estremità di una connessione

20 SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 5/29 Caratteristiche della soluzione proposta TRASPARENZA: l estremità fissa della connessione non è consapevole della migrazione dell altra parte ASINCRONIA: la migrazione è indipendente dallo stato del protocollo applicativo SSL SIMMETRIA: la migrazione è applicabile ad entrambe le estremità di una connessione NON INTRUSIVITÀ: il meccanismo non richiede l applicazione di modifiche: al kernel Linux all implementazione OpenSSL del protocollo SSL

21 SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 6/29 Campi d applicazione Bilanciamento del carico (load balancing) difficile, se non impossibile, prevedere il numero di richieste che ogni server dovrà gestire SockMi permette il bilanciamento anche dopo che la connessione sicura è stata stabilita

22 SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 6/29 Campi d applicazione Bilanciamento del carico (load balancing) difficile, se non impossibile, prevedere il numero di richieste che ogni server dovrà gestire SockMi permette il bilanciamento anche dopo che la connessione sicura è stata stabilita Qualità del servizio (QoS) mantenere una soglia minima di qualità del servizio

23 SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 6/29 Campi d applicazione Bilanciamento del carico (load balancing) difficile, se non impossibile, prevedere il numero di richieste che ogni server dovrà gestire SockMi permette il bilanciamento anche dopo che la connessione sicura è stata stabilita Qualità del servizio (QoS) mantenere una soglia minima di qualità del servizio Tolleranza ai guasti (fault tolerance) migrare una connessione per aggirare un guasto

24 SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 6/29 Campi d applicazione Bilanciamento del carico (load balancing) difficile, se non impossibile, prevedere il numero di richieste che ogni server dovrà gestire SockMi permette il bilanciamento anche dopo che la connessione sicura è stata stabilita Qualità del servizio (QoS) mantenere una soglia minima di qualità del servizio Tolleranza ai guasti (fault tolerance) migrare una connessione per aggirare un guasto Sicurezza confinare un processo malizioso in un ambiente di esecuzione sicuro su un altro host

25 Progetto Sockpass SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 7/29 Meccanismo di migrazione basato sul passaggio di socket

26 SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 7/29 Progetto Sockpass Meccanismo di migrazione basato sul passaggio di socket Nato nel contesto della migrazione dei processi come parte del progetto REMUS (Reference Monitor for Unix Systems), un sistema per il rilevamento delle intrusioni

27 SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 7/29 Progetto Sockpass Meccanismo di migrazione basato sul passaggio di socket Nato nel contesto della migrazione dei processi come parte del progetto REMUS (Reference Monitor for Unix Systems), un sistema per il rilevamento delle intrusioni Implementazione per il kernel Linux 2.4: sockpass: modulo del kernel per inserire/estrarre socket dallo stack TCP/IP

28 SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 7/29 Progetto Sockpass Meccanismo di migrazione basato sul passaggio di socket Nato nel contesto della migrazione dei processi come parte del progetto REMUS (Reference Monitor for Unix Systems), un sistema per il rilevamento delle intrusioni Implementazione per il kernel Linux 2.4: sockpass: modulo del kernel per inserire/estrarre socket dallo stack TCP/IP sockpassd: programma demone per il trasferimento di socket al sistema obiettivo

29 Il protocollo SSL/TLS IL PROTOCOLLO SSL/TLS SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 8/29

30 Architettura del protocollo SSL SSL Handshake Change Cipher Spec Application SSL Record TCP IP Alert Application Data SSL SSL Record: incapsula i vari protocolli di livello superiore IL PROTOCOLLO SSL/TLS SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 9/29

31 Architettura del protocollo SSL SSL Handshake Change Cipher Spec Application SSL Record TCP IP Alert Application Data SSL SSL Record: incapsula i vari protocolli di livello superiore SSL Handshake: permette la negoziazione delle opzioni di sicurezza IL PROTOCOLLO SSL/TLS SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 9/29

32 Architettura del protocollo SSL SSL Handshake Change Cipher Spec Application SSL Record TCP IP Alert Application Data SSL SSL Record: incapsula i vari protocolli di livello superiore SSL Handshake: permette la negoziazione delle opzioni di sicurezza Change Cipher Spec: notifica l altro peer d istanziare i nuovi parametri di sicurezza IL PROTOCOLLO SSL/TLS SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 9/29

33 Architettura del protocollo SSL SSL Handshake Change Cipher Spec Application SSL Record TCP IP Alert Application Data SSL SSL Record: incapsula i vari protocolli di livello superiore SSL Handshake: permette la negoziazione delle opzioni di sicurezza Change Cipher Spec: notifica l altro peer d istanziare i nuovi parametri di sicurezza Alert: informa l altro peer di un errore che si è verificato IL PROTOCOLLO SSL/TLS SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 9/29

34 Architettura del protocollo SSL SSL Handshake Change Cipher Spec Application SSL Record TCP IP Alert Application Data SSL SSL Record: incapsula i vari protocolli di livello superiore SSL Handshake: permette la negoziazione delle opzioni di sicurezza Change Cipher Spec: notifica l altro peer d istanziare i nuovi parametri di sicurezza Alert: informa l altro peer di un errore che si è verificato Application Data: utilizzato dall applicazione di livello superiore per inviare e ricevere i dati attraverso il canale sicuro IL PROTOCOLLO SSL/TLS SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 9/29

35 Protocollo SSL Record Provvede alla trasmissione dei messaggi provenienti dagli strati superiori e alla consegna dei messaggi ricevuti agli strati superiori IL PROTOCOLLO SSL/TLS SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 10/29

36 Protocollo SSL Record Provvede alla trasmissione dei messaggi provenienti dagli strati superiori e alla consegna dei messaggi ricevuti agli strati superiori TRASMISSIONE: frammentazione in blocchi adeguati IL PROTOCOLLO SSL/TLS SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 10/29

37 Protocollo SSL Record Provvede alla trasmissione dei messaggi provenienti dagli strati superiori e alla consegna dei messaggi ricevuti agli strati superiori TRASMISSIONE: frammentazione in blocchi adeguati compressione IL PROTOCOLLO SSL/TLS SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 10/29

38 Protocollo SSL Record Provvede alla trasmissione dei messaggi provenienti dagli strati superiori e alla consegna dei messaggi ricevuti agli strati superiori TRASMISSIONE: frammentazione in blocchi adeguati compressione applicazione firma MAC IL PROTOCOLLO SSL/TLS SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 10/29

39 Protocollo SSL Record Provvede alla trasmissione dei messaggi provenienti dagli strati superiori e alla consegna dei messaggi ricevuti agli strati superiori TRASMISSIONE: frammentazione in blocchi adeguati compressione applicazione firma MAC cifratura IL PROTOCOLLO SSL/TLS SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 10/29

40 Protocollo SSL Record Provvede alla trasmissione dei messaggi provenienti dagli strati superiori e alla consegna dei messaggi ricevuti agli strati superiori TRASMISSIONE: frammentazione in blocchi adeguati compressione applicazione firma MAC cifratura trasmissione (stato di connessione active write) IL PROTOCOLLO SSL/TLS SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 10/29

41 Protocollo SSL Record Provvede alla trasmissione dei messaggi provenienti dagli strati superiori e alla consegna dei messaggi ricevuti agli strati superiori TRASMISSIONE: frammentazione in blocchi adeguati RICEZIONE: decifratura compressione applicazione firma MAC cifratura trasmissione (stato di connessione active write) IL PROTOCOLLO SSL/TLS SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 10/29

42 Protocollo SSL Record Provvede alla trasmissione dei messaggi provenienti dagli strati superiori e alla consegna dei messaggi ricevuti agli strati superiori TRASMISSIONE: frammentazione in blocchi adeguati compressione RICEZIONE: decifratura verifica firma MAC applicazione firma MAC cifratura trasmissione (stato di connessione active write) IL PROTOCOLLO SSL/TLS SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 10/29

43 Protocollo SSL Record Provvede alla trasmissione dei messaggi provenienti dagli strati superiori e alla consegna dei messaggi ricevuti agli strati superiori TRASMISSIONE: frammentazione in blocchi adeguati compressione applicazione firma MAC RICEZIONE: decifratura verifica firma MAC decompressione cifratura trasmissione (stato di connessione active write) IL PROTOCOLLO SSL/TLS SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 10/29

44 Protocollo SSL Record Provvede alla trasmissione dei messaggi provenienti dagli strati superiori e alla consegna dei messaggi ricevuti agli strati superiori TRASMISSIONE: frammentazione in blocchi adeguati compressione applicazione firma MAC cifratura RICEZIONE: decifratura verifica firma MAC decompressione riassemblamento dati trasmissione (stato di connessione active write) IL PROTOCOLLO SSL/TLS SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 10/29

45 Protocollo SSL Record Provvede alla trasmissione dei messaggi provenienti dagli strati superiori e alla consegna dei messaggi ricevuti agli strati superiori TRASMISSIONE: frammentazione in blocchi adeguati compressione applicazione firma MAC cifratura trasmissione (stato di connessione active write) RICEZIONE: decifratura verifica firma MAC decompressione riassemblamento dati consegna dati al livello superiore (stato di connessione active read) IL PROTOCOLLO SSL/TLS SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 10/29

46 Protocollo SSL Handshake Permette la negoziazione dei parametri di sicurezza Client 1 ClientHello 01 Server Scrittura CLIENT Lettura Act Pend Act Pend cifrario null? null? MAC null? null? chiave null? null? SERVER cifrario null? null? MAC null? null? chiave null? null? 1. Il client propone le opzioni del protocollo SSL IL PROTOCOLLO SSL/TLS SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 11/29

47 Protocollo SSL Handshake Permette la negoziazione dei parametri di sicurezza Client 1 ClientHello 01 Server ServerHello 2 Scrittura CLIENT Lettura Act Pend Act Pend cifrario null DES null DES MAC null MD5 null MD5 chiave null? null? SERVER cifrario null DES null DES MAC null MD5 null MD5 chiave null? null? 2. Il server seleziona le opzioni da utilizzare nella comunicazione IL PROTOCOLLO SSL/TLS SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 11/29

48 Protocollo SSL Handshake Permette la negoziazione dei parametri di sicurezza Client 1 ClientHello 01 Server ServerHello 2 Certificate 3 CLIENT Scrittura Lettura Act Pend Act Pend cifrario null DES null DES MAC null MD5 null MD5 chiave null? null? SERVER cifrario null DES null DES MAC null MD5 null MD5 chiave null? null? 3. Il server invia la chiave pubblica certificata IL PROTOCOLLO SSL/TLS SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 11/29

49 Protocollo SSL Handshake Permette la negoziazione dei parametri di sicurezza Client 1 ClientHello 01 Server ServerHello 2 Certificate 3 CertificateRequest 4 CLIENT Scrittura Lettura Act Pend Act Pend cifrario null DES null DES MAC null MD5 null MD5 chiave null? null? SERVER cifrario null DES null DES MAC null MD5 null MD5 chiave null? null? 4. Il server chiede al client di autenticarsi IL PROTOCOLLO SSL/TLS SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 11/29

50 Protocollo SSL Handshake Permette la negoziazione dei parametri di sicurezza Client 1 ClientHello 01 Server ServerHello 2 Certificate 3 CertificateRequest 4 ServerHelloDone 5 CLIENT Scrittura Lettura Act Pend Act Pend cifrario null DES null DES MAC null MD5 null MD5 chiave null? null? SERVER cifrario null DES null DES MAC null MD5 null MD5 chiave null? null? 5. Il server conclude la sua parte di negoziazione IL PROTOCOLLO SSL/TLS SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 11/29

51 Protocollo SSL Handshake Permette la negoziazione dei parametri di sicurezza Client 1 ClientHello 6 Certificate 01 Server ServerHello 2 Certificate 3 CertificateRequest 4 ServerHelloDone 5 CLIENT Scrittura Lettura Act Pend Act Pend cifrario null DES null DES MAC null MD5 null MD5 chiave null? null? SERVER cifrario null DES null DES MAC null MD5 null MD5 chiave null? null? 6. Il client invia la chiave pubblica certificata IL PROTOCOLLO SSL/TLS SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 11/29

52 Protocollo SSL Handshake Permette la negoziazione dei parametri di sicurezza Client 01 Server 1 ClientHello ServerHello 2 Certificate 3 CertificateRequest 4 ServerHelloDone 5 6 Certificate 7 ClientKeyExchange Scrittura CLIENT Lettura Act Pend Act Pend cifrario null DES null DES MAC null MD5 null MD5 chiave null xxx null xxx SERVER cifrario null DES null DES MAC null MD5 null MD5 chiave null xxx null xxx 7. Chiave segreta di sessione cifrata con la chiave pubblica del server IL PROTOCOLLO SSL/TLS SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 11/29

53 Protocollo SSL Handshake Permette la negoziazione dei parametri di sicurezza Client 01 Server 1 ClientHello ServerHello 2 Certificate 3 CertificateRequest 4 ServerHelloDone 5 6 Certificate 7 ClientKeyExchange 8 CertificateVerify Scrittura CLIENT Lettura Act Pend Act Pend cifrario null DES null DES MAC null MD5 null MD5 chiave null xxx null xxx SERVER cifrario null DES null DES MAC null MD5 null MD5 chiave null xxx null xxx 8. Informazioni sulla sessione firmate con la chiave privata del client (autenticazione client) IL PROTOCOLLO SSL/TLS SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 11/29

54 Protocollo SSL Handshake Permette la negoziazione dei parametri di sicurezza Client 1 ClientHello 6 Certificate 7 ClientKeyExchange 8 9 CertificateVerify ChangeCipherSpec ServerHello Certificate ServerHelloDone Server CertificateRequest 4 CLIENT Scrittura Lettura Act Pend Act Pend cifrario DES? null DES MAC MD5? null MD5 chiave xxx? null xxx SERVER cifrario null DES DES? MAC null MD5 MD5? chiave null xxx xxx? 9. Attivazione delle opzioni di sicurezza appena negoziate IL PROTOCOLLO SSL/TLS SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 11/29

55 Protocollo SSL Handshake Permette la negoziazione dei parametri di sicurezza Client 1 ClientHello 6 Certificate 7 ClientKeyExchange 8 9 CertificateVerify ChangeCipherSpec 10 Finished ServerHello Certificate ServerHelloDone Server CertificateRequest 4 11 CLIENT Scrittura Lettura Act Pend Act Pend cifrario DES? null DES MAC MD5? null MD5 chiave xxx? null xxx SERVER cifrario null DES DES? MAC null MD5 MD5? chiave null xxx xxx? 10. Il server controlla le opzioni di sicurezza attivate IL PROTOCOLLO SSL/TLS SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 11/29

56 Protocollo SSL Handshake Permette la negoziazione dei parametri di sicurezza Client 1 ClientHello 6 Certificate 7 ClientKeyExchange 8 9 CertificateVerify ChangeCipherSpec 10 Finished ServerHello Certificate ServerHelloDone ChangeCipherSpec Server CertificateRequest 4 11 CLIENT Scrittura Lettura Act Pend Act Pend cifrario DES? DES? MAC MD5? MD5? chiave xxx? xxx? SERVER cifrario DES? DES? MAC MD5? MD5? chiave xxx? xxx? 11. Attivazione delle opzioni di sicurezza appena negoziate IL PROTOCOLLO SSL/TLS SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 11/29

57 Protocollo SSL Handshake Permette la negoziazione dei parametri di sicurezza Client 1 ClientHello 6 Certificate 7 ClientKeyExchange 8 9 CertificateVerify ChangeCipherSpec 10 Finished ServerHello Certificate ServerHelloDone ChangeCipherSpec Finished Server CertificateRequest 4 11 CLIENT Scrittura Lettura Act Pend Act Pend cifrario DES? DES? MAC MD5? MD5? chiave xxx? xxx? SERVER cifrario DES? DES? MAC MD5? MD5? chiave xxx? xxx? 12. Il client controlla le opzioni di sicurezza attivate IL PROTOCOLLO SSL/TLS SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 11/29

58 Architettura del meccanismo di migrazione SockMi ARCHITETTURA DEL MECCANISMO DI MIGRAZIONE SockMi SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 12/29

59 Architettura di SockMi Il meccanismo di migrazione SockMi è piuttosto complesso e il suo funzionamento è il frutto della collaborazione di più componenti, ciascuna delle quali svolge un ruolo ben definito e circoscritto ARCHITETTURA DEL MECCANISMO DI MIGRAZIONE SockMi SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 13/29

60 Architettura di SockMi Il meccanismo di migrazione SockMi è piuttosto complesso e il suo funzionamento è il frutto della collaborazione di più componenti, ciascuna delle quali svolge un ruolo ben definito e circoscritto sockmi: modulo del kernel per l esportazione e l importazione delle strutture dati che implementano il socket TCP/IP ARCHITETTURA DEL MECCANISMO DI MIGRAZIONE SockMi SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 13/29

61 Architettura di SockMi Il meccanismo di migrazione SockMi è piuttosto complesso e il suo funzionamento è il frutto della collaborazione di più componenti, ciascuna delle quali svolge un ruolo ben definito e circoscritto sockmi: modulo del kernel per l esportazione e l importazione delle strutture dati che implementano il socket TCP/IP sockmid: programma demone per il trasferimento da un sistema a un altro dei dati della migrazione e per l esportazione e l importazione dei dati del protocollo applicativo ARCHITETTURA DEL MECCANISMO DI MIGRAZIONE SockMi SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 13/29

62 Architettura di SockMi Il meccanismo di migrazione SockMi è piuttosto complesso e il suo funzionamento è il frutto della collaborazione di più componenti, ciascuna delle quali svolge un ruolo ben definito e circoscritto sockmi: modulo del kernel per l esportazione e l importazione delle strutture dati che implementano il socket TCP/IP sockmid: programma demone per il trasferimento da un sistema a un altro dei dati della migrazione e per l esportazione e l importazione dei dati del protocollo applicativo libsockmi e libappsockmi: librerie che forniscono alle applicazioni un interfaccia al meccanismo di migrazione ARCHITETTURA DEL MECCANISMO DI MIGRAZIONE SockMi SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 13/29

63 Fasi della migrazione: Esportazione Trasferire le strutture dati del protocollo applicativo dall applicazione che esporta al demone ARCHITETTURA DEL MECCANISMO DI MIGRAZIONE SockMi SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 14/29

64 Fasi della migrazione: Esportazione Trasferire le strutture dati del protocollo applicativo dall applicazione che esporta al demone Trasferire al demone le informazioni relative al socket ARCHITETTURA DEL MECCANISMO DI MIGRAZIONE SockMi SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 14/29

65 Fasi della migrazione: Esportazione Trasferire le strutture dati del protocollo applicativo dall applicazione che esporta al demone Trasferire al demone le informazioni relative al socket Rendere immutabile il socket inibita la ricezione e la trasmissione dei segmenti TCP ARCHITETTURA DEL MECCANISMO DI MIGRAZIONE SockMi SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 14/29

66 Fasi della migrazione: Trasmissione Selezionare un host disponibile ad importare la connessione ARCHITETTURA DEL MECCANISMO DI MIGRAZIONE SockMi SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 15/29

67 Fasi della migrazione: Trasmissione Selezionare un host disponibile ad importare la connessione Inviare i dati della migrazione all host obiettivo della migrazione ARCHITETTURA DEL MECCANISMO DI MIGRAZIONE SockMi SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 15/29

68 Fasi della migrazione: Trasmissione Selezionare un host disponibile ad importare la connessione Inviare i dati della migrazione all host obiettivo della migrazione Redirigere i pacchetti IP ricevuti dal sistema originale verso l host obiettivo della migrazione tramite opportune regole di NAT (DNAT) per i pacchetti della connessione migrata B A C ARCHITETTURA DEL MECCANISMO DI MIGRAZIONE SockMi SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 15/29

69 Fasi della migrazione: Importazione Creare un socket identico a quello esportato dai dati ricevuti ARCHITETTURA DEL MECCANISMO DI MIGRAZIONE SockMi SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 16/29

70 Fasi della migrazione: Importazione Creare un socket identico a quello esportato dai dati ricevuti Rigenerare le strutture del protocollo applicativo dai dati ricevuti ARCHITETTURA DEL MECCANISMO DI MIGRAZIONE SockMi SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 16/29

71 Fasi della migrazione: Importazione Creare un socket identico a quello esportato dai dati ricevuti Rigenerare le strutture del protocollo applicativo dai dati ricevuti Associare il socket al protocollo applicativo ARCHITETTURA DEL MECCANISMO DI MIGRAZIONE SockMi SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 16/29

72 Fasi della migrazione: Importazione Creare un socket identico a quello esportato dai dati ricevuti Rigenerare le strutture del protocollo applicativo dai dati ricevuti Associare il socket al protocollo applicativo Sostituire l indirizzo IP sorgente dei pacchetti in uscita con quello dell host che ha esportato la connessione attraverso opportune regole di NAT (SNAT) per i pacchetti della connessione migrata B IP B A C ARCHITETTURA DEL MECCANISMO DI MIGRAZIONE SockMi SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 16/29

73 Migrazione di una connessione sicura Meccanismo di migrazione SockMi Applicazione sessione SSL descrittore 1 esporta sessione SSL libsockmi libappsockmi export_ssl() import_ssl() Fase d esportazione export_app_socket() import_socket() export_ssl(ssl *ssl, int state, int af, const void *to) sockmi ssl è il puntatore alla struttura SSL socket 1 state è lo stato del protocollo applicativo af è una costante che indica la famiglia dell indirizzo di rete TCP/IP Stack sockmid to è il puntatore all eventuale indirizzo di rete verso cui esportare la comunicazione sicura export buffer import buffer application handler ARCHITETTURA DEL MECCANISMO DI MIGRAZIONE SockMi SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 17/29

74 Migrazione di una connessione sicura Applicazione sessione SSL descrittore 1 Meccanismo di migrazione SockMi libappsockmi esporta sessione SSL export_ssl() import_ssl() libsockmi export_app_socket() import_socket() Fase d esportazione 1. Congelato il protocollo applicativo La libreria libappsockmi: socket 1 TCP/IP Stack sockmi esporta dati applicativi salva i dati del protocollo applicativo in un buffer di memoria apre una connessione TCP/IP con il demone sockmid export buffer import buffer sockmid application handler invia i dati del protocollo applicativo al demone tramite un messaggio HTTP ARCHITETTURA DEL MECCANISMO DI MIGRAZIONE SockMi SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 17/29

75 Migrazione di una connessione sicura Applicazione sessione SSL descrittore 1 Meccanismo di migrazione SockMi libappsockmi esporta sessione SSL export_ssl() import_ssl() libsockmi export_app_socket() import_socket() sockmi Fase d esportazione 1. Congelato il protocollo applicativo richiesta HTTP: PUT <filename> HTTP/1.0 socket 1 Application-Type: <app> esporta dati applicativi Application-State: Content-Length: User-Agent: <app_state> <data_length> libappsockmi TCP/IP Stack sockmid <protocol_data> export buffer import buffer application handler <filename>: <pid>_<fd>.<app_name> ARCHITETTURA DEL MECCANISMO DI MIGRAZIONE SockMi SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 17/29

76 Migrazione di una connessione sicura Applicazione sessione SSL descrittore 1 Meccanismo di migrazione SockMi libappsockmi esporta sessione SSL export_ssl() import_ssl() libsockmi Fase d esportazione 2. Esportazione del socket export_app_socket() import_socket() esporta socket Le informazioni sul socket vengono copiate nel modulo sockmi e associate a un header: socket 1 copia strutture socket 1 sockmi sysctl() pid è il process ID dell applicazione che esporta fd è il descrittore del socket esporta dati applicativi app è l identificativo univoco del protocollo associato al socket TCP/IP Stack sockmid state è lo stato del socket to è l indirizzo dell eventuale sistema obiettivo export buffer import buffer application handler conn è la quadrupla che identifica il socket (I src, P src, I dst, P dst ) ARCHITETTURA DEL MECCANISMO DI MIGRAZIONE SockMi SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 17/29

77 Migrazione di una connessione sicura Meccanismo di migrazione SockMi Applicazione sessione SSL descrittore 1 esporta sessione SSL libappsockmi export_ssl() import_ssl() libsockmi export_app_socket() esporta socket import_socket() Fase d esportazione sockmi socket 1 copia strutture socket 1 esporta dati applicativi Per trasferire le informazioni dal livello kernel a quello utente si utilizza un dispositivo virtuale TCP/IP Stack esporta buffer signal USR1 sockmid export buffer import buffer application handler ARCHITETTURA DEL MECCANISMO DI MIGRAZIONE SockMi SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 17/29

78 Migrazione di una connessione sicura Meccanismo di migrazione SockMi Applicazione sessione SSL descrittore 1 esporta sessione SSL libappsockmi export_ssl() import_ssl() Fase di trasmissione libsockmi Il demone: export_app_socket() import_socket() esporta socket seleziona l obiettivo della migrazione invia una richiesta in multicast socket 1 copia strutture socket 1 sockmi seleziona il primo sistema che risponde invia i dati del socket esporta dati applicativi invia i dati del protocollo applicativo (<pid>_<fd>.<app_name>) TCP/IP Stack trasmetti dati ad un altro sockmid esporta buffer export buffer import buffer sockmid application handler definisce le opportune regole di NAT inoltra i pacchetti IP relativi alla connessione migrata al sistema obiettivo della migrazione ARCHITETTURA DEL MECCANISMO DI MIGRAZIONE SockMi SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 17/29

79 Migrazione di una connessione sicura Applicazione sessione SSL descrittore 1 Meccanismo di migrazione SockMi libappsockmi esporta sessione SSL export_ssl() import_ssl() Fase di trasmissione Il demone del sistema obiettivo: libsockmi export_app_socket() esporta socket riceve i dati del socket import_socket() sockmi riceve i dati del protocollo applicativo socket 1 copia strutture socket 1 definisce le opportune regole di NAT TCP/IP Stack trasmetti dati ad un altro sockmid ricevi dati da un altro sockmid esporta buffer export buffer import buffer sockmid esporta dati applicativi application handler sostituisce l indirizzo IP sorgente con quello del sistema che ha esportato la connessione per i pacchetti relativi alla connessione importata ARCHITETTURA DEL MECCANISMO DI MIGRAZIONE SockMi SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 17/29

80 Migrazione di una connessione sicura Meccanismo di migrazione SockMi Applicazione sessione SSL descrittore 1 esporta sessione SSL libappsockmi export_ssl() import_ssl() Fase di trasmissione libsockmi export_app_socket() import_socket() esporta socket le informazioni sul socket vengono trasferite nello spazio kernel tramite l apposito dispositivo virtuale sockmi i dati del protocollo applicativo vengono salvati in un file temporaneo socket 1 copia strutture socket 1 socket 2 esporta dati applicativi le informazioni principali del protocollo vengono inserite in una lista (accesso regolato da un meccanismo di lock esclusivo) TCP/IP Stack trasmetti dati ad un altro sockmid ricevi dati da un altro sockmid esporta buffer export buffer importa buffer ioctl() import buffer sockmid application handler tipo, stato, quadrupla (I src, P src, I dst, P dst ) che indentifica il socket associato, nome del file temporaneo ARCHITETTURA DEL MECCANISMO DI MIGRAZIONE SockMi SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 17/29

81 Migrazione di una connessione sicura Meccanismo di migrazione SockMi Applicazione sessione SSL descrittore 1 esporta sessione SSL importa sessione SSL libappsockmi export_ssl() import_ssl() Applicazione libsockmi export_app_socket() esporta socket Fase d importazione import_socket() socket 1 copia strutture socket 1 sockmi L applicazione importa una o più connessioni sicure tramite la primitiva import_ssl(), specificando: socket 2 esporta dati applicativi un vettore di richieste d importazione TCP/IP Stack esporta buffer importa buffer il tempo massimo di attesa sockmid trasmetti dati ad un altro sockmid ricevi dati da un altro sockmid export buffer import buffer application handler ARCHITETTURA DEL MECCANISMO DI MIGRAZIONE SockMi SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 17/29

82 Migrazione di una connessione sicura Applicazione sessione SSL descrittore 1 Applicazione Meccanismo di migrazione SockMi libappsockmi esporta sessione SSL export_ssl() importa sessione SSL import_ssl() libsockmi esporta socket export_app_socket() import_socket() Fase d importazione 1. Importazione del protocollo applicativo La libreria libappsockmi: socket 1 copia strutture socket 1 sockmi importa dati applicativi apre una connessione TCP/IP con il demone sockmid per ogni richiesta d importazione: TCP/IP Stack esporta buffer socket 2 importa buffer esporta dati applicativi richiede, tramite un messaggio HTTP v1.1, di poter importare una connessione coerente con i criteri specificati nella richiesta trasmetti dati ad un altro sockmid ricevi dati da un altro sockmid export buffer import buffer sockmid application handler il demone controlla se è stato importato almeno un protocollo applicativo che soddisfa tutti i criteri d importazione e risponde ARCHITETTURA DEL MECCANISMO DI MIGRAZIONE SockMi SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 17/29

83 Migrazione di una connessione sicura Applicazione sessione SSL descrittore 1 Meccanismo di migrazione SockMi libappsockmi esporta sessione SSL export_ssl() importa sessione SSL import_ssl() Fase d importazione richiesta HTTP: Applicazione libsockmi export_app_socket() import_socket() esporta socket POST <app_name> HTTP/1.1 Application-Type: <app> Application-State: <prio_state> socket 1 copia strutture socket 1 sockmi importa dati applicativi Content-Length: <criteria> <crit_length> socket 2 esporta dati applicativi HTTP/ OK risposta HTTP: TCP/IP Stack esporta buffer importa buffer sockmid Content-Type: Content-Length: application/data <data_length> trasmetti dati ad un altro sockmid ricevi dati da un altro sockmid export buffer import buffer application handler <criteria><protocol_data> ARCHITETTURA DEL MECCANISMO DI MIGRAZIONE SockMi SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 17/29

84 Migrazione di una connessione sicura Meccanismo di migrazione SockMi Applicazione sessione SSL descrittore 1 esporta sessione SSL importa sessione SSL libappsockmi export_ssl() import_ssl() Fase d importazione socket 1 Applicazione sessione SSL descrittore 2 copia strutture libsockmi export_app_socket() import_socket() socket 1 sockmi esporta socket importa socket importa dati applicativi 2. Importazione del socket import_socket(): per importare il socket associato al protocollo applicativo socket 2 TCP/IP Stack imposta strutture trasmetti dati ad un altro sockmid ricevi dati da un altro sockmid esporta buffer export buffer socket 2 importa buffer import buffer sockmid esporta dati applicativi application handler per selezionare il socket associato al protocollo importato, utilizza i criteri d importazione ottenuti dal demone sockmid ARCHITETTURA DEL MECCANISMO DI MIGRAZIONE SockMi SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 17/29

85 Migrazione del protocollo SSL MIGRAZIONE DEL PROTOCOLLO SSL SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 18/29

86 OpenSSL Software open source scritto in linguaggio C MIGRAZIONE DEL PROTOCOLLO SSL SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 19/29

87 OpenSSL Software open source scritto in linguaggio C Comprende: una libreria di cifratura (libcrypto) che implementa i più popolari e sicuri: algoritmi di cifratura a chiave simmetrica algoritmi a chiave pubblica algoritmi di hash MIGRAZIONE DEL PROTOCOLLO SSL SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 19/29

88 OpenSSL Software open source scritto in linguaggio C Comprende: una libreria di cifratura (libcrypto) che implementa i più popolari e sicuri: algoritmi di cifratura a chiave simmetrica algoritmi a chiave pubblica algoritmi di hash un toolkit SSL (libssl) che implementa i protocolli: SSL versione 2.0 SSL versione 3.0 TLS versione 1.0 MIGRAZIONE DEL PROTOCOLLO SSL SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 19/29

89 Utilizzo di un canale sicuro (1) inizializzare le librerie con la primitiva SSL_library_init MIGRAZIONE DEL PROTOCOLLO SSL SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 20/29

90 Utilizzo di un canale sicuro (1) inizializzare le librerie con la primitiva SSL_library_init inizializzare il contesto SSL (SSL_CTX) cifrari supportati, algoritmi di compressione, certificati, chiavi pubbliche e private, etc... MIGRAZIONE DEL PROTOCOLLO SSL SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 20/29

91 Utilizzo di un canale sicuro (1) inizializzare le librerie con la primitiva SSL_library_init inizializzare il contesto SSL (SSL_CTX) cifrari supportati, algoritmi di compressione, certificati, chiavi pubbliche e private, etc... creare una connessione SSL a partire dal contesto SSL * SSL_new(SSL_CTX *ctx) MIGRAZIONE DEL PROTOCOLLO SSL SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 20/29

92 Utilizzo di un canale sicuro (1) inizializzare le librerie con la primitiva SSL_library_init inizializzare il contesto SSL (SSL_CTX) cifrari supportati, algoritmi di compressione, certificati, chiavi pubbliche e private, etc... creare una connessione SSL a partire dal contesto SSL * SSL_new(SSL_CTX *ctx) associare la connessione a un socket MIGRAZIONE DEL PROTOCOLLO SSL SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 20/29

93 Utilizzo di un canale sicuro (1) inizializzare le librerie con la primitiva SSL_library_init inizializzare il contesto SSL (SSL_CTX) cifrari supportati, algoritmi di compressione, certificati, chiavi pubbliche e private, etc... creare una connessione SSL a partire dal contesto SSL * SSL_new(SSL_CTX *ctx) associare la connessione a un socket eventualmente connettere il socket a un server oppure accettare una connessione da un client MIGRAZIONE DEL PROTOCOLLO SSL SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 20/29

94 Utilizzo di un canale sicuro (2) eseguire la fase di negoziazione (SSL Handshake) SSL_connect() o SSL_accept() versione protocollo, algoritmo di cifratura, algoritmo di compressione, algoritmo digest, stati di connessione, etc... MIGRAZIONE DEL PROTOCOLLO SSL SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 21/29

95 Utilizzo di un canale sicuro (2) eseguire la fase di negoziazione (SSL Handshake) SSL_connect() o SSL_accept() versione protocollo, algoritmo di cifratura, algoritmo di compressione, algoritmo digest, stati di connessione, etc... eseguire le operazioni di lettura e/o scrittura sul canale sicuro SSL_read() o SSL_write() MIGRAZIONE DEL PROTOCOLLO SSL SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 21/29

96 Utilizzo di un canale sicuro (2) eseguire la fase di negoziazione (SSL Handshake) SSL_connect() o SSL_accept() versione protocollo, algoritmo di cifratura, algoritmo di compressione, algoritmo digest, stati di connessione, etc... eseguire le operazioni di lettura e/o scrittura sul canale sicuro SSL_read() o SSL_write() chiudere il canale SSL_shutdown() MIGRAZIONE DEL PROTOCOLLO SSL SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 21/29

97 Meccanismo di migrazione La migrazione del protocollo SSL/TLS avviene copiando in un area di memoria, detta buffer di migrazione, tutte le informazioni necessarie a ricostruire la connessione sicura su un altra applicazione il buffer consiste in una successione di strutture contigue che rappresentano i dati del protocollo MIGRAZIONE DEL PROTOCOLLO SSL SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 22/29

98 Meccanismo di migrazione La migrazione del protocollo SSL/TLS avviene copiando in un area di memoria, detta buffer di migrazione, tutte le informazioni necessarie a ricostruire la connessione sicura su un altra applicazione il buffer consiste in una successione di strutture contigue che rappresentano i dati del protocollo definire cosa trasferire: solo le informazioni necessarie MIGRAZIONE DEL PROTOCOLLO SSL SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 22/29

99 Meccanismo di migrazione La migrazione del protocollo SSL/TLS avviene copiando in un area di memoria, detta buffer di migrazione, tutte le informazioni necessarie a ricostruire la connessione sicura su un altra applicazione il buffer consiste in una successione di strutture contigue che rappresentano i dati del protocollo definire cosa trasferire: solo le informazioni necessarie tutte le informazioni della connessione sicura MIGRAZIONE DEL PROTOCOLLO SSL SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 22/29

100 Meccanismo di migrazione La migrazione del protocollo SSL/TLS avviene copiando in un area di memoria, detta buffer di migrazione, tutte le informazioni necessarie a ricostruire la connessione sicura su un altra applicazione il buffer consiste in una successione di strutture contigue che rappresentano i dati del protocollo definire cosa trasferire: solo le informazioni necessarie tutte le informazioni della connessione sicura consente di migrare la connessione prima della fase di SSL Handshake permette di creare una nuova connessione sicura il sistema che importa può sostituire completamente l entità che ha esportato la connessione MIGRAZIONE DEL PROTOCOLLO SSL SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 22/29

101 API del meccanismo di migrazione La libreria libappsockmi ha un duplice scopo: separare l implementazione di SockMi dallo sviluppo delle applicazioni che lo utilizzano MIGRAZIONE DEL PROTOCOLLO SSL SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 23/29

102 API del meccanismo di migrazione La libreria libappsockmi ha un duplice scopo: separare l implementazione di SockMi dallo sviluppo delle applicazioni che lo utilizzano definire una API che nasconda i complessi meccanismi che realizzano la migrazione: MIGRAZIONE DEL PROTOCOLLO SSL SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 23/29

103 API del meccanismo di migrazione La libreria libappsockmi ha un duplice scopo: separare l implementazione di SockMi dallo sviluppo delle applicazioni che lo utilizzano definire una API che nasconda i complessi meccanismi che realizzano la migrazione: save_ssl() copia tutte le informazioni della connessione sicura in un buffer di memoria definita in app/ssl.h e implementata in app/ssl.c export_ssl() per esportare la connessione sicura specificata verso il sistema obiettivo definita in appexport.h e implementata in export_app.c invia i dati del protocollo SSL al demone sockmid MIGRAZIONE DEL PROTOCOLLO SSL SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 23/29

104 API del meccanismo di migrazione La libreria libappsockmi ha un duplice scopo: separare l implementazione di SockMi dallo sviluppo delle applicazioni che lo utilizzano definire una API che nasconda i complessi meccanismi che realizzano la migrazione: import_ssl() per importare una o più connessioni sicure contemporaneamente definita in appimport.h e implementata in import_app.c riceve i dati del protocollo SSL dal demone sockmid load_ssl() rigenera la connessione sicura a partire dalle informazioni contenute in un buffer di memoria definita in app/ssl.h e implementata in app/ssl.c MIGRAZIONE DEL PROTOCOLLO SSL SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 23/29

105 Esempi di migrazione ESEMPI DI MIGRAZIONE SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 24/29

106 Programmi di echo input stream read() ssl_echo_cli SSL_write() SSL_read() ssl_echo_srv SSL_read() SSL_write() write() Client Echo/SSL (ssl_echo_cli) output stream Canale sicuro SSL ESEMPI DI MIGRAZIONE SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 25/29

107 Programmi di echo input stream read() ssl_echo_cli SSL_write() SSL_read() ssl_echo_srv SSL_read() SSL_write() write() Client Echo/SSL (ssl_echo_cli) Server Echo/SSL (ssl_echo_srv) output stream Canale sicuro SSL ESEMPI DI MIGRAZIONE SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 25/29

108 Programmi di echo input stream read() ssl_echo_cli SSL_write() SSL_read() ssl_echo_srv SSL_read() SSL_write() write() Client Echo/SSL (ssl_echo_cli) Server Echo/SSL (ssl_echo_srv) Modalità d operazione: output stream Canale sicuro SSL normale: il programma si comporta come un echo client-ssl o server-ssl tradizionale ESEMPI DI MIGRAZIONE SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 25/29

109 Programmi di echo input stream read() ssl_echo_cli SSL_write() SSL_read() ssl_echo_srv SSL_read() SSL_write() write() Client Echo/SSL (ssl_echo_cli) Server Echo/SSL (ssl_echo_srv) Modalità d operazione: output stream Canale sicuro SSL normale: il programma si comporta come un echo client-ssl o server-ssl tradizionale importazione: il programma importa una connessione sicura in un certo stato ESEMPI DI MIGRAZIONE SockMi: un meccanismo per la migrazione di connessioni sicure Samuele Ruco p. 25/29

Corso di Sicurezza Informatica. Sicurezza Web. Ing. Gianluca Caminiti

Corso di Sicurezza Informatica. Sicurezza Web. Ing. Gianluca Caminiti Corso di Sicurezza Informatica Sicurezza Web Ing. Gianluca Caminiti SSL Sommario Considerazioni sulla Sicurezza del Web Secure Socket Layer (SSL) 3 Brevi Considerazioni sulla Sicurezza del Web Web come

Dettagli

Elementi di Sicurezza informatica

Elementi di Sicurezza informatica Elementi di Sicurezza informatica Secure Socket Layer Università degli Studi di Perugia Indice 1 1.Introduzione 2 3 Perché SSL Funzionalità Storia di SSL Introduzione Introduzione Perché SSL; Funzionalità;

Dettagli

Comunicazione tra Computer. Protocolli. Astrazione di Sottosistema di Comunicazione. Modello di un Sottosistema di Comunicazione

Comunicazione tra Computer. Protocolli. Astrazione di Sottosistema di Comunicazione. Modello di un Sottosistema di Comunicazione I semestre 03/04 Comunicazione tra Computer Protocolli Prof. Vincenzo Auletta auletta@dia.unisa.it http://www.dia.unisa.it/professori/auletta/ Università degli studi di Salerno Laurea in Informatica 2

Dettagli

Secure socket layer (SSL) Transport layer security (TLS)

Secure socket layer (SSL) Transport layer security (TLS) Servizi Sicuri per le comunicazioni in rete Secure socket layer (SSL) Transport layer security (TLS) Applicaz. TTP TCP Applicaz. TTP SSL/TLS TCP SSL: Netscape TLS:RFC 2246 Applicaz. TTPS TCP andshake Change

Dettagli

La suite di protocolli SSL

La suite di protocolli SSL Network Security Elements of Security Protocols Secure Socket Layer (SSL) Architettura Il protocollo Record Il protocollo Handshake Utilizzo di SSL nei pagamenti elettronici Limiti di SSL Sicurezza nella

Dettagli

La sicurezza del Web SSL

La sicurezza del Web SSL La sicurezza del Web SSL Politiche delle Reti e Sicurezza 2006 M.L.Maggiulli 2006 1 Web Security Grazie alla facilita di utilizzo dei web browser grafici, Internet sta sempre piu diventando un mezzo per

Dettagli

Overview. SSL, TLS e OpenSSL TCP/IP. Corso di Sicurezza su reti PARTE I: Il protocollo SSL

Overview. SSL, TLS e OpenSSL TCP/IP. Corso di Sicurezza su reti PARTE I: Il protocollo SSL SSL, TLS e OpenSSL Barbara Masucci Dipartimento di Informatica ed Applicazioni Università di Salerno masucci@dia.unisa.it http://www.dia.unisa.it/professori/masucci Overview PARTE I: Il protocollo SSL

Dettagli

Secure Simple Budget Manager

Secure Simple Budget Manager Secure Simple Budget Manager Caso di studio Reti di Calcolatori CdL: Informatica e Tecnologie per la Produzione del Software A.A. 2009 2010 Outline Obiettivi e motivazioni Analisi Progettazione dell architettura

Dettagli

Approfondimento di Marco Mulas

Approfondimento di Marco Mulas Approfondimento di Marco Mulas Affidabilità: TCP o UDP Throughput: banda a disposizione Temporizzazione: realtime o piccoli ritardi Sicurezza Riservatezza dei dati Integrità dei dati Autenticazione di

Dettagli

Lo strato di applicazione in Internet

Lo strato di applicazione in Internet Lo strato di applicazione in Internet Prof. Ing. Carla Raffaelli a.a. 2004/2005 Protocolli applicativi Sono i protocolli utilizzati dalle applicazioni per scambiarsi informazioni Esempi: HTTP per il web,

Dettagli

SECURE SOCKET LAYER FEDERICO REALI

SECURE SOCKET LAYER FEDERICO REALI SECURE SOCKET LAYER FEDERICO REALI Sommario. In questo articolo vengono esposte le principali caratteristiche del protocollo SSL. Esso è stato introdotto sin dal 1994 e rappresenta una delle soluzioni

Dettagli

Sicurezza interna alle applicazioni. Sicurezza esterna alle applicazioni. SSL: introduzione. Sicurezza nei Sistemi Informativi

Sicurezza interna alle applicazioni. Sicurezza esterna alle applicazioni. SSL: introduzione. Sicurezza nei Sistemi Informativi Sicurezza nei Sistemi Informativi La sicurezza nei protocolli di rete Ing. Orazio Tomarchio Orazio.Tomarchio@diit.unict.it Dipartimento di Ingegneria Informatica e delle Telecomunicazioni Università di

Dettagli

Mariarosaria Napolitano. Architettura TCP/IP. Corso di: Laboratorio di tecnologie informatiche e telematiche

Mariarosaria Napolitano. Architettura TCP/IP. Corso di: Laboratorio di tecnologie informatiche e telematiche Mariarosaria Napolitano Architettura TCP/IP Corso di: Laboratorio di tecnologie informatiche e telematiche Contesto e Prerequisiti Contesto E' rivolto agli studenti del V anno degli Istituti Tecnici Industriali

Dettagli

Architetture di rete. 4. Le applicazioni di rete

Architetture di rete. 4. Le applicazioni di rete Architetture di rete 4. Le applicazioni di rete Introduzione L avvento di tecnologie (hw, sw, protocolli) di rete avanzate ha permesso la nascita di architetture software molto evolute che permettono lo

Dettagli

Sommario. Introduzione alla Sicurezza Web

Sommario. Introduzione alla Sicurezza Web Sommario Introduzione alla Sicurezza Web Considerazioni generali IPSec Secure Socket Layer (SSL) e Transport Layer Security (TLS) Secure Electronic Transaction (SET) Introduzione alla crittografia Introduzione

Dettagli

Sicurezza delle applicazioni di rete

Sicurezza delle applicazioni di rete Sicurezza delle applicazioni di rete Antonio Lioy < lioy @ polito.it > Politecnico di Torino Dip. Automatica e Informatica Sicurezza di canale autenticazione (singola o mutua), integrità e segretezza solo

Dettagli

MODELLI ISO/OSI e TCP/IP

MODELLI ISO/OSI e TCP/IP PARTE I - Reti di Calcolatori ed Internet MODELLI ISO/OSI e TCP/IP Reti di Calcolatori Livelli e Servizi Il modello OSI Il modello TCP/IP Un confronto tra OSI e TCP/IP ARPANET Ethernet Reti ATM reti wireless

Dettagli

Struttura interna del sistema operativo Linux

Struttura interna del sistema operativo Linux Struttura interna del sistema operativo Linux 5. I device driver A cura di: Anna Antola Giuseppe Pozzi DEI, Politecnico di Milano anna.antola/giuseppe.pozzi@polimi.it -versione del 30 marzo 2004-1-04.-04

Dettagli

Sicurezza delle applicazioni di rete. Sicurezza di canale. Sicurezza di messaggio (o dei dati) Antonio Lioy - Politecnico di Torino (1995-2011) 1

Sicurezza delle applicazioni di rete. Sicurezza di canale. Sicurezza di messaggio (o dei dati) Antonio Lioy - Politecnico di Torino (1995-2011) 1 Sicurezza delle applicazioni di rete Antonio Lioy < lioy @ polito.it > Politecnico di Torino Dip. Automatica e Informatica Sicurezza di canale autenticazione (singola o mutua), integrità e segretezza solo

Dettagli

Cenni sulla Sicurezza in Ambienti Distribuiti

Cenni sulla Sicurezza in Ambienti Distribuiti Cenni sulla Sicurezza in Ambienti Distribuiti Cataldo Basile < cataldo.basile @ polito.it > Politecnico di Torino Dip. Automatica e Informatica Motivazioni l architettura TCP/IPv4 è insicura il problema

Dettagli

Disciplina: Sistemi e reti Classe: 5A Informatica A.S. 2015/16 Docente: Barbara Zannol ITP: Alessandro Solazzo

Disciplina: Sistemi e reti Classe: 5A Informatica A.S. 2015/16 Docente: Barbara Zannol ITP: Alessandro Solazzo Disciplina: Sistemi e reti Classe: 5A Informatica A.S. 2015/16 Docente: Barbara Zannol ITP: Alessandro Solazzo DEFINIZIONE DEGLI OBIETTIVI DISCIPLINARI DEI MODULI - SCELTA DEI CONTENUTI Modulo Unità didattiche

Dettagli

Luca Mari, Sistemi informativi applicati (reti di calcolatori) appunti delle lezioni. Architetture client/server: applicazioni client

Luca Mari, Sistemi informativi applicati (reti di calcolatori) appunti delle lezioni. Architetture client/server: applicazioni client Versione 25.4.05 Sistemi informativi applicati (reti di calcolatori): appunti delle lezioni Architetture client/server: applicazioni client 1 Architetture client/server: un esempio World wide web è un

Dettagli

Fondamenti di Internet e Reti. Antonio Capone, Matteo Cesana, Ilario Filippini, Guido Maier

Fondamenti di Internet e Reti. Antonio Capone, Matteo Cesana, Ilario Filippini, Guido Maier Antonio Capone, Matteo Cesana, Ilario Filippini, Guido Maier 4 - Livello Rete (parte ) Antonio Capone, Matteo Cesana, Ilario Filippini, Guido Maier Strato di rete e strato di trasporto Lo strato di trasporto

Dettagli

IPsec e TLS a confronto: funzioni, prestazioni ed estensioni

IPsec e TLS a confronto: funzioni, prestazioni ed estensioni IPsec e TLS a confronto: funzioni, prestazioni ed estensioni di Davide Cerri Ottobre 2001 Il materiale contenuto in questo documento è interamente tratto dalla tesi dal titolo I protocolli IPsec e TLS

Dettagli

SSL: applicazioni telematiche SSL SSL SSL. E-commerce Trading on-line Internet banking... Secure Socket Layer

SSL: applicazioni telematiche SSL SSL SSL. E-commerce Trading on-line Internet banking... Secure Socket Layer : applicazioni telematiche Secure Socket Layer E-commerce Trading on-line Internet banking... Protocollo proposto dalla Netscape Communications Corporation Garantisce confidenzialità e affidabilità delle

Dettagli

Reti di Telecomunicazione Lezione 8

Reti di Telecomunicazione Lezione 8 Reti di Telecomunicazione Lezione 8 Marco Benini Corso di Laurea in Informatica marco.benini@uninsubria.it Livello di trasporto Programma della lezione relazione tra lo strato di trasporto e lo strato

Dettagli

TCP/IP un introduzione

TCP/IP un introduzione TCP/IP un introduzione Introduzione Il successo di Internet (rate di crescita annuo > 200 %) e dovuto all uso di protocolli standard aperti (IETF) TCP/IP (Transmission Control Protocol/Internet Protocol)

Dettagli

Reti (già Reti di Calcolatori )

Reti (già Reti di Calcolatori ) Reti (già Reti di Calcolatori ) Cenni di Socket Programming Renato Lo Cigno http://disi.unitn.it/locigno/index.php/teaching-duties/computer-networks Socket API Programmazione dei socket Obiettivo:imparare

Dettagli

Elements of Security Protocols Secure Socket Layer (SSL)

Elements of Security Protocols Secure Socket Layer (SSL) Network Security Elements of Security Protocols Secure Socket Layer (SSL)!!"#$%&'&&(")! *+,-".&.#.++.,/'#."0! *+,-".&.#.++.,1)203$)4'! 5&%+%66.,0%,778,2'%,-)9):'2&%,'+'&&".2%#%! 8%:%&%,0%,778 Sicurezza

Dettagli

appunti delle lezioni Architetture client/server: applicazioni client

appunti delle lezioni Architetture client/server: applicazioni client Sistemi informativi applicati (reti di calcolatori): appunti delle lezioni Architetture client/server: applicazioni client 1 Architetture client/server: un esempio World wide web è un esempio particolarmente

Dettagli

I rischi e le misure per rendere sicure le reti VoIP. Stefano Sotgiu

I rischi e le misure per rendere sicure le reti VoIP. Stefano Sotgiu VIP(i VoIP (in)security I rischi e le misure per rendere sicure le reti VoIP Stefano Sotgiu Agenda Il VoIP e la rete telefonica tradizionale Il VoIP più in dettaglio (SIP) Le minacce nel VoIP Cosa e come

Dettagli

Esame Laboratorio di Sistemi Operativi Cognome Nome Mat.

Esame Laboratorio di Sistemi Operativi Cognome Nome Mat. Esame Laboratorio di Sistemi Operativi 2-01-2008 Il compito è costituito da domande chiuse e domande aperte. Non è consentito l uso di libri, manuali, appunti., etc. Tempo massimo 1 ora. Domande chiuse:

Dettagli

Una Introduzione a TLSv1.0

Una Introduzione a TLSv1.0 ICT Security n. 32 e 34, Marzo/Maggio 2005 p. 1 di 8 Una Introduzione a TLSv1.0 In questa rubrica abbiamo già avuto modo di descrivere protocolli ed applicazioni che sfruttano SSL/TLS (Secure Socket Layer

Dettagli

Steganografia in un. Corso di Sicurezza dei sistemi informatici Michelangelo Rinelli Anno Accademico 2005/06

Steganografia in un. Corso di Sicurezza dei sistemi informatici Michelangelo Rinelli Anno Accademico 2005/06 Steganografia in un file di testo Corso di Sicurezza dei sistemi informatici Michelangelo Rinelli Anno Accademico 2005/06 Steganografia È l arte di nascondere un messaggio all interno di un altro messaggio

Dettagli

RETI DI CALCOLATORI II

RETI DI CALCOLATORI II RETI DI CALCOLATORI II Prof. PIER LUCA MONTESSORO Ing. DAVIDE PIERATTONI Facoltà di Ingegneria Università degli Studi di Udine 2010 Pier Luca Montessoro (si veda la nota a pagina 2) 1 Nota di Copyright

Dettagli

Reti di Calcolatori. Master "Bio Info" Reti e Basi di Dati Lezione 2

Reti di Calcolatori. Master Bio Info Reti e Basi di Dati Lezione 2 Reti di Calcolatori Sommario Software di rete TCP/IP Livello Applicazione Http Livello Trasporto (TCP) Livello Rete (IP, Routing, ICMP) Livello di Collegamento (Data-Link) I Protocolli di comunicazione

Dettagli

Prova di Esame - Rete Internet (ing. Giovanni Neglia) Lunedì 24 Gennaio 2005, ore 15.00

Prova di Esame - Rete Internet (ing. Giovanni Neglia) Lunedì 24 Gennaio 2005, ore 15.00 Prova di Esame - Rete Internet (ing. Giovanni Neglia) Lunedì 24 Gennaio 2005, ore 15.00 NB: alcune domande hanno risposta multipla: si richiede di identificare TUTTE le risposte corrette. Cognome: Nome:

Dettagli

Sicurezza del File System

Sicurezza del File System Sicurezza del File System Luigi Catuogno luicat@dia.unisa.it BARONISSI 30 maggio 2002 Cos è un file system Luigi Catuogno - Sicurezza del File System 2 1 Cos è il filesystem Una parte del sistema operativo

Dettagli

La Sicurezza delle Reti. La Sicurezza delle Reti. Il software delle reti. Sistemi e tecnologie per la multimedialità e telematica.

La Sicurezza delle Reti. La Sicurezza delle Reti. Il software delle reti. Sistemi e tecnologie per la multimedialità e telematica. Sistemi e tecnologie per la multimedialità e telematica Fabio Burroni Dipartimento di Ingegneria dell Informazione Università degli Studi di Siena burronif@unisi unisi.itit La Sicurezza delle Reti La presentazione

Dettagli

Corso di Reti di Telecomunicazioni. Giovanni Schembra. Trasmissione trame su canale broadcast

Corso di Reti di Telecomunicazioni. Giovanni Schembra. Trasmissione trame su canale broadcast Indirizzi LAN e ARP Corso di Reti di Telecomunicazioni Giovanni Schembra 1 Trasmissione trame su canale broadcast I nodi di una LAN si scambiano trame su un canale broadcast: quando un nodo in una LAN

Dettagli

La sicurezza nelle reti di calcolatori

La sicurezza nelle reti di calcolatori La sicurezza nelle reti di calcolatori Contenuti del corso La progettazione delle reti Il routing nelle reti IP Il collegamento agli Internet Service Provider e problematiche di sicurezza Analisi di traffico

Dettagli

Internet e protocollo TCP/IP

Internet e protocollo TCP/IP Internet e protocollo TCP/IP Internet Nata dalla fusione di reti di agenzie governative americane (ARPANET) e reti di università E una rete di reti, di scala planetaria, pubblica, a commutazione di pacchetto

Dettagli

Introduzione. Livello applicativo Principi delle applicazioni di rete. Stack protocollare Gerarchia di protocolli Servizi e primitive di servizio 2-1

Introduzione. Livello applicativo Principi delle applicazioni di rete. Stack protocollare Gerarchia di protocolli Servizi e primitive di servizio 2-1 Introduzione Stack protocollare Gerarchia di protocolli Servizi e primitive di servizio Livello applicativo Principi delle applicazioni di rete 2-1 Pila di protocolli Internet Software applicazione: di

Dettagli

CAP9. Device drivers

CAP9. Device drivers Struttura interna del sistema operativo Linux CAP9. Device drivers Device drivers Gestori di periferiche Sono moduli software che realizzano l interfacciamento e la gestione dei dispositivi periferici

Dettagli

Sicurezza dei Sistemi Informatici Esercitazioni OpenSSL

Sicurezza dei Sistemi Informatici Esercitazioni OpenSSL Sicurezza dei Sistemi Informatici Esercitazioni OpenSSL Marco Tiloca marco.tiloca@iet.unipi.it 1 Sicurezza dei Sistemi Informatici Esercitazioni OpenSSL Cifratura chiave simmetrica (2 ore) Funzioni hash

Dettagli

REMUS REference Monitor for Unix Systems

REMUS REference Monitor for Unix Systems REMUS REference Monitor for Unix Systems http://remus.sourceforge.net/ Massimo Bernaschi IAC-CNR, CNR, Roma Luigi V. Mancini Dipartimento di Informatica Università La Sapienza di Roma Collaboratori: Ivano

Dettagli

L IDENTITY MANAGEMENT

L IDENTITY MANAGEMENT L IDENTITY MANAGEMENT Le 3 A È pratica consueta riferirsi all insieme delle tecniche di autenticazione, autorizzazione e accounting come alle 3A. Il motivo di questo accostamento non risiede semplicemente

Dettagli

SUITE PROTOCOLLI TCP/IP ( I protocolli di Internet )

SUITE PROTOCOLLI TCP/IP ( I protocolli di Internet ) PARTE 2 SUITE PROTOCOLLI TCP/IP ( I protocolli di Internet ) Parte 2 Modulo 1: Stack TCP/IP TCP/IP Protocol Stack (standard de facto) Basato su 5 livelli invece che sui 7 dello stack ISO/OSI Application

Dettagli

la trasmissione è regolata solamente dall algoritmo per il controllo del flusso prima di inviare l ACK.

la trasmissione è regolata solamente dall algoritmo per il controllo del flusso prima di inviare l ACK. 1. Considerare il problema della stima del Round Trip Time. Supporre che inizialmente RTT valga 200 ms. Il mittente invia un segmento e riceve l ACK relativo dopo 100 ms, quindi invia un altro segmento,

Dettagli

IL SECURE SOCKETS LAYER (SSL) E LA SICUREZZA NEL PROTOCOLLO TCP/IP

IL SECURE SOCKETS LAYER (SSL) E LA SICUREZZA NEL PROTOCOLLO TCP/IP IL SECURE SOCKETS LAYER (SSL) E LA SICUREZZA NEL PROTOCOLLO TCP/IP Mini lezione di reti Per comprendere a fondo l ambito nel quale ci stiamo muovendo, è fondamentale spiegare seppur brevemente e in maniera

Dettagli

Sicurezza della comunicazione. Proprietà desiderabili. Segretezza. Autenticazione

Sicurezza della comunicazione. Proprietà desiderabili. Segretezza. Autenticazione Sicurezza della comunicazione Proprietà desiderabili Segretezza Autenticazione 09CDUdc Reti di Calcolatori Sicurezza nelle Reti Integrità del messaggio Segretezza Il contenuto del messaggio può essere

Dettagli

Sicurezza degli accessi remoti. La sicurezza degli accessi remoti

Sicurezza degli accessi remoti. La sicurezza degli accessi remoti Sicurezza degli accessi remoti Antonio Lioy < lioy @ polito.it > Politecnico di Torino Dip. Automatica e Informatica Situazione standard autenticazione ed autorizzazione basate su password problema: password

Dettagli

MODELLO TCP/IP LIVELLO 4 Trasporto. Il protocollo per il controllo della trasmissione. La gestione degli errori di trasmissione

MODELLO TCP/IP LIVELLO 4 Trasporto. Il protocollo per il controllo della trasmissione. La gestione degli errori di trasmissione Prof.ssa Daniela Decembrino MODELLO /IP LIVELLO 4 Trasporto Il protocollo per il controllo della trasmissione significa Transmission Control Protocol, cioè Protocollo per il Controllo della Trasmissione.

Dettagli

Sistemi Operativi. Sistemi I/O SISTEMI DI INPUT/OUTPUT. Hardware di I/O. Interfaccia di I/O per le applicazioni. Sottosistema per l I/O del kernel

Sistemi Operativi. Sistemi I/O SISTEMI DI INPUT/OUTPUT. Hardware di I/O. Interfaccia di I/O per le applicazioni. Sottosistema per l I/O del kernel SISTEMI DI INPUT/OUTPUT 10.1 Sistemi I/O Hardware di I/O Interfaccia di I/O per le applicazioni Sottosistema per l I/O del kernel Trasformazione delle richieste di I/O Stream Prestazioni 10.2 I/O Hardware

Dettagli

Introduzione allo sniffing

Introduzione allo sniffing Introduzione allo sniffing Andrea Lanzi, Davide Marrone, Roberto Paleari Università degli Studi di Milano Facoltà di Scienze Matematiche, Fisiche e Naturali Corso di Laurea in Informatica 29 novembre 2006

Dettagli

Comunicazione tra Computer. Protocolli. Astrazione di Sottosistema di Comunicazione. Modello di un Sottosistema di Comunicazione

Comunicazione tra Computer. Protocolli. Astrazione di Sottosistema di Comunicazione. Modello di un Sottosistema di Comunicazione I semestre 04/05 Comunicazione tra Computer Protocolli Prof. Vincenzo Auletta auletta@dia.unisa.it http://www.dia.unisa.it/professori/auletta/ Università degli studi di Salerno Laurea in Informatica 1

Dettagli

ISO- OSI e architetture Client-Server

ISO- OSI e architetture Client-Server LEZIONE 9 ISO- OSI e architetture Client-Server Proff. Giorgio Valle Raffaella Folgieri giorgio.valle@unimi.it folgieri@dico.unimi.it Lez 10 modello ISO-OSI e architettura client-server 1 Nelle scorse

Dettagli

Architetture Web Protocolli di Comunicazione

Architetture Web Protocolli di Comunicazione Architetture Web Protocolli di Comunicazione Alessandro Martinelli alessandro.martinelli@unipv.it 10 Maggio 2011 Architetture Web Architetture Web Protocolli di Comunicazione Il Client Side Il Server Side

Dettagli

J+... J+3 J+2 J+1 K+1 K+2 K+3 K+...

J+... J+3 J+2 J+1 K+1 K+2 K+3 K+... Setup delle ConnessioniTCP Una connessione TCP viene instaurata con le seguenti fasi, che formano il Three-Way Handshake (perchè formato da almeno 3 pacchetti trasmessi): 1) il server si predispone ad

Dettagli

PARTE 1 richiami. SUITE PROTOCOLLI TCP/IP ( I protocolli di Internet )

PARTE 1 richiami. SUITE PROTOCOLLI TCP/IP ( I protocolli di Internet ) PARTE 1 richiami SUITE PROTOCOLLI TCP/IP ( I protocolli di Internet ) Parte 1 Modulo 1: Stack TCP/IP TCP/IP Protocol Stack (standard de facto) Basato su 5 livelli invece che sui 7 dello stack ISO/OSI Application

Dettagli

Crittografia e sicurezza delle reti

Crittografia e sicurezza delle reti Crittografia e sicurezza delle reti IPSEC Scambio di chiavi (Diffie Hellman) SSL/TLS SET Architettura di sicurezza Applicaz. (SHTTP) SSL/TLS TCP IPSEC IP applicazioni sicure (ad es. PGP, SHTTP, SFTP, ecc.)

Dettagli

Corso di Alfabetizzazione Informatica

Corso di Alfabetizzazione Informatica Corso di Alfabetizzazione Informatica Lezione 8 Francesco Fontanella Una definizione di Rete Una moderna rete di calcolatori può essere definita come: UN INSIEME INTERCONNESSO DI CALCOLATORI AUTONOMI Tipi

Dettagli

Politecnico di Milano Scuola di Ingegneria Industriale e dell Informazione. Modelli Funzionali

Politecnico di Milano Scuola di Ingegneria Industriale e dell Informazione. Modelli Funzionali Politecnico di Milano Scuola di Ingegneria Industriale e dell Informazione Modelli Funzionali 2 Il servizio di comunicazione o Date due o più entità remote o Possiamo descrivere il servizio di comunicazione

Dettagli

SICUREZZA. Sistemi Operativi. Sicurezza

SICUREZZA. Sistemi Operativi. Sicurezza SICUREZZA 14.1 Sicurezza Il Problema della Sicurezza Convalida Pericoli per i Programmi Pericoli per il Sistema Difendere i Sistemi Scoperta di Intrusioni Cifratura Esempio: Windows NT 14.2 Il Problema

Dettagli

Sistemi Operativi SICUREZZA. Sistemi Operativi. D. Talia - UNICAL 14.1

Sistemi Operativi SICUREZZA. Sistemi Operativi. D. Talia - UNICAL 14.1 SICUREZZA 14.1 Sicurezza Il Problema della Sicurezza Convalida Pericoli per i Programmi Pericoli per il Sistema Difendere i Sistemi Scoperta di Intrusioni Cifratura Esempio: Windows NT 14.2 Il Problema

Dettagli

Appendice C. C. Protocolli per comunicazioni sicure

Appendice C. C. Protocolli per comunicazioni sicure C. C.1 IPSec Il protocollo IPSec (Internet Protocol Security) è costituito da un insieme di elementi che realizzano un architettura di sicurezza a livello IP in modo trasparente rispetto alle applicazioni,

Dettagli

Connessioni di rete. Progetto di reti di Calcolatori e Sistemi Informatici - Stefano Millozzi. PdR_09010 - Stefano Millozzi

Connessioni di rete. Progetto di reti di Calcolatori e Sistemi Informatici - Stefano Millozzi. PdR_09010 - Stefano Millozzi Connessioni di rete Progetto di reti di Calcolatori e Sistemi Informatici - Stefano Millozzi 1 Socket orientato alla connessione o non orientato alla connessione 2 Socket in astratto 3 Socket modalità

Dettagli

SISTEMI OPERATIVI DISTRIBUITI

SISTEMI OPERATIVI DISTRIBUITI SISTEMI OPERATIVI DISTRIBUITI E FILE SYSTEM DISTRIBUITI 12.1 Sistemi Distribuiti Sistemi operativi di rete Sistemi operativi distribuiti Robustezza File system distribuiti Naming e Trasparenza Caching

Dettagli

Vallarino Simone. Corso di sicurezza A.A. 2003/2004 HTTPS

Vallarino Simone. Corso di sicurezza A.A. 2003/2004 HTTPS Vallarino Simone Corso di sicurezza A.A. 2003/2004 HTTPS INTRODUZIONE Per cominciare a parlare di https è necessario aprire la discussione ricordando le caratteristiche dell http: HTTP Nel sistema telematico

Dettagli

Confidenzialità e crittografia simmetrica. Contenuto. Scenario tipico. Corso di Sicurezza su Reti Uso della crittografia simmetrica

Confidenzialità e crittografia simmetrica. Contenuto. Scenario tipico. Corso di Sicurezza su Reti Uso della crittografia simmetrica Confidenzialità e crittografia simmetrica Barbara Masucci Dipartimento di Informatica ed Applicazioni Università di Salerno masucci@dia.unisa.it http://www.dia.unisa.it/professori/masucci Contenuto Uso

Dettagli

Reti di Calcolatori Servizi di Rete Laboratorio di Didattica in Rete

Reti di Calcolatori Servizi di Rete Laboratorio di Didattica in Rete Reti di Calcolatori Servizi di Rete Laboratorio di Didattica in Rete Reti di calcolatori Protocolli di Trasmissione: Il modello ISO/OSI L architettura TCP/IP Protocolli di trasmissione Un protocollo di

Dettagli

Reti di Calcolatori. Lezione 2

Reti di Calcolatori. Lezione 2 Reti di Calcolatori Lezione 2 Una definizione di Rete Una moderna rete di calcolatori può essere definita come: UN INSIEME INTERCONNESSO DI CALCOLATORI AUTONOMI Tipi di Rete Le reti vengono classificate

Dettagli

Dipartimento Affari Interni e Territoriali Direzione Centrale per i Servizi Demografici INA-SAIA. SSLProxy. Manuale Utente. versione 1.

Dipartimento Affari Interni e Territoriali Direzione Centrale per i Servizi Demografici INA-SAIA. SSLProxy. Manuale Utente. versione 1. SSLProxy Manuale Utente versione 1.0 Indice 1 Panoramica... 3 2 Installazione...4 2.1 Prerequisiti... 4 2.2 Acquisizione del pacchetto... 4 2.3 Copia dei file sulla postazione client... 4 2.4 Esecuzione

Dettagli

WINDOWS TERMINAL SERVER PER L ACCESSO REMOTO AL SISTEMA DI PROTOCOLLO INFORMATICO

WINDOWS TERMINAL SERVER PER L ACCESSO REMOTO AL SISTEMA DI PROTOCOLLO INFORMATICO Servizi per l e-government nell università Federico II WINDOWS TERMINAL SERVER PER L ACCESSO REMOTO AL SISTEMA DI PROTOCOLLO INFORMATICO CONNESSIONE_TERMINAL_SERVER PAG. 1 DI 13 Indice 1. Premessa...3

Dettagli

Principi di crittografia Integrità dei messaggi Protocolli di autenticazione Sicurezza nella pila di protocolli di Internet: PGP, SSL, IPSec

Principi di crittografia Integrità dei messaggi Protocolli di autenticazione Sicurezza nella pila di protocolli di Internet: PGP, SSL, IPSec Crittografia Principi di crittografia Integrità dei messaggi Protocolli di autenticazione Sicurezza nella pila di protocolli di Internet: PGP, SSL, IPSec Elementi di crittografia Crittografia: procedimento

Dettagli

OpenVPN: un po di teoria e di configurazione

OpenVPN: un po di teoria e di configurazione Università degli Studi di Milano Facoltà di Scienze Matematiche, Fisiche e Naturali Corso di Laurea in Informatica 10 dicembre 2004 Sommario 1 Introduzione: definizione e utilizzo delle VPN 2 3 4 5 Sommario

Dettagli

iseries Informazioni preliminari su Client Access Express

iseries Informazioni preliminari su Client Access Express iseries Informazioni preliminari su Client Access Express iseries Informazioni preliminari su Client Access Express ii iseries: Informazioni preliminari su Client Access Express Indice Parte 1. Informazioni

Dettagli

Servizio Sistemi Informativi SPERIMENTAZIONE DI RETI PRIVATE VIRTUALI CON L'UTILIZZO DI SOFTWARE OPEN SOURCE

Servizio Sistemi Informativi SPERIMENTAZIONE DI RETI PRIVATE VIRTUALI CON L'UTILIZZO DI SOFTWARE OPEN SOURCE Servizio Sistemi Informativi SPERIMENTAZIONE DI RETI PRIVATE VIRTUALI CON L'UTILIZZO DI SOFTWARE OPEN SOURCE Redatto: Nucleo Gestione Innovazione e fornitori IT Versione: 1.0 Data emissione: 9/11/2006

Dettagli

Tecniche di Comunicazione Multimediale

Tecniche di Comunicazione Multimediale Tecniche di Comunicazione Multimediale Standard di Comunicazione Multimediale Le applicazioni multimediali richiedono l uso congiunto di diversi tipi di media che devono essere integrati per la rappresentazione.

Dettagli

Uso di sniffer ed intercettazione del traffico IP

Uso di sniffer ed intercettazione del traffico IP Uso di sniffer ed intercettazione del traffico IP Massimo Bernaschi Istituto per le Applicazioni del Calcolo Mauro Picone Consiglio Nazionale delle Ricerche Viale del Policlinico, 137-00161 Rome - Italy

Dettagli

SISTEMI DI ELABORAZIONE

SISTEMI DI ELABORAZIONE SISTEMI DI ELABORAZIONE CORSO DI LAUREA MAGISTRALE IN INGEGNERIA ELETTRONICA SPECIFICHE DI PROGETTO A.A. 2011/2012 Il progetto consiste nello sviluppo di un applicazione client/server. Client e server

Dettagli

Indice. Introduzione 2. 1.1.1 Collegamento iniziale 3. 1.1.2 Identificazione della sede operativa (sede di lavoro) 5

Indice. Introduzione 2. 1.1.1 Collegamento iniziale 3. 1.1.2 Identificazione della sede operativa (sede di lavoro) 5 S.I.L. Sintesi Comunicazioni Obbligatorie [COB] Import Massivo XML Agosto 2009 Indice Argomento Pag. Introduzione 2 1.1.1 Collegamento iniziale 3 1.1.2 Identificazione della sede operativa (sede di lavoro)

Dettagli

TECNOLOGIE E PROGETTAZIONE DI SISTEMI INFORMATICI E DI TELECOMUNICAZIONI

TECNOLOGIE E PROGETTAZIONE DI SISTEMI INFORMATICI E DI TELECOMUNICAZIONI TECNOLOGIE E PROGETTAZIONE DI SISTEMI INFORMATICI E DI TELECOMUNICAZIONI Confronto tra ISO-OSI e TCP/IP, con approfondimento di quest ultimo e del livello di trasporto in cui agiscono i SOCKET. TCP/IP

Dettagli

Corso di Laurea in Informatica Esame di Reti Prof. Panzieri frame con source address uguale a MAC_UNI X X X X X

Corso di Laurea in Informatica Esame di Reti Prof. Panzieri frame con source address uguale a MAC_UNI X X X X X Corso di Laurea in Informatica Esame di Reti Prof. Panzieri ESERCIZI - - - - - - - - - - - - - Esercizio 1 Dato un host dotato di una scheda di rete (network adaptor) per (802.3 (Ethernet), e con uno stack

Dettagli

Strato di trasporto. Livello di applicazione SAP. Livello di trasporto. Livello di rete SAP

Strato di trasporto. Livello di applicazione SAP. Livello di trasporto. Livello di rete SAP Strato di trasporto Lo strato di trasporto si colloca al livello 4 dello strato ISO-OSI e svolge il compito di mettere in comunicazione diversi processi software. La comunicazione tra applicazioni avviene

Dettagli

Laboratorio di Reti, Corsi A e B. Text-Twist. Progetto di Fine Corso A.A. 2016/17

Laboratorio di Reti, Corsi A e B. Text-Twist. Progetto di Fine Corso A.A. 2016/17 Laboratorio di Reti, Corsi A e B Text-Twist Progetto di Fine Corso A.A. 2016/17 1.Descrizione del problema Il progetto consiste nello sviluppo di un gioco multiplayer online. All inizio di una partita

Dettagli

Internet (- working). Le basi.

Internet (- working). Le basi. Internet (- working). Le basi. 1 GABRIELLA PAOLINI (GARR) 18 OTTOBRE 2011 Capire come funziona Internet 2 FACCIAMO UN PASSO INDIETRO Internet È un insieme di reti interconnesse fra di loro su tutto il

Dettagli

Firma Digitale Procedura Rinnovo

Firma Digitale Procedura Rinnovo Firma Digitale Procedura Rinnovo Versione: 0.01 Aggiornata al: 16.04.2014 Premessa La procedura di rinnovo dei certificati di firma digitale può essere avviata da 6 mesi prima della scandenza, fino ad

Dettagli

Oxatis DataPlug. Per Windows XP, Windows Vista, Windows 7, Windows 8 e Windows 10. Manuale d uso della console Danea/EasyFatt

Oxatis DataPlug. Per Windows XP, Windows Vista, Windows 7, Windows 8 e Windows 10. Manuale d uso della console Danea/EasyFatt Oxatis DataPlug Per Windows XP, Windows Vista, Windows 7, Windows 8 e Windows 10 Manuale d uso della console Danea/EasyFatt Indice Introduzione... 3 Configurazione della console... 4 Utilizzo della console...

Dettagli

La sicurezza nel Web

La sicurezza nel Web La sicurezza nel Web Protezione vs. Sicurezza Protezione: garantire un utente o un sistema della non interazione delle attività che svolgono in unix ad esempio i processi sono protetti nella loro esecuzione

Dettagli

Il sistema di I/O. Sistemi Operativi 13.1

Il sistema di I/O. Sistemi Operativi 13.1 Il sistema di I/O Hardware di I/O Interfaccia di I/O per le applicazioni Sottosistema per l I/O del kernel Trasformazione delle richieste di I/O Prestazioni 13.1 Introduzione Un elaborazione eseguita da

Dettagli

Reti di Calcolatori. Il software

Reti di Calcolatori. Il software Reti di Calcolatori Il software Lo Stack Protocollare Application: supporta le applicazioni che usano la rete; Transport: trasferimento dati tra host; Network: instradamento (routing) di datagram dalla

Dettagli

UDP. Livello di Trasporto. Demultiplexing dei Messaggi. Esempio di Demultiplexing

UDP. Livello di Trasporto. Demultiplexing dei Messaggi. Esempio di Demultiplexing a.a. 2002/03 Livello di Trasporto UDP Descrive la comunicazione tra due dispositivi Fornisce un meccanismo per il trasferimento di dati tra sistemi terminali (end user) Prof. Vincenzo Auletta auletta@dia.unisa.it

Dettagli

Corso di Sistemi di Elaborazione delle informazioni. Reti di calcolatori 2 a lezione a.a. 2009/2010 Francesco Fontanella

Corso di Sistemi di Elaborazione delle informazioni. Reti di calcolatori 2 a lezione a.a. 2009/2010 Francesco Fontanella Corso di Sistemi di Elaborazione delle informazioni Reti di calcolatori 2 a lezione a.a. 2009/2010 Francesco Fontanella Una definizione di Rete Una moderna rete di calcolatori può essere definita come:

Dettagli

MODELLI ISO/OSI e TCP/IP

MODELLI ISO/OSI e TCP/IP D. Talia RETI DI CALCOLATORI - UNICAL 1 Reti di Calcolatori MODELLI ISO/OSI e TCP/IP D. Talia RETI DI CALCOLATORI - UNICAL 2 Reti di Calcolatori Livelli e Servizi Il modello OSI Il modello TCP/IP Un confronto

Dettagli

Architettura a strati dei protocolli di comunicazione

Architettura a strati dei protocolli di comunicazione Capitolo 10 Architettura a strati dei protocolli di comunicazione Tramite le reti di comunicazione piú host possono essere messi in grado di comunicare, permettendo il trasferimento di dati di diverso

Dettagli

Corso di Laurea in Scienze e Tecnologie Chimiche corso di Informatica Generale

Corso di Laurea in Scienze e Tecnologie Chimiche corso di Informatica Generale Corso di Laurea in Scienze e Tecnologie Chimiche corso di Informatica Generale Paolo Mereghetti DISCo Dipartimento di Informatica, Sistemistica e Comunicazione Internet (Parte 1) Reti di Computer Cosa

Dettagli

Internet Security: Secure Socket Layer

Internet Security: Secure Socket Layer Introduction Internet Security: Secure Socket Layer! Security in the Internet: " at which (OSI, TCP/IP) level? Ozalp Babaoglu ALMA MATER STUDIORUM UNIVERSITA DI BOLOGNA Babaoglu 2001-2007 Sicurezza 2 Introduction

Dettagli

Operazioni di I/O. Schema di collegamento fra dispositivi periferici e CPU

Operazioni di I/O. Schema di collegamento fra dispositivi periferici e CPU Operazioni di I/O 1 Schema di collegamento fra dispositivi periferici e CPU Memoria CPU buffer interfaccia Registro di controllo Registro Di stato Unità di controllo Dispositivo fisico 2 1 Unità di interfaccia

Dettagli

Cenni di programmazione distribuita in C++ Mauro Piccolo piccolo@di.unito.it

Cenni di programmazione distribuita in C++ Mauro Piccolo piccolo@di.unito.it Cenni di programmazione distribuita in C++ Mauro Piccolo piccolo@di.unito.it Socket Nei sistemi operativi moderni i servizi disponibili in rete si basano principalmente sul modello client/server. Tale

Dettagli