17
Setup di un Sito WEB su https con transazioni sicure IIS + SSL Sicurezza su Reti 2004 – Setup di un sito web su https con SSL Corso di Sicurezza su Reti A.A. 2003/2004 Prof.: Alfredo De Santis Realizzato da: Angelo Luciano Christian de Miranda Emiliano De Cristofaro Sommario Sicurezza su Reti 2004 – Setup di un sito web su https con SSL Scenario Il protocollo Https Lo standard SSL OpenSSL IIS: installazione e configurazione Presentazione del nostro sito web Scenario - 1 Sicurezza su Reti 2004 – Setup di un sito web su https con SSL Scenario Il protocollo Https Lo standard SSL OpenSSL IIS: installazione e configurazione Presentazione del nostro sito web Scenario - 2 Sicurezza su Reti 2004 – Setup di un sito web su https con SSL Impedire la trasmissione di dati in chiaro Evitare trasmissioni rischiose Numeri di carta di credito, password, pin Informazioni riservate, confidenziali Credenziali Sfruttare le infrastrutture universalmente utilizzate per i siti “non sicuri” Evoluzione dei servizi non a carico dell’utente Scenario - 3 Sicurezza su Reti 2004 – Setup di un sito web su https con SSL abcdefghijklmnopqrstuvwxyz abcdefgh ijklmnopq rstuvwxyz #@!£$% ]*+!”& £%”;@ #@!£$%]*+!”&£%”;@ abcdefgh ijklmnopq rstuvwxyz abcdefgh ijklmnopq rstuvwxyz abcdefgh ijklmnopq rstuvwxyz abcdefgh ijklmnopq rstuvwxyz offre servizi agli utenti con altissima qualità e credibilità garantisce la sicurezza e la riservatezza della trasmissione della propria banca dati evita danni economici derivanti dal furto di informazioni riservate Scenario - 4 Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

Setup di un Sito WEB su https con transazioni sicureads/corso-security/www/CORSO-0304/...Handshake Protocol Record Protocol Alert Protocol Di norma, solo il client autentica il server

  • Upload
    haquynh

  • View
    214

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Setup di un Sito WEB su https con transazioni sicureads/corso-security/www/CORSO-0304/...Handshake Protocol Record Protocol Alert Protocol Di norma, solo il client autentica il server

Setup di un Sito WEB su httpscon transazioni sicure

IIS + SSL

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

Corso di Sicurezza su RetiA.A. 2003/2004

Prof.: Alfredo De Santis

Realizzato da:Angelo LucianoChristian de MirandaEmiliano De Cristofaro

Sommario

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

Scenario

Il protocollo Https

Lo standard SSL

OpenSSL

IIS: installazione e configurazione

Presentazione del nostro sito web

Scenario - 1

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

Scenario

Il protocollo Https

Lo standard SSL

OpenSSL

IIS: installazione e configurazione

Presentazione del nostro sito web

Scenario - 2

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

Impedire la trasmissione di dati in chiaro

Evitare trasmissioni rischioseNumeri di carta di credito, password, pinInformazioni riservate, confidenzialiCredenziali

Sfruttare le infrastrutture universalmente utilizzate per i siti “non sicuri”

Evoluzione dei servizi non a carico dell’utente

Scenario - 3

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

abcdefghijklmnopqrstuvwxyz

abcdefghijklmnopqrstuvwxyz

#@!£$%]*+!”&£%”;@

#@!£$%]*+!”&£%”;@

abcdefghijklmnopqrstuvwxyz

abcdefghijklmnopqrstuvwxyz

abcdefghijklmnopqrstuvwxyz

abcdefghijklmnopqrstuvwxyz

offre servizi agli utenti con altissima qualità e credibilità

garantisce la sicurezza e la riservatezza della trasmissione della propria banca dati

evita danni economici derivanti dal furto di informazioni riservate

Scenario - 4

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

Page 2: Setup di un Sito WEB su https con transazioni sicureads/corso-security/www/CORSO-0304/...Handshake Protocol Record Protocol Alert Protocol Di norma, solo il client autentica il server

instaura un rapporto sicuro garantito da uno standard internazionale

non teme per la sicurezza e la riservatezza dei propri dati personali e finanziari

valuta il servizio offertogli sicuro, affidabile e di qualità

Scenario - 5

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

HTTPS - 1

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

Scenario

Il protocollo Https

Lo standard SSL

OpenSSL

IIS: installazione e configurazione

Presentazione del nostro sito web

HTTPS - 2

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

Hyper Text Transfer Protocol Secure

HTTP SSL

protocollo della suite TCP/IP

fulcro della struttura del World Wide Web

implementa il trasferimento di informazioni ipertestuali sulla rete

standardizzazione iniziata dalla IETF, sotto l’egida della W3C, nel 1994 e terminata nel 2000 con la versione 1.1

basato su uno schema client/serverrequest/response

HTTPS - 3

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

Il browser (es. Internet Explorer):effettua la richiesta di una determinata risorsa remota, residente sul WebServerinterpreta il codice HTML della risposta, fornendo la formattazione e l’impaginazione opportune

Il Web Server (es. IIS o Apache):attende le richieste, in ascolto sulla porta 80quando riceve una richiesta, fornisce al client la risorsa desiderata

HTTPS - 4

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

L’HTTP deve codificare opportunamente le richieste del client e le risposte del server

Per riferirsi ad una risorsa si utilizza una particolare stringa di caratteri

Universal Resource Locator (URL)Es. http://nome_server:porta/path/nome_risorsa

HTTPS - 5

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

Page 3: Setup di un Sito WEB su https con transazioni sicureads/corso-security/www/CORSO-0304/...Handshake Protocol Record Protocol Alert Protocol Di norma, solo il client autentica il server

HTTPS rappresenta un’importante evoluzione dei servizi offerti dall’HTTP

introduce la sicurezza della trasmissione, utilizzando lo standard SSL

Lo sforzo per la sicurezza è trasparente all’utente

la complessità del protocollo è incapsulata nelle applicazioniclient/serverle applicazioni aggiungono lo strato software necessario alla realizzazione della trasmissione sicura

HTTPS - 6

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

SSL - 1

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

Scenario

Il protocollo Https

Lo standard SSL

OpenSSL

IIS: installazione e configurazione

Presentazione del nostro sito web

Standard, non proprietario, proposto dalla Netscape Communications nel 1994

Attualmente in uso la versione 3.0, standardizzata dalla IETF nel 1996

SSL - 2

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

Secure Sockets Layer

Protezione dei datiUtilizzo di protocolli di crittografia per la trasmissione delle informazioni

Integrità dei messaggiUtilizzo di funzioni hash sicure su firme digitali

Autenticazione dell’entitàUtilizzo di certificati garantiti da autorità di certificazione per autenticare gli endpoint

SSL - 3

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

SSL consente la protezione di informazioni mediante l’uso di algoritmi di cifratura

crittografia simmetrica: utilizzo della stessa chiave per la codifica e per la decodifica

crittografia asimmetrica: utilizzo di chiavi diverse (chiave pubblica, chiave privata)

SSL utilizza uno schema ibrido

SSL: CRITTOGRAFIA - 4

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

Crittografia simmetricarichiede che entrambe le parti conoscano la chiavela diffusione della chiave rappresenta la principale debolezzarichiede pochi cicli di CPUsicurezza basata sulla lunghezza della chiavein SSL la chiave varia tra 40 e 168 bit

Crittografia asimmetricaschema introdotto in risposta ai limiti dello schema simmetricoè più lenta di circa 1000 volte rispetto alla crittografia simmetrical’algoritmo RSA utilizza un’aritmetica modulare per implementare il concetto di chiave pubblica e privatale transazioni SSL iniziano con uno scambio asimmetrico della chiave di sessioneutilizzo della chiave pubblica (nota a tutti) per la codifica, chiave privata (segreta al destinatario) per la decodifica

SSL: CRITTOGRAFIA - 5

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

Page 4: Setup di un Sito WEB su https con transazioni sicureads/corso-security/www/CORSO-0304/...Handshake Protocol Record Protocol Alert Protocol Di norma, solo il client autentica il server

L’associazione di una firma digitale ai messaggi ne garantisce l’integrità

la possibilità che un messaggio sia compromesso è minimizzata

Una firma digitale è un’impronta digitale a cui viene applicata una funzione hash

basata sul checksum del messaggio

difficile da invertire

SSL: FIRME DIGITALI - 6

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

SSL: FIRME DIGITALI - 7

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

Client Server

HashHash Hash

Le due parti computano l’impronta

Calcolano l’hash

Confrontano l’hash

Se i risultati corrispondono, il messaggio non è stato alterato

I certificati digitali sono utilizzati da SSL per l’autenticazione dei server

Sono documenti digitali che attestano l’associazione di una chiave pubblica ad un individuo o ad un’entità

SSL: CERTIFICATI - 8

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

SSL: CERTIFICATI - 9

SSL utilizza lo standard X.509 per validare le identità

i certificati conformi a tale standard contengono le informazioni sull’entità certificata, una chiave pubblica e un nomeil certificato deve essere convalidato da un’autorità di certificazione definito dalla ITUT nel 1988, rivisto nel 1993 e nel 1995

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

SSL: CERTIFICATI - 10

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

Version

Serial Number

Issuer Unique Identifier

Issuer Name

Subject’s Public Key Information

Validity Period

Signature Algorithm ID

Subject Name

Subject Unique Identifier

Extensions

Firma dei Precendeti Campi

Standard X.509Valore intero

Unico per ogni CAIdentifica il certificato

Valore interoUnico per ogni CA

Identifica il certificato

1. Default2. Se presente “Issuer/subject

unique identifier”3. Se ci sono estensioni

1. Default2. Se presente “Issuer/subject

unique identifier”3. Se ci sono estensioni

Algoritmo usato per firmare il certificato

Algoritmo usato per firmare il certificato

Nome X.500 della CA che ha creato e firmato

il certificato

Nome X.500 della CA che ha creato e firmato

il certificato

Periodo di validità del certificato

Periodo di validità del certificato

Nome utente del certificato

Nome utente del certificato

Informazioni sulla chiave pubblica e relativo algoritmo

Informazioni sulla chiave pubblica e relativo algoritmo

Opzionale: stringa di bit utile per identificare la CA

Opzionale: stringa di bit utile per identificare la CA

Opzionale: stringa di bit per identificare il soggetto

Opzionale: stringa di bit per identificare il soggetto

Diversi campi di estensione

Diversi campi di estensione

Firma dell’Hash di tutti gli altri campi

Firma dell’Hash di tutti gli altri campi

SSL: CA - 11

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

CERTIFICATION AUTHORITY

Page 5: Setup di un Sito WEB su https con transazioni sicureads/corso-security/www/CORSO-0304/...Handshake Protocol Record Protocol Alert Protocol Di norma, solo il client autentica il server

SSL: CA - 12

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

La patente abilita alla guida, ma è anche valida come documento di riconoscimento

è rilasciata da un’autorità pubblica fidata, come la Prefettura o la Motorizzazione Civilela Prefettura rappresenta l’autorità certificantela nostra patente rappresenta un certificato che permette la nostra “autenticazione”

SSL: CA - 13

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

Un certificato digitale garantisce l’identità di un endpoint

come un documento garantisce l’identità di una personaè necessario per implementare il concetto di transazione sicura ed affidabile

Il certificato deve necessariamente essere autenticato da un’autorità affidabile

ad es. VeriSign è responsabile della certificazione della maggior parte dei siti web

Un’autorità richiede la garanzia di un’altra, ritenuta più affidabile

tale procedimento di fiducia è vitale per l’autenticazione di un’entitàes. il sito www.posteitaliane.it ha un certificato validato dall’autorità PosteCert, a sua volta validata dalla GTE Cyber Trust Rootin una sessione https è possibile, nel browser, cliccare sul lucchetto in basso a destra per visualizzare la catena dei certificati interessati

SSL: CA - 14

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

SSL: CA - 15

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

Root CA

Livello 1CA #1

Livello 1CA #2

Livello 2CA #3

Livello 2CA #5

Livello 2CA #4

Livello 2CA #6

Client:

tipicamente è il browser web (deve supportare SSL)

avvia la transazione

Server:

tipicamente è il server web (deve supportare SSL)

SSL: FUNZIONAMENTO - 16

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

Una sessione SSL consta di uno stack a tre protocolli:

Handshake Protocol (Inizializzazione della sessione)Records Protocol (Trasferimento dati)Alert Protocol (Messaggi di errore)

SSL: FUNZIONAMENTO - 17

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

BrowserWeb Server

Handshake Protocol

Record Protocol

Alert Protocol

Page 6: Setup di un Sito WEB su https con transazioni sicureads/corso-security/www/CORSO-0304/...Handshake Protocol Record Protocol Alert Protocol Di norma, solo il client autentica il server

Di norma, solo il client autentica il serveri server web infatti utilizzano altri metodi per l’autenticazione del clientad es. il Web Site Server può verificare la carta di credito dell’utente al di fuori della sessione SSL (virtual pos)in questo modo il server riserva preziose risorse per le transazioni criptate

SSL: HANDSHAKE - 18

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

Passi fondamentali:negoziazione dei parametri di sessione (algoritmi dicifratura)autenticazione del server mediante invio di credenziali

SSL utilizza la crittografia asimmetrica solo per negoziare la chiave di sessione per la cifratura a chiave simmetrica

i dati dell’applicazione vengono cifrati con algoritmi a chiave simmetrica durante la fase di trasferimentomeccanismo di digital envelope

SSL: HANDSHAKE - 19

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

SSL: HANDSHAKE - 20

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

Client Server

Client Hello

Server HelloCertificato ServerScambio Chiave ServerRichiesta CertificatoServer Hello: OK

Certificato ClientScambio Chiave ClientVerifica CertificatoCambio CifraturaFine

Cambio CifraturaFine

Dati Applicazione

Gestisce la cifratura per i tutti i messaggi SSL

Fornisce un formato comune per incapsulare messaggi di tipo Alert, ChangeChiperSpec, Handshake, messaggi di applicazione

SSL: RECORDS - 21

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

Tipo Versione Lunghezza

Dati

Hashed-Based Message Authentication Code (HMAC) Message Digest (MD5)

Pad Lunghezza Pad

Gestisce pacchetti informativiSe il client o il server rilevano un errore, essi inviano subito un “alert” contenente l’errore

Messaggi alert: warning, critical, fatalin base al messaggio ricevuto la sessione è sospesa (warning, critical) o terminata (fatal)

SSL: ALERT - 22

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

OPENSSL - 1

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

Scenario

Il protocollo Https

Lo standard SSL

OpenSSL

IIS: installazione e configurazione

Presentazione del nostro sito web

Page 7: Setup di un Sito WEB su https con transazioni sicureads/corso-security/www/CORSO-0304/...Handshake Protocol Record Protocol Alert Protocol Di norma, solo il client autentica il server

OpenSSL: Open Secure Socket Layer Protocol

È un toolkit open source e multipiattaformasviluppato da Eric A. Young e Tim J. Hudson

attualmente alla versione 0.9.7d

implementa il protocollo SSL (v.2/v.3) e TLS (v.1)

fornisce una potente libreria di crittografia general-purpose

richiede Windows 95 o superiore e Internet Explorer 4.0 o superiore

OPENSSL: INTRODUZIONE - 2

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

Utilizziamo OpenSSL per creare una CA che validi la richiesta di certificazione del nostro server web

I certificati validati solo dalla propria CA sono di fatto utilizzabili solo in fase di testing

quando un client accede ai contenuti del server, la nostra autorità, che ha validato il certificato, non viene riconosciuta come affidabile

altrimenti dovremmo richiedere, a pagamento, la certificazione ad un’autorità fidata

OPENSSL: INTRODUZIONE - 3

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

Sappiamo che per utilizzare SSL su un webserver è necessario installare un certificato X.509 valido

Passi necessari:preparare una richiesta di certificazione con i propri dati

sottoporre la richiesta ad una CA ritenuta affidabile (es. VeriSign)

installare correttamente il certificato ottenuto

OPENSSL: INTRODUZIONE - 4

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

La versione per Windows (Win32 OpenSSL) è reperibile in rete gratuitamente

www.shininglightpro.com/products/Win32OpenSSL.html

E’ possibile scaricare la versione per Linuxdirettamente dal sito www.openssl.org

Scaricato il file eseguibile, seguire le impostazioni di default e installare il toolkitnella dir C:\OpenSSL

OPENSSL: SETUP - 5

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

Per funzionare correttamente OpenSSL necessita di un file di configurazione per il setup della CA

è possibile reperire in rete diversi file di configurazione o scriverlo manualmentewww.dylanbeattie.net/docs/openssl.confwww.pvx.com, www.securityfocus.com

Creare la struttura delle directory necessariacreare una directory di lavoro c:\sslcreare le sottodirectory keys, requests e certscreare il file database.txt come un file di testo vuotocreare il file serial.txt contenente “01” e il “newline”

OPENSSL: CONFIGURAZIONE - 6

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

Crea una coppia di chiavi pubblica e privata per la CA

Crea un certificato master relativo alle chiavi generate

Esporta il certificato in formato PCKS12per importare il certificato nel browser al fine di riconoscere come fidata la CA (e quindi tutte le entità da essa certificate)

Valida le richieste di certificazione pervenute secondo lo standard X.509

OPENSSL: CA - 7

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

Page 8: Setup di un Sito WEB su https con transazioni sicureads/corso-security/www/CORSO-0304/...Handshake Protocol Record Protocol Alert Protocol Di norma, solo il client autentica il server

Generiamo la coppia di chiavi: utilizziamo RSAl’esponente pubblico (e) utilizzato di default è 65537

l’utente può selezionare un diverso esponente

il modulo (n) viene generato pseudo-casualmente dalla libreria rand.h di OpenSSL

la tripla (n, d, e) viene memorizzata nel file ca.key secondo il formato PEM

per una maggiore sicurezza, è possibile cifrare il file ca.keycon un algoritmo a chiave simmetrica utilizzando una PASS PHRASE

la chiave dell’algoritmo di cifratura è una funzione hash della PASS PHRASE

OPENSSL: CA - 8

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

C:\ssl>c:\openssl\bin\openssl genrsa –des3–out keys/ca.key 1024

OPENSSL: CA - 9

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

viene usato il sistema RSA per generare la coppia di chiavi.

L’esponente pubblico di default è 65537. Con l’opzione –F4 si può scegliere un diverso esponente.

utilizziamo l'algoritmo deltriploDES per cifrare il file.

Si genera la chiave di cifratura del triploDES

attraverso una funzione hash di una PASS PHRASE

file ca.key dove è contenuta la tripla

(n, d, e)

Lunghezza in bit della chiave

Creare un certificato master relativo alle chiavi generate, memorizzate in ca.key, da usare per firmare gli altri certificati

se il file ca.key è stato cifrato, verrà richiesta la PASS PHRASE per risalire alla chiaveC:\ssl>c:\openssl\bin\openssl req –config openssl.conf –new –x509 –days 1001 –key keys/ca.key –out certs/ca.cer

OPENSSL: CA - 10

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

richiesta di certificato

file di configurazione

crea un nuovo certificato

standard X.509

validità del certificato

file della chiave privata

certificato creato in ca.cer

Esportare il certificato nel formato PKCS12C:\ssl>c:\openssl\bin\openssl pcks12 –export –incerts/ca.cer –inkey keys/ca.key out certs/ca.p12

OPENSSL: CA - 11

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

certificato da esportare

formato di esportazione

file della chiave privata

Certificato in formato PKCS12

comando per l’esportazione

Per firmare una richiesta di certificazioneC:\ssl>c:\openssl\bin\openssl ca -policy policy_anything -config openssl.conf -cert certs/ca.cer -in requests/certreq.txt-keyfile keys/ca.key -days 360 -out certs/iis.cer

OPENSSL: FIRMARE RICHIESTA - 12

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

file di configper la CA

eventuali regole di

restrizione

file della chiave

privata della CA certificato del

webserver

richiesta di certificazione

certificato master della CA

validità del certificato

Convertire il certificato nel formato X.509C:\ssl>c:\openssl\bin\openssl x509 -in certs/iis.cer -outcerts/iisx509.cer

OPENSSL: FIRMARE RICHIESTA - 13

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

certificato convertito

allo standardstandard

X.509

certificato da convertire

Il comando lascia il nuovo certificato in c:\ssl\certs\iisx509.cer

È firmato e pronto per essere installato sul webserver

Page 9: Setup di un Sito WEB su https con transazioni sicureads/corso-security/www/CORSO-0304/...Handshake Protocol Record Protocol Alert Protocol Di norma, solo il client autentica il server

IIS - 1

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

Scenario

Il protocollo Https

Lo standard SSL

OpenSSL

IIS: installazione e configurazione

Presentazione del nostro sito web

IIS - 2

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

Internet Information Service è il server web di Microsoft su piattaforme Windows È fornito su:

Windows 2000 PROWindows 2000 ServerWindows XP PROWindows 2003 Server

IIS: INSTALLAZIONE - 3

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

Poiché IIS è un componente di Windows, per installarlo è necessario accedere alla schermata di installazione/rimozione di componenti di WindowsPer accedervi:

Pannello di controlloInstallazione applicazioni

IIS: INSTALLAZIONE - 4

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

A questo punto cliccare su Installazione componenti di Windows

IIS: INSTALLAZIONE - 5

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

Selezionare Internet Information Services e cliccare Avanti

IIS: INSTALLAZIONE - 6

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

Ora il nostro Server Web è in ascolto sulla porta 80Lo possiamo facilmente verificare aprendo una sessione di Internet Explorer e digitando nella URL:

http://localhost/localstart.asp

Il server web ci restituirà una pagina di benvenuto che ci informa dell’effettiva esecuzione del servizio web

È possibile inoltre navigare all’interno della documentazione di IIS

Page 10: Setup di un Sito WEB su https con transazioni sicureads/corso-security/www/CORSO-0304/...Handshake Protocol Record Protocol Alert Protocol Di norma, solo il client autentica il server

IIS: CONFIGURAZIONE- 7

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

Dopo il setup del server, passiamo ora alla fase di abilitazione della connessione protetta

generiamo una richiesta di certificazione da sottoporre ad una CA

ricevuto il certificato valido, passiamo alla sua installazione

IIS: CONFIGURAZIONE - 8

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

Al termine dell’installazione di IIS, ritornare nel pannello di controllo e cliccare su Strumenti di amministrazione

IIS: CONFIGURAZIONE – 9

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

Per accedere al tool di configurazione di IIS, cliccare su Internet Information Services

IIS: CONFIGURAZIONE - 10

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

Per accedere alla finestra delle proprietà del server selezionare Sito Web predefinito:

tasto destro del mouseclic su proprietà

IIS: CONFIGURAZIONE - 11

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

Accedere alla scheda Protezione directory

IIS: CONFIGURAZIONE - 12

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

A questo punto cliccare su Certificato server…

Page 11: Setup di un Sito WEB su https con transazioni sicureads/corso-security/www/CORSO-0304/...Handshake Protocol Record Protocol Alert Protocol Di norma, solo il client autentica il server

IIS: CONFIGURAZIONE - 13

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

IIS: CONFIGURAZIONE - 14

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

Selezionare Crea nuovo certificato e cliccare

su Avanti

Il software ci darà ora la possibilità di generare una richiesta, accorgendosi dell’assenza di richieste in sospeso

IIS: CONFIGURAZIONE - 15

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

Cliccando su Avanti si accede al tool per la preparazione della richiesta dove verranno richiesti con una serie di form i dati e i parametri necessari

IIS: CONFIGURAZIONE - 16

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

IIS: CONFIGURAZIONE - 17

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

IIS: CONFIGURAZIONE - 18

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

Page 12: Setup di un Sito WEB su https con transazioni sicureads/corso-security/www/CORSO-0304/...Handshake Protocol Record Protocol Alert Protocol Di norma, solo il client autentica il server

IIS: CONFIGURAZIONE - 19

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

IIS: CONFIGURAZIONE - 20

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

IIS: CONFIGURAZIONE - 21

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

IIS: CONFIGURAZIONE - 22

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

IIS: CERTIFICATO - 23

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

Supponiamo di aver ottenuto da una CA la validazione della richiesta, installiamo:

riportiamoci nella schermata di protezione directory, accessibile dalle proprietà del sito web predefinitocliccare quindi nuovamente su certificato server…

IIS: CERTIFICATO - 24

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

Poiché vi è una richesta in sospeso il tool ci permetterà di elaborarla o eventualmente eliminarla

Elaboriamo la nostra richiesta

Page 13: Setup di un Sito WEB su https con transazioni sicureads/corso-security/www/CORSO-0304/...Handshake Protocol Record Protocol Alert Protocol Di norma, solo il client autentica il server

IIS: CERTIFICATO - 25

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

la CA ha rilasciato il certificato, conforme allo std X.509

tale certificato è memorizzato nel path sopra indicato

importiamo il certificato

IIS: CERTIFICATO - 26

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

IIS: CERTIFICATO - 27

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

Il certificato è ora installato sul server

L’ultimo step consiste nell’abilitare il canale sicuro sul sito in modo che il server effettivamente sia in ascolto sulla porta SSL

Cliccare su modifica nella sezione comunicazioni protette

IIS: CERTIFICATO - 28

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

Abilitiamo il canale protetto SSL

Per una maggiore sicurezza abilitiamo opzionalmente la crittografia a 128 bit (default 40 bit)

Il protocollo SSL prevedeopzionalmente che il server autentichi il client (di norma disabilitato)

IIS: CERTIFICATO - 29

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

IIS: CERTIFICATO - 30

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

Cliccando sul lucchetto in basso a destra del browser, viene visualizzata la schermata relativa alle informazioni sul certificato:

Il beneficiario

Autorità certificante

Validità

Page 14: Setup di un Sito WEB su https con transazioni sicureads/corso-security/www/CORSO-0304/...Handshake Protocol Record Protocol Alert Protocol Di norma, solo il client autentica il server

SITO WEB – 1

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

Scenario

Il protocollo Https

Lo standard SSL

OpenSSL

IIS: installazione e configurazione

Presentazione del nostro sito web

SITO WEB - 2

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

Soluzione B2B

Un consorzio di supermercati necessita di un sistema per divulgare ai propri soci informazioni riservate

contratti commerciali confidenziali stipulati con le aziende fornitrici

pianificazione promozionale annua del consorzio

SITO WEB - 3

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

AMMINISTRAZIONE DEL CONSORZIO:

dispone già di un sistema back-end per la gestione interna di tali informazioni

non dispone, invece, di un modo per divulgarle ai propri soci in modo sicuro e automatizzato

LA SOLUZIONE:

interfaccia Web che consente ai soli soci (dotati di una coppia user/pass) di accedere alle informazioni riservate

Dati su un canale sicuro in HTTPS

SITO WEB - 4

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

GLI UTENTI:

Il dominio degli utenti è rappresentato dall’insieme dei soci del consorzio

Accedono all’interfaccia tramite un normalissimo browser web che supporta SSL

Si autenticano al sistema fornendo coppia user/pass

Ottengono le informazioni riservate navigando all’interno dell’interfaccia

SITO WEB - 5

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

Il codice del sito è scritto in ASPè una tecnologia di scripting server-side di Microsoft che serve a creare pagine dinamiche

direttamente integrato e supportato dal webserver IIS

la tecnologia è simile al visual-basic ed è realizzata mediante un preprocessore utilizzato dal webserver per il recupero dei parametri e per la produzione del codice html

abbiamo utilizzato Microsoft Development Environment come ambiente di sviluppo per la scrittura del codice

SITO WEB - 6

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

Utilizziamo Microsoft Office come DBMSper la memorizzazione dei dati che vorremo proteggere

L’accesso alla base di dati è estremamentesemplice da realizzare con ASP

l’astrazione generica di database fornita da ASP permette un accesso alla fonte indipendente (o quasi) dal formato

Page 15: Setup di un Sito WEB su https con transazioni sicureads/corso-security/www/CORSO-0304/...Handshake Protocol Record Protocol Alert Protocol Di norma, solo il client autentica il server

SITO WEB - 7

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

SITO WEB - 8

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

Homepage di www.miosito.comLa connessione è ancora in chiaro

Click

SITO WEB - 9

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

Pannello di accesso all’area riservata

Connessione protetta con SSL a 128 bit

SITO WEB - 10

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

Pannello di accesso all’area riservata

Autenticazione utente

SITO WEB - 11

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

Pagina principale del pannello di controllo

SITO WEB - 12

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

Page 16: Setup di un Sito WEB su https con transazioni sicureads/corso-security/www/CORSO-0304/...Handshake Protocol Record Protocol Alert Protocol Di norma, solo il client autentica il server

SITO WEB - 13

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

E’ possibile anche consultare i dettagli

di ogni contratto

SITO WEB – 14

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

SITO WEB - 15

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

SITO WEB - 16

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

E’ possibile anche consultare i dettagli di ogni promozione

SITO WEB - 17

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

SITO WEB - 18

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

Page 17: Setup di un Sito WEB su https con transazioni sicureads/corso-security/www/CORSO-0304/...Handshake Protocol Record Protocol Alert Protocol Di norma, solo il client autentica il server

BIBLIOGRAFIA - 1

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

- D.E. Comer, Internetworking con TCP-IP , Addison Wesley, 1995

- Cisco System, Introduction to socket layer, Cisco System Inc., 2001

- Microsoft Corporation, Microsoft Internet Information Services 6.0 ResourceKit, Microsoft Press, 2003

BIBLIOGRAFIA - 2

Sicurezza su Reti 2004 – Setup di un sito web su https con SSL

- www.ietf.org, sito della Internet Engineering Task Force

- www.w3c.org, sito della World Wide Web Consortium

- www.openssl.org, sito dell’OpenSSL Project

- developer.netscape.com/docs/manuals/security/sslin/contents.htm, introduzione a SSL della Netscape

- www.dylanbeattie.net, sito dove abbiamo recuperato il file di config perOpenSSL

- www.shininglightpro.com, sito da dove abbiamo scaricato OpenSSL per Windows

- www.microsoft.com/WindowsServer2003/iis/default.mspx, sito di help periis 6.0