Reti di calcolatori e sicurezza informatica

85
Reti di calcolatori Reti di calcolatori e sicurezza informatica e sicurezza informatica Politecnico di Milano Facoltà del Design – Bovisa Prof. Gianluca Palermo Dipartimento di Elettronica e Informazione [email protected] http://home.dei.polimi/gpalermo

description

Reti di calcolatori e sicurezza informatica. Politecnico di Milano Facoltà del Design – Bovisa Prof. Gianluca Palermo Dipartimento di Elettronica e Informazione [email protected] http://home.dei.polimi/gpalermo. Indice . Fondamenti di Reti di Calcolatori Reti TCP/IP - Internet - PowerPoint PPT Presentation

Transcript of Reti di calcolatori e sicurezza informatica

Page 1: Reti di calcolatori  e sicurezza informatica

Reti di calcolatori Reti di calcolatori e sicurezza informaticae sicurezza informatica

Politecnico di MilanoFacoltà del Design – Bovisa

Prof. Gianluca PalermoDipartimento di Elettronica e Informazione

[email protected]://home.dei.polimi/gpalermo

Page 2: Reti di calcolatori  e sicurezza informatica

Cultura Tecnologica del Progetto 2

Politecnico di Milano

Indice Indice

Fondamenti di Reti di Calcolatori

Reti TCP/IP - Internet Internet: applicazioni e WEB Cenni di sicurezza informatica

Page 3: Reti di calcolatori  e sicurezza informatica

Cultura Tecnologica del Progetto 3

Politecnico di Milano

Testi consigliatiTesti consigliati Slide presentate a lezione

James F. Kurose, Keith W. Ross “Internet e Reti di calcolatori 2/ed” - McGrawHill

Gary Govanus “TCP/IP” - McGrawHill

William Stallings “Crittografia e sicurezza delle reti” - McGrawHill

Page 4: Reti di calcolatori  e sicurezza informatica

Cultura Tecnologica del Progetto 4

Politecnico di Milano

Il concetto di rete di calcolatoriIl concetto di rete di calcolatori Con il termine “rete di calcolatori” intendiamo

riferirci a un sistema informatico costituito da due o più calcolatori collegati attraverso un sistema di comunicazione allo scopo di condividere risorse e informazioni

Una “applicazione distribuita” è una applicazione composta da più elementi cooperanti posti in esecuzione su macchine diverse all’interno di una rete di calcolatori– Esempio, il web: il browser si collega ad un server remoto

per chiedere una pagina che poi visualizza sul pc locale

Page 5: Reti di calcolatori  e sicurezza informatica

Cultura Tecnologica del Progetto 5

Politecnico di Milano

Perché usare una rete?Perché usare una rete? Per condividere periferiche costose, come le stampanti.

– In una rete, tutti i computer possono accedere alla stessa stampante. Per scambiare dati tra PC.

– Trasferendo file attraverso la rete, non si perde tempo nel copiare i file su un dischetto (o su un CD).

– Inoltre vi sono meno limitazioni sulle dimensioni del file che può essere trasferito attraverso una rete.

Per centralizzare programmi informatici essenziali, come gli applicativi finanziari e contabili. – Spesso gli utenti devono poter accedere allo stesso programma in modo

che possano lavorarvi simultaneamente. – Un esempio di ciò potrebbe essere un sistema di prenotazione di biglietti

in cui è importante evitare di vendere due volte lo stesso biglietto. Per istituire sistemi di backup automatico dei file.

– E' possibile usare un programma informatico per fare il backup automatico di file essenziali, risparmiando tempo e proteggendo l'integrità del proprio lavoro.

Per comunicare mediante Internet con il resto del mondo. …

Page 6: Reti di calcolatori  e sicurezza informatica

Cultura Tecnologica del Progetto 6

Politecnico di Milano

Supporti fisici - 1Supporti fisici - 1 Diversi mezzi trasmissivi possono essere adottati

per costituire il supporto fisico sul quale viaggia la comunicazione in una rete di calcolatori

I principali mezzi trasmissivi adottati sono:– Doppino ritorto (twisted pair):

• Costituito da due fili di rame ricoperti da una guaina e ritorti• Tipicamente utilizzato per trasmissione telefonica• Con più doppini utilizzati contemporaneamente si ottengono

velocità di trasmissione medio alte (100 Mbs su rete locale)• Su rete telefonica le velocità è più bassa (2 Mbps con ADSL)

– Cavo coassiale:• Costituito da un filo centrale in rame rivestito da una guaina

in plastica a sua volta rivestita da una maglia in rame. Il tutto ricoperto da una guaina in plastica

• Per mette velocità di trasmissione medio alte (100 Mbps)

Page 7: Reti di calcolatori  e sicurezza informatica

Cultura Tecnologica del Progetto 7

Politecnico di Milano

Supporti fisici - 2Supporti fisici - 2– Fibra ottica:

• Costituito da una fibra di vetro ricoperta, capace di trasportare segnali luminosi

• La trasmissione avviene nel campo ottico sfruttando diodi fotoelettrici alle estremità del cavo

• Permette velocità di trasmissione molto elevate, dell’ordine delle decine di Gbps

– Onde elettromagnetiche:• Usate per trasmissioni radio e via satellite• Consentono trasmissioni su lunghissime distanze

con degrado minimo del segnale• Permettono velocità di trasmissione medio alte e

variabili a seconda della banda di frequenza (1-56 Mbps) utilizzata

Page 8: Reti di calcolatori  e sicurezza informatica

Cultura Tecnologica del Progetto 8

Politecnico di Milano

Tipi di reteTipi di rete Le reti possono avere dimensioni differenti ed è

possibile ospitarle in una sede singola oppure dislocarle in tutto il mondo.

Una rete che è collegata su un'area limitata si chiama "Rete Locale" oppure LAN (Local Area Network). Spesso la LAN è localizzata in una sola sede.

Per WAN (Wide Area Network) si intende un gruppo di dispositivi o di LAN collegate nell'ambito di una vasta area geografica, spesso mediante linea telefonica o altro tipo di cablaggio (ad es. linea dedicata, fibre ottiche, collegamento satellitare, ecc..). Uno dei più grandi esempi di WAN è l'Internet stessa.

All’estremo opposto stanno le PAN (Personal Area Network) che collegano tra loro, di norma attraverso connessioni radio, i dispositivi di un singolo utente.

Page 9: Reti di calcolatori  e sicurezza informatica

Cultura Tecnologica del Progetto 9

Politecnico di Milano

Topologia delle reti localiTopologia delle reti locali A BUS: è il metodo più semplice di connettere

in rete dei computer. Consiste di un singolo cavo (chiamato dorsale o segmento) che connette in modo lineare tutti i computer. I dati sono inviati a tutti i computer come segnali elettronici e vengono accettati solo dal computer il cui indirizzo è contenuto nel segnale di origine.

Ad ANELLO: i computer sono connessi tramite un unico cavo circolare privo di terminatori. I segnali sono inviati in senso orario lungo il circuito chiuso passando attraverso ciascun computer che funge da ripetitore e ritrasmette il segnale potenziato al computer successivo: si tratta quindi di una tipologia attiva, a differenza di quella a bus.

A STELLA: i computer sono connessi ad un componente centrale chiamato Hub. I dati sono inviati dal computer trasmittente attraverso l’Hub a tutti i computer della rete.

Page 10: Reti di calcolatori  e sicurezza informatica

Cultura Tecnologica del Progetto 10

Politecnico di Milano

Topologia elementareTopologia elementare La più elementare topologia di rete

prevede l’utilizzo di sue soli PC (o altri dispositivi di rete) connessi direttamente tra di loro mediante cavo di rete CROSS.

Questa configurazione può essere utile ad esempio per scambiare dati tra portatile e PC oppure per connettere al PC una stampante di rete.

Page 11: Reti di calcolatori  e sicurezza informatica

Cultura Tecnologica del Progetto 11

Politecnico di Milano

Tecnologie per LANTecnologie per LAN Esistono diverse tecnologie LAN; le più comuni

sono: Ethernet e Fast Ethernet. Una rete può essere formata da una o più di queste

tecnologie. Le reti Ethernet e Fast Ethernet funzionano in

modo simile e la differenza principale è data dalla velocità alla quale trasferiscono le informazioni.– Ethernet funziona a 10 Megabit per secondo (o Mbps) e

Fast Ethernet funziona a 100Mbps. – Iniziano a diffondersi connessioni ad 1Gbps

(GigaEthernet) Sia Ethernet che Fast Ethernet (e GigaEthernet)

adottano una topologia a bus– La connesione fisica è spesso a stella, impiegando un’hub

Page 12: Reti di calcolatori  e sicurezza informatica

Cultura Tecnologica del Progetto 12

Politecnico di Milano

I dispositivi: la scheda di reteI dispositivi: la scheda di rete Tutti i PC, per essere connessi ad una rete,

devono essere dotati di schede di rete. Alcuni PC sono dotati di schede di rete

preinstallate (portatili). Nello scegliere una scheda di rete, è

necessario considerare quanto segue:– La velocità: Ethernet (10Mbps), Fast Ethernet

(100 Mbps), GigaEthernet (1.000 Mbps);– Il tipo di collegamento necessario: RJ-45 per

doppino o BNC per cavo coassiale.

Page 13: Reti di calcolatori  e sicurezza informatica

Cultura Tecnologica del Progetto 13

Politecnico di Milano

I dispositivi: l’hubI dispositivi: l’hub

Con il termine hub ci si riferisce ad un componente dell'apparecchiatura di rete che collega assieme i PC fungendo da ripetitore: ripete tutte le informazioni che riceve, a tutte le porte.– Una rete logicamente a bus, come Ethernet, viene, per

comodità, cablata secondo uno schema a stella usando un’hub.

Gli hub sono adatti alle piccole reti; per le rete con elevato livello di traffico si consiglia un'apparecchiatura supplementare di networking come lo switch capace di suddividere la rete in più tronconi isolati.ACTACT

10M100M1 2 3 4

13 14 15 16

5 6 7 8

17 18 19 20

9 10 11 12

21 22 23 24

UPLINK

1 2 3 4 5 6 7 8 9 101112

131415161718192021222324COLCOL

PWR

SWITCH

PORTE

Page 14: Reti di calcolatori  e sicurezza informatica

Cultura Tecnologica del Progetto 14

Politecnico di Milano

I dispositivi: lo switchI dispositivi: lo switch Apparentemente simili agli hub, gli switch si avvalgono

degli indirizzi di ciascun pacchetto per gestire il flusso del traffico di rete separando ogni troncone. – Monitorando i pacchetti che riceve, uno switch "impara" a

riconoscere l’indirizzo dei dispositivi che sono collegati alle proprie porte per poi inviare i pacchetti solamente alle porte pertinenti.

– Lo switch riduce la quantità di traffico non necessario, dato che le informazioni ricevute nella porta vengono trasmesse solo al dispositivo con il giusto indirizzo di destinazione e non, come negli hub, a tutte le porte.

Gli switch e gli hub vengono spesso utilizzati nella stessa rete. Gli hub ampliano la rete fornendo un numero maggiore di porte, mentre gli switch dividono la rete in sezioni più piccole e meno congestionate. ACTACT

10M100M1 2 3 4

13 14 15 16

5 6 7 8

17 18 19 20

9 10 11 12

21 22 23 24

UPLINK

1 2 3 4 5 6 7 8 9 101112

131415161718192021222324COLCOL

PWR

SWITCH

PORTE

Page 15: Reti di calcolatori  e sicurezza informatica

Cultura Tecnologica del Progetto 15

Politecnico di Milano

I dispositivi: il router (o gateway)I dispositivi: il router (o gateway) Anche i router sono ‘smistatori di traffico’ che ricevono dati

e li inviano da qualche altra parte. Vengono generalmente utilizzati per collegare tra loro reti con tecnologia diversa.– Gli switch collegano reti ethernet a reti ethernet, i router

possono collegare reti diverse Si occupano solitamente del traffico verso l’esterno della rete

locale (ad es. Ethernet), ad esempio per un collegamento a Internet (ad es. doppino ADSL o fibra ottica).

I router sono particolarmente intelligenti: – Basandosi su una mappa di rete denominata “tabella di

routing”, i router possono fare in modo che i pacchetti raggiungano le loro destinazioni attraverso i percorsi più efficaci;

– Se cade la connessione tra due router, per non bloccare il traffico, il router sorgente può definire un percorso alternativo.

Quando i router connettono la rete interna con la rete esterna, vengono anche chiamati gateway

Page 16: Reti di calcolatori  e sicurezza informatica

Cultura Tecnologica del Progetto 16

Politecnico di Milano

I dispositivi: il modemI dispositivi: il modem Il modem è un dispositivo che va collegato

direttamente al computer e che si avvale della linea telefonica per effettuare una connessione di rete dial-up (ad es. verso un servizio online o un ISP).

Il compito essenziale di un modem è di convertire i dati digitali necessari al computer in segnali analogici per la trasmissione attraverso la linea telefonica, e viceversa.

I modem tradizionali supportano velocità fino a 56Kbps.

Negli ultimi anni si sono diffusi i modem ADSL che supportano velocità molto più elevate (anche 2 Mbps).

Page 17: Reti di calcolatori  e sicurezza informatica

Cultura Tecnologica del Progetto 17

Politecnico di Milano

I dispositivi: il firewallI dispositivi: il firewall Dispositivo configurato come barriera per

impedire l'attraversamento del traffico da un segmento all'altro della rete.

I firewall migliorano inoltre la sicurezza della rete e possono fungere da barriera tra le rete pubbliche e private collegate.

Impiegando un firewall è possibile impedire gli accessi indesiderati, monitorare le sedi alle quali si accede più di frequente ed analizzare la quantità di larghezza di banda che la connessione Internet sta utilizzando. 

Page 18: Reti di calcolatori  e sicurezza informatica

Cultura Tecnologica del Progetto 18

Politecnico di Milano

Firewall: esempioFirewall: esempio

SD

INTERNET

LAN (rete sicura)

switch

switch

firewallGateway/router

www server

DMZ (demilitarization zone)

Page 19: Reti di calcolatori  e sicurezza informatica

Cultura Tecnologica del Progetto 19

Politecnico di Milano

Il futuro? WirelessIl futuro? Wireless Le reti wireless si stanno

diffondendo sempre di più:– Periferiche wireless di ogni tipo (access

point, schede per pc, schede pc-card, ecc)

– Velocità crescenti (11Mbps, 22Mbps, 54Mbps, 128Mbps!!)

– Sicurezza, algoritmi di crittografia fino a 256 byte

– Raggio d’azione (fino a 300 mt)

Page 20: Reti di calcolatori  e sicurezza informatica

Cultura Tecnologica del Progetto 20

Politecnico di Milano

Indice Indice

Fondamenti di Reti di Calcolatori Reti TCP/IP - Internet Internet: applicazioni e WEB Cenni di sicurezza informatica

Page 21: Reti di calcolatori  e sicurezza informatica

Cultura Tecnologica del Progetto 21

Politecnico di Milano

Protocollo di comunicazioneProtocollo di comunicazione Con il termine “protocollo di comunicazione” si

indica l’insieme di regole di comunicazione che debbono essere seguite da due interlocutori affinché essi possano comprendersi

Esempio: il protocollo alla base della comunicazione tra docente e allievi durante una lezione– il docente parla in una lingua comprensibile agli allievi– gli allievi ascoltano (si spera)– quando vogliono intervenire gli allievi alzano la mano ed

attendono il permesso del docente per iniziare a parlare– durante l’intervento degli allievi il docente ascolta– al termine dell’intervento il docente risponde

Page 22: Reti di calcolatori  e sicurezza informatica

Cultura Tecnologica del Progetto 22

Politecnico di Milano

Protocollo di comunicazioneProtocollo di comunicazione In una rete di calcolatori il protocollo

di comunicazione stabilisce tutti gli aspetti della comunicazione– dagli aspetti fisici...

• Esempio: supporto fisico, meccanismo di segnalazione)

– ... agli aspetti più eminentemente logici• Esempio: meccanismo di commutazione,

regole di codifica dell’informazione, ecc.

Page 23: Reti di calcolatori  e sicurezza informatica

Cultura Tecnologica del Progetto 23

Politecnico di Milano

Organizzazione a pila dei Organizzazione a pila dei protocolliprotocolli Data la loro complessità i protocolli

utilizzati dai calcolatori sono organizzati secondo una gerarchia

Ogni protocollo si appoggia ai protocolli di più basso livello per fornire un servizio di qualità superiore

– Esempio: il protocollo che stabilisce le regole di codifica dell’informazione si appoggia ad un protocollo di trasporto che stabilisce come debbano essere trasportati i dati

Application

Session

Presentation

Network

Transport

Data Link

ISO/ OSI

PhysicalNon specificati

IP e Protocolli di routing

TCP e UDP

Telnet

FTPSMTPHTTP RPC

Web-NFS

NFS

Internet Protocol Suite

Application

Session

Presentation

Network

Transport

Data Link

ISO/ OSI

PhysicalNon specificati

IP e Protocolli di routing

TCP e UDP

Telnet

FTPSMTPHTTP RPC

Web-NFS

NFS

Internet Protocol Suite

Page 24: Reti di calcolatori  e sicurezza informatica

Cultura Tecnologica del Progetto 24

Politecnico di Milano

Internet: “la rete delle reti”Internet: “la rete delle reti” Internet: una rete aperta... …logicamente formata da decine di milioni di

calcolatori direttamente collegati tra loro... ... attraverso l’adozione di un unico insieme di

protocolli per i livelli intermedi: il protocollo TCP/IP.

I protocolli dei livelli più bassi possono essere diversi...

... e lo stesso vale per i protocolli dei livelli superiori, anche se si sono venuti a formare degli standard di fatto

Page 25: Reti di calcolatori  e sicurezza informatica

Cultura Tecnologica del Progetto 25

Politecnico di Milano

Storia di InternetStoria di Internet Fine anni ’60:

– la Advanced Research Project Agency (ARPA) sviluppa ARPANET con l’obiettivo di connettere laboratori di ricerca, università e enti governativi

1970– L’università delle Hawaii, su commessa dell’ARPA sviluppa ALOHAnet, la

prima rete a commutazione di pacchetto 1971

– ARPANET include 23 host 1973

– ARPA diventa DARPA (Defence ...)– ARPANET collega per la prima volta un sito europeo (l’University College

di Londra) Fine anni ’70:

– DARPA finanzia lo sviluppo di protocolli a commutazione di pacchetto– Nasce TCP/IP– Nel 1982 ARPANET si “converte” a TCP/IP

Page 26: Reti di calcolatori  e sicurezza informatica

Cultura Tecnologica del Progetto 26

Politecnico di Milano

Storia di InternetStoria di Internet Anni ’80

– Nel 1983 la conversione a TCP/IP è completa– MILNET (rete governativa e militare) si separa da ARPANET (1983)– Nel 1984 nasce il primo DNS– DARPA finanzia lo sviluppo di Berkeley UNIX (implementazione di

TCP/IP che introduce l’astrazione dei socket)– ARPANET diventa un sottoinsieme di Internet– La National Science Foundation (NSF) realizza una rete di

supercomputer (NSFNET) che agisce come backbone di Internet (1985)– Nel 1987 si stima che Internet connettesse oltre 10.000 computer– Due anni dopo (nel 1989) si stima che Internet connettesse oltre

100.000 computer Anni ’90:

– Il 28 Febbraio 1990 ARPANET viene definitivamente abbandonata (la rete è oramai “governata” dalla NSF)

– Nel 1991 NSF decide di rimuovere i vincoli che impediscono attività commerciali su NFSNET

– Nello stesso anno il CERN di Ginevra sviluppa il www (html, http e url)– Internet esplode e cresce con ritmi velocissimi (dimensioni e traffico)

Page 27: Reti di calcolatori  e sicurezza informatica

Cultura Tecnologica del Progetto 27

Politecnico di Milano

Internet: architettura logicaInternet: architettura logica

Serverftp

Internet

Clientweb

Clientftp

Serverweb

Clientweb

Clientweb

Serverftp

Serverweb

Page 28: Reti di calcolatori  e sicurezza informatica

Cultura Tecnologica del Progetto 28

Politecnico di Milano

Internet: architettura fisicaInternet: architettura fisica

Host

Router

Internetprovider

Page 29: Reti di calcolatori  e sicurezza informatica

Cultura Tecnologica del Progetto 29

Politecnico di Milano

Internet vs. IntranetInternet vs. Intranet Internet: rete globale caratterizzata dall’uso dei

protocolli TCP/IP Intranet: rete locale caratterizzata dall’uso dei

medesimi protocolli di Internet Il boom di Internet ha favorito lo sviluppo di

centinaia di applicazioni distribuite basate su TCP/IP

Ciò ha reso conveniente l’uso dei protocolli TCP/IP anche in ambito locale

Attualmente la maggior parte delle reti locali sfrutta TCP/IP come protocollo base

Page 30: Reti di calcolatori  e sicurezza informatica

Cultura Tecnologica del Progetto 30

Politecnico di Milano

Internet Protocol SuiteInternet Protocol Suite

Application

Session

Presentation

Network

Transport

Data Link

ISO/OSI

PhysicalNon specificati

(Ethernet, PPP, X.25, Frame Relay, ATM, ...)

IP e Protocolli di routing

TCP e UDP

Telnet

FTP

SMTPHTTP RPC

Web-NFS

NFS

Internet Protocol Suite

Page 31: Reti di calcolatori  e sicurezza informatica

Cultura Tecnologica del Progetto 31

Politecnico di Milano

Il protocollo IPIl protocollo IP Caratteristiche:

– protocollo connectionless– si occupa dell’instradamento e della rilevazione d’errore

(nessuna correzione)

Non si assicura:– la consegna, – l’integrità, – la non-duplicazione– l’ordine di consegna

IP si può appoggiare ad una varietà di protocolli di più basso livello, quali Ethernet, PPP, X.25, Frame Relay, ATM, ...

Page 32: Reti di calcolatori  e sicurezza informatica

Cultura Tecnologica del Progetto 32

Politecnico di Milano

Gli indirizzi IPGli indirizzi IP Ogni host possiede un indirizzo IP unico per ogni interfaccia di

rete

Gli indirizzi IP sono formati da 32 bit, suddivisi in una parte che individua una sottorete ed in una porzione che identifica un nodo particolare della sottorete

La divisione dipende dalla classe della sottorete, definita nei primi bit dell’indirizzo– Classe A (0): NetId = 7 bit (128 reti), HostId = 24 bit (16777216

host)– Classe B (10): NetId = 14 bit (16384 reti), HostId = 16 bit (65536

host)– Classe C (110): NetId = 21 bit (2097152 reti), HostId = 8 bit (256 host)– Multicast (1110): indirizzo multicast

I router hanno due o più indirizzi IP diversi ed una tabella di istradamento

Page 33: Reti di calcolatori  e sicurezza informatica

Cultura Tecnologica del Progetto 33

Politecnico di Milano

Gestione degli indirizziGestione degli indirizzi L’uso di assegnare reti di classe A o B a

compagnie che usano un ridotto sottoinsieme degli indirizzi rischia, oggi, di portare all’esaurimento degli indirizzi disponibili

Sono state proposte diverse soluzioni ad hoc che consentono di “recuperare” parte degli indirizzi perduti...

... ma l’unica vera soluzione si avrà con il passaggio a IPv6 che userà 128 bit per gli indirizzi– 340.282.366.920.938.463.463.374.607.431.768.211.456

= 3,4 x 1038 indirizzi distinti– Si calcola che saranno disponibili 1.564 indirizzi IP per

ogni metro quadrato di superficie terrestre

Page 34: Reti di calcolatori  e sicurezza informatica

Cultura Tecnologica del Progetto 34

Politecnico di Milano

Ancora sugli indirizzi IP (v4)Ancora sugli indirizzi IP (v4) Gli indirizzi IP si scrivono come quattro interi

separati da punti– Esempio: 131.175.5.25

L’indirizzo 127.0.0.1 rappresenta l’interfaccia di loopback– Indirizzo “fittizio” associato alla macchina corrente

Page 35: Reti di calcolatori  e sicurezza informatica

Cultura Tecnologica del Progetto 36

Politecnico di Milano

Instradamento - 1Instradamento - 1 I datagrammi IP vengono trasportati dal nodo

mittente al nodo destinatario attraverso molteplici nodi intermedi (router)

Sottorete

Sottorete

Sottorete

Router

Router

Router

Page 36: Reti di calcolatori  e sicurezza informatica

Cultura Tecnologica del Progetto 37

Politecnico di Milano

Instradamento - 2Instradamento - 2 I nodi attraverso cui il pacchetto compie il suo

percorso (route) vengono determinati usando le tabelle di routing– Le tabelle possono essere determinate staticamente– Le tabelle possono essere aggiornate dinamicamente dai

protocolli di routing (ad es. RIP)

Se lo host destinatario è direttamente collegato allo host mittente, il datagramma viene incapsulato in un pacchetto di più basso livello e consegnato direttamente

Se lo host destinatario è localizzato in un’altra rete, il datagramma viene passato ad un router che si occuperà di consegnarlo, seguendo un processo analogo

Page 37: Reti di calcolatori  e sicurezza informatica

Cultura Tecnologica del Progetto 38

Politecnico di Milano

Gli indirizzi simbolici ed i DNSGli indirizzi simbolici ed i DNS Un indirizzo simbolico può sostituire un indirizzo IP Un indirizzo simbolico è composto da un nome di

dominio e da un nome di host– esempio: www.polimi.it elet.polimi.it

I nomi di dominio vengono assegnati da un’autorità nazionale, chiamato Network Information Center (per l’Italia gestito dal CNR) che coopera con altre autorità simili

I Domain Name Servers (DNS):– costituiscono un data base distribuito per i nomi simbolici– permettono l’associazione nome simbolico/indirizzo IP– esempio:

131.175.21.8 www.polimi.it131.175.21.1 morgana.elet.polimi.it

host hostdominio dominio

Page 38: Reti di calcolatori  e sicurezza informatica

Cultura Tecnologica del Progetto 39

Politecnico di Milano

Risoluzione dei nomiRisoluzione dei nomi Si chiama risoluzione il processo che trasforma i nomi in

indirizzi IP. Risoluzione diretta: il DNS utilizza il modello client/server

per la risoluzione dei nomi. Per risolvere un nome il client fa una richiesta al name

server locale; esso risolve il nome se è in grado altrimenti trasferisce al richiesta ad un altro name server.

1

Client

Local nameserver

2 Root name server

3

4

Com name server

Microsoftname server 6

5

WWW.MICROSOFT.COM

Hostserver

Page 39: Reti di calcolatori  e sicurezza informatica

Cultura Tecnologica del Progetto 40

Politecnico di Milano Il protocollo TCPIl protocollo TCP

Caratteristiche:– protocollo connection-oriented (indirizzo IP - porta

TCP)– fornisce un servizio full-duplex, con acknowledge e

correzione d’errore

Due host connessi su Internet possono scambiarsi messaggi attraverso socket TCP

TCP costituisce l’infrastruttura di comunicazione della maggior parte dei sistemi client-server su Internet

Page 40: Reti di calcolatori  e sicurezza informatica

Cultura Tecnologica del Progetto 41

Politecnico di Milano Il protocollo UDPIl protocollo UDP

Caratteristiche:– protocollo connectionless (indirizzo IP - porta UDP)– fornisce un servizio di rilevazione d’errore.– Non assicura la consegna nè, tantomeno, l’ordine di

invio (unreliable, best-effort protocol)

Utilizzato nelle applicazioni client-server di tipo richiesta/risposta– Esempi:

NFS, DNS

Page 41: Reti di calcolatori  e sicurezza informatica

Cultura Tecnologica del Progetto 42

Politecnico di Milano

Indice Indice

Fondamenti di Reti di Calcolatori Reti TCP/IP - Internet Internet: applicazioni e WEB Cenni di sicurezza informatica

Page 42: Reti di calcolatori  e sicurezza informatica

Cultura Tecnologica del Progetto 43

Politecnico di Milano

Architettura client/serverArchitettura client/server La metodologia di utilizzo dei servizi TCP e UDP

da parte dell’applicazione utente è detta client/server.

Il server è un calcolatore connesso alla rete su cui gira continuamente un programma in ascolto su di una porta TCP o UDP.

Uno o più calcolatori denominati client (anche contemporaneamente) possono contattare il server per ottenere servizi. Il dialogo tipico consiste nell’invio di una richiesta e nella attesa della risposta.

Page 43: Reti di calcolatori  e sicurezza informatica

Cultura Tecnologica del Progetto 44

Politecnico di Milano

Il WWW come esempio di Il WWW come esempio di applicazione Client/Serverapplicazione Client/Server

Richiesta

Risposta

Page 44: Reti di calcolatori  e sicurezza informatica

Cultura Tecnologica del Progetto 45

Politecnico di Milano

I protocolli applicativiI protocolli applicativi

FTP Telnet / SSH SMTP POP NNTP HTTP

Page 45: Reti di calcolatori  e sicurezza informatica

Cultura Tecnologica del Progetto 46

Politecnico di Milano

FTP (File Transfer Protocol)FTP (File Transfer Protocol) Permette il trasferimento di file tra elaboratori diversi

connessi in rete

Vengono aperte due connessioni TCP per ogni sessione FTP:– una connessione di controllo (porta 20)– una connessione dati (porta 21)

Il protocollo stabilisce il formato dei comandi e dei messaggi scambiati

FTP include un meccanismo di autenticazione basato su username e password passato dal client al server– la login anonymous

Page 46: Reti di calcolatori  e sicurezza informatica

Cultura Tecnologica del Progetto 47

Politecnico di Milano

Telnet - SSHTelnet - SSH Permette ad un utente di collegarsi, attraverso il proprio

elaboratore locale, come terminale remoto di un altro elaboratore connesso alla rete

A connessione avvenuta tutti i caratteri battuti sulla tastiera locale vengono inviati all’elaboratore remoto e le risposte da questo generate sono mostrate sullo schermo locale

Sfrutta una connessione TCP (porta 23) tra elaboratore locale e remoto

Tutti i comandi digitati dal client (compresa la password per l'identificazione dell'utente) viaggiano "in chiaro“ sulla rete, mettendo a repentaglio la sicurezza e la riservatezza.

Per superare questo problema si e' affermato in questi ultimi anni un nuovo programma per il login remoto in cui la comunicazione avviene in modo cifrato, denominato SSH (Secure SHell). SSH server utilizza la porta 22/TCP.

Page 47: Reti di calcolatori  e sicurezza informatica

Cultura Tecnologica del Progetto 48

Politecnico di Milano

SMTP (Simple Mail Transfer Protocol)SMTP (Simple Mail Transfer Protocol)

Gestisce l’invio di messaggi di posta elettronica attraverso la rete

La connessione tra i diversi server di posta avviene attraverso una connessione TCP (porta 25)

Ogni utente é identificato dall’indirizzo:

nomeutente@indirizzo_host Il processo di invio é batch

Page 48: Reti di calcolatori  e sicurezza informatica

Cultura Tecnologica del Progetto 49

Politecnico di Milano

POP (Post Office Protocol)POP (Post Office Protocol) Protocollo per la lettura della propria

posta da un mail server Sfrutta una connessione TCP sulla porta

110 Fornisce comandi per avere la lista dei

propri messaggi, scaricare un messaggio dal server al client, cancellare un messaggio dal server

L’autenticazione è basata su una coppia “username-password” che viene scambiata in chiaro tra client e server

Page 49: Reti di calcolatori  e sicurezza informatica

Cultura Tecnologica del Progetto 50

Politecnico di Milano

SMTP e POP: il funzionamento SMTP e POP: il funzionamento della posta su Internetdella posta su Internet

Invio(smtp)

Invio(smtp)

Ricezione(pop)

Page 50: Reti di calcolatori  e sicurezza informatica

Cultura Tecnologica del Progetto 51

Politecnico di Milano

NNTPNNTP I server di news costituiscono un data base distribuito

e replicato di “articoli”

Il protocollo gestisce lo scambio di articoli tra server e server (ai fini della replicazione) e tra server e client

Il protocollo utilizza connessioni TCP (porta 119)

Le news sono organizzate in un insieme di newsgroup

I newsgroup sono organizzati secondo una struttura ad albero– Esempio:

comp.os.linux.announcecomp.os.ms-windows.miscalt.music.prince

Page 51: Reti di calcolatori  e sicurezza informatica

Cultura Tecnologica del Progetto 52

Politecnico di Milano

Il WWW: funzionamentoIl WWW: funzionamento L’utente richiede una risorsa (solitamente un

documento) identificata da un URL Lo user agent (browser) interpreta l’URL e inoltra

una richiesta al server opportuno (ftp, http, gopher...)

Il server fornisce la risorsa richiesta o un messaggio di errore

Lo user agent interpreta i contenuti del messaggio di risposta

Se il messaggio è un documento HTML il browser si occupa automaticamente di reperire le sottoparti referenziate nel documento (immagini, applet java...)

La risorsa viene presentato all’utente, eventualmente con l’ausilio di programmi esterni (mpeg player, audio player)

Page 52: Reti di calcolatori  e sicurezza informatica

Cultura Tecnologica del Progetto 53

Politecnico di Milano

Il browserIl browser Gioca il ruolo del client

– Gestisce l’interazione con l’utente Interpreta il linguaggio html e presenta i

dati a video Generalmente include:

– un interprete per i principali linguaggi di scripting lato client...

– ... una JVM per l’esecuzione degli applet ...– ... e la possibilità di invocare plug-in per

visualizzare i formati non direttamente supportati

Esempi: MS Internet Explorer, Mozilla, ...

Page 53: Reti di calcolatori  e sicurezza informatica

Cultura Tecnologica del Progetto 54

Politecnico di Milano

Il server webIl server web Risponde alle richieste del browser

– Trasmettendo i dati richiesti (file html, immagini, applet, script flash, ...)

– Invocando i programmi cgi Spesso include:

– un interprete per i principali linguaggi di scripting lato server ...

– ... una JVM per l’esecuzione delle servlet ... Esempi: MS Internet Information Server,

Netscape Server, Apache

Page 54: Reti di calcolatori  e sicurezza informatica

Cultura Tecnologica del Progetto 55

Politecnico di Milano

HTTPHTTP

Il protocollo per la comunicazione tra browser e server web

Sfrutta una connessione TCP sulla porta 80 Usa gli URL come meccanismo di

indirizzamento Usa il protocollo MIME per definire il tipo dei

dati trasportati Caratteristiche:

– ogni connessione permette una singola transazione– il trasferimento dati è binario

Page 55: Reti di calcolatori  e sicurezza informatica

Cultura Tecnologica del Progetto 56

Politecnico di Milano

Uniform Resource LocatorUniform Resource Locator Gli URL definiscono una sintassi e una semantica

per l’identificazione e l’accesso a risorse su Internet Un URL definisce:

– quale protocollo (schema) usare per accedere alla risorsa (cioè quale server contattare)

– una coppia <username,password> opzionali (da usare ad esempio nel caso di FTP)

– il nome del server e la porta presso cui è disponibile il servizio

– il path della risorsa– il nome della risorsa– eventuali parametri da passare alla risorsa

Esempio:http://www.elet.polimi.it:80/people/index.html

Page 56: Reti di calcolatori  e sicurezza informatica

Cultura Tecnologica del Progetto 57

Politecnico di Milano

Esempi di URLEsempi di URL ftp://guest:[email protected]/pub/

guest/dist101.tar.gz;type=I http://www.w3.org/ http://www.ms.com/cgi-bin/

prog.tcl/pathinfo?mychoice=yes&options=rrf

mailto:[email protected] telnet://ipese3.elet.polimi.it news:comp.os.linux

Page 57: Reti di calcolatori  e sicurezza informatica

Cultura Tecnologica del Progetto 58

Politecnico di Milano

I motori di ricercaI motori di ricerca Sono software in grado di aiutare a trovare le

informazioni che si stanno cercando nel web.

Permettono di effettuare un monitoraggio automatico delle risorse presenti in rete e selezionare quelle potenzialmente interessanti in base ai criteri di ricerca impostati dall’utente.

Un motore di ricerca è quindi uno strumento dinamico che si occupa di scandagliare continuamente la rete e di costruirne una mappa qunto più esaustiva e aggiornata possibile.

Page 58: Reti di calcolatori  e sicurezza informatica

Cultura Tecnologica del Progetto 59

Politecnico di Milano

Come funzionanoCome funzionano Motori che funzionano per parole chiave Motori che utilizzano indici di contenuti (detti

più propriamente cataloghi)

I motori di ricerca sono accessibili attraverso appositi siti web. (es.: http://www.google.it)

Page 59: Reti di calcolatori  e sicurezza informatica

Cultura Tecnologica del Progetto 60

Politecnico di Milano

Motori di ricerca per parole Motori di ricerca per parole chiavechiave

Page 60: Reti di calcolatori  e sicurezza informatica

Cultura Tecnologica del Progetto 61

Politecnico di Milano

Motori di ricerca per parole Motori di ricerca per parole chiave chiave Permettono di effettuare una selezione all’interno delle

risorse Internet visualizzando gli indirizzi dei siti web che contengono, nel titolo o all’interno delle pagine, le parole chiave digitate nell’apposito modulo di ricerca.

Questi motori funzionano attraverso agenti software chiamati spider (ragni) che si occupano di monitorare continuamente la rete classificando i siti in base al tipo di parole contenute al loro interno.

Il motore fornisce una lista delle risorse trovate a partire dai siti che contengono una maggiore occorrenza della parola chiave, ma cerca anche di effettuare valutazioni semantiche sui contenuti del sito analizzando il ruolo che tali parole hanno all’interno del testo.

Page 61: Reti di calcolatori  e sicurezza informatica

Cultura Tecnologica del Progetto 62

Politecnico di Milano

Motori di ricerca strutturati ad indiceMotori di ricerca strutturati ad indice

Page 62: Reti di calcolatori  e sicurezza informatica

Cultura Tecnologica del Progetto 63

Politecnico di Milano

Motori di ricerca strutturati ad indiceMotori di ricerca strutturati ad indice Presentano elenchi di categorie di argomenti

o directory.

Ogni categoria può contenere altre categorie e consente di affinare le ricerche fino ad arrivare all’elenco dei siti reali di un determinato argomento.

Il sistema di catalogazione dei siti:– sistemi statistici, come quello delle occorrenze di una

parola all’interno di un testo, – valutazione critica dei contenuti; gran parte delle

operazioni di recensione sono affidate al lavoro umano.

Page 63: Reti di calcolatori  e sicurezza informatica

Cultura Tecnologica del Progetto 64

Politecnico di Milano

Inserimento delle informazioni nei Inserimento delle informazioni nei motori di ricercamotori di ricerca Spider

– Leggono le informazioni contenute nell’header delle pagine HTML ed in base a queste catalogano il sito

Segnalazioni– Di webmaster oppure di utenti del web

Ricercatori– Operatori che ricercano e catalogano i siti visitati

Page 64: Reti di calcolatori  e sicurezza informatica

Cultura Tecnologica del Progetto 65

Politecnico di Milano

Indice Indice

Fondamenti di Reti di Calcolatori Reti TCP/IP - Internet Internet: applicazioni e WEB Cenni di sicurezza informatica

Page 65: Reti di calcolatori  e sicurezza informatica

Cultura Tecnologica del Progetto 66

Politecnico di Milano

La sicurezza in rete: proprietàLa sicurezza in rete: proprietàAlice e Bob vogliono comunicare “in sicurezza”, questo significa

che: Alice vuole che solo Bob sia in grado di capire un messaggio da

lei spedito (CONFIDENZIALITA’), anche se essi comunicano su un mezzo “non sicuro” dove un intruso (Trudy) può intercettare qualunque cosa trasmessa attraverso questo canale

Bob vuole essere sicuro che il messaggio che riceve da Alice sia davvero spedito da lei e viceversa (AUTENTICAZIONE)

Alice e Bob vogliono essere sicuri che i contenuti del messaggio di Alice non siano alterati nel transito (INTEGRITA’ DEL MESSAGGIO)

Page 66: Reti di calcolatori  e sicurezza informatica

Cultura Tecnologica del Progetto 67

Politecnico di Milano

Arte di proteggere il segreto di un testo mediante una scrittura convenzionale conosciuta solo da chi scrive e da chi legge.

È costituita dalla combinazione di:– un algoritmo di crittografia (generalmente pubblico)– un’informazione segreta (chiave) in grado di

personalizzare l’algoritmo

10 Miliardi If nw3wu1cw

La crittografia: definizioneLa crittografia: definizione

1=i0=fm=ni=wl=3a=ur=1d=ci=w

codifica

decodifica

Page 67: Reti di calcolatori  e sicurezza informatica

Cultura Tecnologica del Progetto 68

Politecnico di Milano

Crittografia simmetrica (a chiave Crittografia simmetrica (a chiave segreta)segreta)

Caratteristica peculiare degli algoritmi di crittografia simmetrica è che la codifica e la decodifica avvengono utilizzando la stessa chiave k:

D (k, E (k, m)) = m– m = messaggio– k = chiave– E = algoritmo di codifica– D = algoritmo di decodifica

Algoritmodi codifica

(encryption)

Messaggio in chiaro Messaggio

in chiaroMessaggio

Cifrato

Chiave Segreta

Chiave Segreta

Scambio della chiave segreta

Algoritmodi decodifica(decryption)

testo, dati,

immagini, audio, etc.

Page 68: Reti di calcolatori  e sicurezza informatica

Cultura Tecnologica del Progetto 69

Politecnico di Milano

Crittografia simmetrica Crittografia simmetrica Esempio (banale): Codice di CesareEsempio (banale): Codice di Cesare Algoritmo di sostituzione: ad ogni carattere si sostituisce un altro carattere, secondo una tabella di conversione.

– Esempio (Codice di Cesare):Carattere cifrato = carattere in chiaro + shift (chiave)

Benvenuti al PolitecnicoChiave: +5Gjsajszyn fq Utqnyjhsnht

Noto l’algoritmo, è facilmente “crackabile”: sono sufficienti 26 tentativi

a b c d e f g h ..Shift = +5

f g h i j k l m ..

Page 69: Reti di calcolatori  e sicurezza informatica

Cultura Tecnologica del Progetto 70

Politecnico di Milano

Crittografia simmetrica Crittografia simmetrica Esempio (banale): Codice di CesareEsempio (banale): Codice di CesareSe non sono noti l’algoritmo e la chiave, il numero di sostituzioni possibili è pari a 26! = 4,03*10^26

Difficilmente crackabile con metodi a forza bruta (brute force): con gli elaboratori più potenti richiederebbe comunque un tempo di alcuni secoli

E’ però facilmente crackabile con analisi statistica delle ricorrenze dei caratteri nel testo

ABCDEFGHIJKLMNOPQRSTUVWXYZUWGRPNQSBJXMECAIZOYTDFHKLV

Page 70: Reti di calcolatori  e sicurezza informatica

Cultura Tecnologica del Progetto 71

Politecnico di Milano

Crittografia simmetrica: Vantagi e Crittografia simmetrica: Vantagi e svantaggisvantaggi Vantaggi

– semplicità e rapidità di esecuzione degli algoritmi crittografici

Svantaggi:– scambio della chiave segreta:

la comunicazione della chiave condivisa deve avvenire attraverso un canale sicuro;

– è necessaria una chiave diversa per ogni coppia di interlocutori (per evitare che l’interlocutore C possa leggere i messaggi mandati a B).

– per n coppie di interlocutori sono necessarie n(n-1)/2 chiavi simmetriche distinte

Page 71: Reti di calcolatori  e sicurezza informatica

Cultura Tecnologica del Progetto 72

Politecnico di Milano

Crittografia asimmetrica (a chiave Crittografia asimmetrica (a chiave pubblica)pubblica) Ogni utente ha una coppia di chiavi, distinte ma legate

fra loro:

Caratteristiche dell’algoritmo di cifratura:– Non è possibile risalire alla chiave privata conoscendo la

chiave pubblica.– Un messaggio cifrato con la chiave pubblica Kpub è decifrabile

solo con la corrispondente chiave privata Kpri

– Viceversa, un messaggio cifrato con la chiave privata Kpri è decifrabile solo con la corrispondente chiave pubblica Kpub

– Non esistono altre possibilità

• la chiave pubblica, kpub, divulgabile a tutti• la chiave privata, kpri, conosciuta e custodita dal solo

proprietario

Page 72: Reti di calcolatori  e sicurezza informatica

Cultura Tecnologica del Progetto 73

Politecnico di Milano

Crittografia asimmetrica Crittografia asimmetrica 1. Confidenzialità (=riservatezza)1. Confidenzialità (=riservatezza)

Algoritmodi codifica

Mittente (Alice) Ricevente (Bob)

Chiave pubblicadel ricevente Chiave privata

del ricevente

Chiave pubblicadel ricevente

Messaggioin chiaro

Messaggioin chiaroMessaggio

cifrato

Bob divulga la propria chiave pubblica P e mantiene segreta la propria chiave privata S

Alice cifra il messaggio con la chiave pubblica di Bob Bob decodifica il messaggio con la propria chiave privata;

essendo l’unico in possesso di tale chiave privata, è l’unico a poter leggere il messaggio

Algoritmo di

decodifica

Page 73: Reti di calcolatori  e sicurezza informatica

Cultura Tecnologica del Progetto 74

Politecnico di Milano

Crittografia asimmetrica Crittografia asimmetrica 2. autenticazione e non ripudio2. autenticazione e non ripudio

Mittente (Alice) Ricevente (Bob)

Chiave privatadel mittente

Chiave pubblicadel mittente

Algoritmodi codifica

Messaggioin chiaro

Messaggioin chiaroMessaggio

cifrato

Chiave pubblica del mittente

Alice usa la propria chiave privata per cifrare il messaggio diretto a Bob Bob è sicuro che il messaggio provenga effettivamente da Alice: infatti solo

Alice conosce la propria chiave privata e la chiave pubblica di Alice è l’unica che consente di decifrare il messaggio

Non è garantita la riservatezza del messaggio: chiunque può usare la chiave pubblica di Alice per decifrare e quindi leggere il messaggio

Non ripudio = impossibilità per il mittente di negare di essere l’autore del messaggio (equivale alla firma di un documento cartaceo)

Algoritmo di

decodifica

Page 74: Reti di calcolatori  e sicurezza informatica

Cultura Tecnologica del Progetto 75

Politecnico di Milano

Crittografia asimmetrica: integrità, Crittografia asimmetrica: integrità, autenticazione, confidenzialitàautenticazione, confidenzialità Alice vuole essere sicura che il documento sia letto unicamente da Bob,

garantendo anche la paternità del documento Si applica una doppia crittografia a chiave pubblica: Alice cifra il documento

prima con la propria chiave privata, successivamente con la chiave pubblica di Bob

Autenticazione - Bob è sicuro che il documento sia stato spedito da Alice: solo lei conosce la propria chiave privata e la sua chiave pubblica è garantita dalla CA

Confidenzialità - Alice è sicura che il documento sia letto unicamente da Bob: solo quest’ultimo conosce la propria chiave privata

Integrità - Bob è sicuro che il messaggio non sia stato modificato (altrimenti non sarebbe decodificabile)

Messaggioin chiaro

MessaggiocifratoAlgoritmo

di codifica

Mittente (Elisa)

Chiave privatadel mittente

CertificationauthorityChiave pubblica

del destinatario

Algoritmodi codifica

Chiave pubblicadel mittente

E

E M

Algoritmo di

decodifica

Ricevente (Mario)

Chiave pubblica del mittente

Messaggioin chiaroMessaggioin chiaro

Chiave pubblicadel ricevente

M

E

Algoritmo di

decodifica

Chiave privatadel destinatario

M

Page 75: Reti di calcolatori  e sicurezza informatica

Cultura Tecnologica del Progetto 76

Politecnico di Milano

Crittografia simmetrica VS asimmetricaCrittografia simmetrica VS asimmetrica Simmetrica

– La stessa chiave è utilizzata sia per codificare che per decodificare

– Gli algoritmi sono più veloci

– La gestione delle chiavi è problematica

– Non offre servizi di non ripudio

Asimmetrica – La chiave usata per

codificare è diversa dalla chiave usata per decodificare

– Gli algoritmi sono più lenti

– La gestione delle chiavi è più semplice (la chiave privata la tengo solo io, la chiave pubblica è “pubblica” per definizione

– Permette di avere servizi di non ripudio

Page 76: Reti di calcolatori  e sicurezza informatica

Cultura Tecnologica del Progetto 77

Politecnico di Milano

Impronta (digest)Impronta (digest) L’impronta dei dati (digest) è una sorta di

“sintesi” dei dati generata mediante appositi algoritmi, detti algoritmi di digest o algoritmi di hash

La funzione di hash è una trasformazione di una stringa di dati in una stringa di dati più corta, avente le seguenti proprietà:

– ha lunghezza fissa (ad es. 160 bit)– dati due messaggi diversi (anche di un solo bit),

la probabilità di ottenere lo stesso digest è estremamente bassa

– dato il digest, non è possibile risalire al messaggio che lo ha generato (la funzione è unidirezionale)

Il digest di un messaggio può essere utilizzato per verificare che il contenuto di un messaggio non sia stato alterato (integrità)

Messaggio originale

Processo di

Hashing

MessageDigest

Page 77: Reti di calcolatori  e sicurezza informatica

Cultura Tecnologica del Progetto 78

Politecnico di Milano

Integrità, autenticità e non ripudio: Integrità, autenticità e non ripudio: Firma digitaleFirma digitale Le funzioni di hash consentono di ottenere una “impronta digitale” del

messaggio (message digest) basata sul suo contenuto. Cambiando anche un solo bit del messaggio originale cambia il valore del

message digest Il message digest è quindi crittografato con la chiave privata del mittente e

aggiunto al messaggio originale (in chiaro)

Messaggio da firmare

Messaggio firmato digitalmente

Processo di

Hashing

MessageDigest

Firma digitale

Chiave privata del mittente

Codifica

Page 78: Reti di calcolatori  e sicurezza informatica

Cultura Tecnologica del Progetto 79

Politecnico di Milano

Integrità, autenticità e non Integrità, autenticità e non ripudio: Firma digitaleripudio: Firma digitale Per verificare che il messaggio ricevuto non è stato modificato

durante la trasmissione e che il mittente è effettivamente che dice di essere, il destinatario compie le seguenti operazioni:

1.usando lo stesso algoritmo di hashing, crea un message digest del documento ricevuto

2.usando la chiave pubblica del mittente (prelevata dalla CA), decodifica la firma digitale del mittente per ottenere il message digest del documento originale

3.confronta i due message digest per verificare se essi coincidono: se i due message digest risultano diversi significa che il messaggio è stato modificato oppure il mittente non è chi dice di essere (ha firmato con una chiave privata diversa)Messaggio firmato

digitalmente

MessageDigest

Chiave pubblica del mittente

Decodifica

CA

MessageDigest

Hashing

Firma digitale

Messaggio

Verifica= ?

Page 79: Reti di calcolatori  e sicurezza informatica

Cultura Tecnologica del Progetto 80

Politecnico di Milano

Firma non digitale

Milano, 1/6/97

Il sottoscritto, Mario Rossi, dichiara solennemente di essere debitore, nei confronti del signor Alberto Verdi, per una somma pari a $1,000.

In fede,

Mario Rossi

Firma digitale

-----BEGIN PGP SIGNED MESSAGE-----Milano, 1/6/97

Il sottoscritto, Mario Rossi, dichiara solennemente di essere debitore, nei confronti del Signor Alberto Verdi, per una somma pari a $1,000.

In fede, Mario Rossi

-----BEGIN PGP SIGNATURE-----iQCVAgUBLdKLSpGzE7b9kOu9AQFqAwP9HIgb0Flj9s2443MnihEvGBT4Wilcs7IqMdfio//DiRoPsEXbndkS6f9WVASOugI+JdSxDjfEo1jVja9RpkNFDIOcvIZljmfoOYO4xXLzag1Tk0rJs/UQiiIgLYrSQVWeR5zdhReON6XUF420jKulct9WAN32Losf3m1BMJ6t7I/+eQ==eRX1-----END PGP SIGNATURE-----

Firme non digitali VS firme Firme non digitali VS firme digitalidigitali

Page 80: Reti di calcolatori  e sicurezza informatica

Cultura Tecnologica del Progetto 81

Politecnico di Milano

Scambio di chiavi pubblicheScambio di chiavi pubblicheCA e PKCCA e PKC

2 soluzioni possibili:– quando qualcuno deve mandarci

un messaggio ci deve prima chiedere la nostra chiave pubblica

– pubblicazione delle chiavi pubbliche da parte di una Certification Authority (CA)

• la CA garantisce la titolarità della chiave pubblica mediante certificati (PKC: Public-Key Certificate)

• il PKC può essere anche fornito direttamente dal suo titolare

Chiave pubblica:Creata il 01/01/99Revocata: NO

Certificato

Nome: Elisa

Chiave pubblica:Creata il 01/12/98Revocata: NO

Certificato

Nome: Mario

Certification Authority

Il problema non è garantire la riservatezza della chiave ma conoscere qual è la chiave pubblica e garantirne l’associazione certa con il suo titolare

Page 81: Reti di calcolatori  e sicurezza informatica

Cultura Tecnologica del Progetto 82

Politecnico di Milano

Public Key Certificate: Standard X.509Public Key Certificate: Standard X.509

Campo ValoreVersion 3

serialNumber 58Issuer C=IT, O=SPQR,

OU=Certification AuthorityValidity 7-feb-2002 : 31-dic-2003Subject C=IT, O=SPQR, CN=Caio

GregoriosubjectAlternative

NameRFC-822, [email protected]

subjectPublicKeyInfo

RSA, 0101100...10110

keyUsage digitalSignature, nonRepudiation, keyExchange,

keyAgreementextendedKeyUsag

eEmailProtection

signatureAlgorithm

Md5WithRSAEncryption

Signature 1101000...10011

Informazioni sul titolare

CA emittente

Periodo validità del PKC

Firma digitale del certificato (per evitare

alterazioni)

Chiave pubblica e utilizzi per i quali è stata

certificata

Page 82: Reti di calcolatori  e sicurezza informatica

Cultura Tecnologica del Progetto 83

Politecnico di Milano

PKI – Gestione della chiave della PKI – Gestione della chiave della CACA Come faccio ad essere sicuro che la Chiave Pubblica della CA sia veramente la sua (chi certifica la CA)?

– Soluz. 1: conservare in ogni postazione di lavoro un elenco (protetto) delle chiavi pubbliche di tutte le CA fidate ogni volta che una CA viene aggiunta o tolta dall’elenco devono essere aggiornate tutte le postazioni di lavoro

– Soluz. 2: conservare in ogni postazione di lavoro un elenco (protetto) di un insieme (ristretto) di Root-CA:

• certificano direttamente alcuni utenti• certificano altre CA subordinate,

formando una gerarchia di CA

Page 83: Reti di calcolatori  e sicurezza informatica

Cultura Tecnologica del Progetto 84

Politecnico di Milano

PKI – Gerarchia di CAPKI – Gerarchia di CA

CA Europa<CA-Europa>

CA Europa<CA-Italia>

CA Europa<CA-Francia>

CA Europa<CA-Spagna>...

CA Italia<CA-Milano>

CA Italia<CA-Telecom>

CA Italia<CA-SPQR>

Root CA o TLCA (top-level CA)

CA-Milano<Mario Rossi>

...

Certificato di Mario Rossi

Page 84: Reti di calcolatori  e sicurezza informatica

Cultura Tecnologica del Progetto 85

Politecnico di Milano

SSL: Secure Socket LayerSSL: Secure Socket Layer Protocollo per la comunicazione sicura tra due partner

– Originariamente sviluppato dalla Netscape è oggi uno standard accettato dalla IETF

– Nasce per risolvere i problemi di sicurezza nella comunicazione tra client e server web ma definisce un protocollo generale indipendente dall’applicazione

– Si utilizzano url del tipo https://... per indicare comunicazione basata su SSL

È stato pensato per essere facilmente estensibile e configurabile

Caratteristiche:– Protocollo con connessione (client e server mantengono diverse

informazioni relativi alla sessione a partire dalla chiave crittografica)– Basato su TCP/IP (porta 443)– Comunicazione crittografata– Possibilità di mutua autenticazione tra client e server basata su

certificati– Caching dei parametri della comunicazione per un efficiente ripristino di

comunicazioni interrotte

Page 85: Reti di calcolatori  e sicurezza informatica

Cultura Tecnologica del Progetto 86

Politecnico di Milano

Proxy e FirewallProxy e Firewall Proxy

– Si pone come intermediario tra client e server– Effettua il caching delle pagine web in maniera da

migliorare le prestazioni percepite dall’utente...– Riducendo il traffico di rete

Firewall– Filtra le comunicazioni per aumentare la sicurezza– In base al protocollo e/o agli indirizzi sorgente e

destinazione– Generalmente:

• blocca tutte le comunicazioni provenienti dall’esterno...• ... lascia passare le comunicazioni provenienti dall’interno