Docsity
Docsity

Prepara i tuoi esami
Prepara i tuoi esami

Studia grazie alle numerose risorse presenti su Docsity


Ottieni i punti per scaricare
Ottieni i punti per scaricare

Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium


Guide e consigli
Guide e consigli


Sintesi sicurezza dei calcolatori, Dispense di Elementi di Informatica

Sintesi sicurezza dei calcolatori e reti

Tipologia: Dispense

2018/2019

Caricato il 01/07/2019

Galamberto
Galamberto 🇮🇹

3.8

(6)

17 documenti

1 / 55

Toggle sidebar

Questa pagina non è visibile nell’anteprima

Non perderti parti importanti!

bg1
Sicurezza
Sicurezza dei calcolatori
Capitolo 2
Enrico Mensa,
Basato sulle lezioni del prof. Francesco Bergadano
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c
pf1d
pf1e
pf1f
pf20
pf21
pf22
pf23
pf24
pf25
pf26
pf27
pf28
pf29
pf2a
pf2b
pf2c
pf2d
pf2e
pf2f
pf30
pf31
pf32
pf33
pf34
pf35
pf36
pf37

Anteprima parziale del testo

Scarica Sintesi sicurezza dei calcolatori e più Dispense in PDF di Elementi di Informatica solo su Docsity!

Sicurezza

Sicurezza dei calcolatori

Capitolo 2

Basato sulle lezioni del prof. Francesco Bergadano^ Enrico Mensa,

Porte legittime e servizi Piccoli frammenti Il source routing Access Control List Perché non ci bastano i packet filter: ftp 7.5) I firewall applicativi Il proxy applicativo Packet filter application aware Transparent proxy I firewall non sono imbattibili La DMZ: i reverse proxy

8) Un elemento fondamentale: il NAT 22

8.1) Perché usare un NAT 8.2) I conflitti con gli altri sistemi

9) Le reti virtuali private (VPN) 24

9.1) Cos’è una VPN e perché usare una VPN 9.2) Due modi di fare VPN Il tunneling Il transport 9.3) Implementare la VPN: il protocollo IPSec Autentication Header (AH) Encapsulating Security Payload (ESP) ESP autenticato Uso combinato di ESP e AH 9.3) VPN e NAT: le incompatibilità Le soluzioni 9.3) VPN innestate

10) La security sopra il livello applicativo 30

10.1) SQL Injection La vulnerabilità La soluzione 10.2) Cross Site Scripting (XSS) Premessa: la cookie authentication La vulnerabilità

Sicurezza Indice degli argomenti - Capitolo 2

11) OWASP: le 10 vulnerabilità 33

11.1) Injection 11.2) Cross Site Scripting (XSS) 11.3) Broken authorization & session management 11.4) Insicure direct object references 11.5) Cross site request forgery 11.6) Security misconfiguration 11.7) Insecure crypthographic storage 11.8) Failure to restrict URL access 11.9) Insufficient transport layer protection 11.10) Unvalidated redirects and forwards 11.11) Ulteriori vulnerabilità 11.12) Dalle vulnerabilità all’analisi dei rischi

12) Standard e certificazione ISO 27001 36

12.1) La nascita dello standard 12.2) ISMS e PDCA 12.3) Parole chiave per un ISMS 12.4) La fase di plan Definire il perimetro De Analizzare e valutare il rischiofinire la politica dell’ISMS Trattare il rischio Ottenere l’approvazione della direzione Redigere lo statement of applicability 12.5) La fase di do 12.6) La fase di check Monitoraggio per rilevare problemi Riesame proattivo 12.7) La fase di act 12.8) Ottenere la certificazione

Sicurezza Indice degli argomenti - Capitolo 2

Sicurezza su reti locali

1) Introduzione Abbiamo parlato della sicurezza nelle comunicazioni: ma tutto quello che abbiamo fatto e studiato può essere

assolutamente inutile se il computer di uno degli attori è manomesso. Inizialmente vedremo la sicurezza all’interno di una intranet e poi la sicurezza verso l’esterno (internet).

2) Lo stack TCP/IP e la sicurezza Andiamo a prendere lo stack internet ed esaminiamolo per capire dove è richiesto l’uso della security.

Trasporto [Porte]

Network [IP]

[MAC]^ Link

Fisico

Applicazione [DNS]

Attacco fisico

MAC spoofing

IP spoofing

DNS spoofing

URL spoofing

Secure

Controllo via browser SSL IPsec WPA Sala server protetta

Questo schema riassume, in sostanza, tutto quello che è la sicurezza relativa alla rete. Il problema sostanziale della rete è la traduzione di indirizzi. La falsi fra cui la lettura di messaggi non autorizzata (ficazione di un indirizzo è detto spoofisningffi. Grazie allo spoo ng ) oppure la manomissione di messaggi.fing è poi possibile effettuare diverse operazioni A Tratteremo dettagliatamente MAC spoo fianco di ogni spoof abbiamo il nome dei protocolli che ci permettono di garantire la sicurezza delle connessioni.fing, IP spoofing, DNS spoofing ed URL spoofing mentre tralasceremo per ovvi motivi l’attacco broadcast di qualche switch) o altre azioni di questo genere. fisico: si tratta di invertire dei cavi nella sala server (magari accedendo ad una porta di

3) MAC spoo Il MAC spoofing consiste nella falsifing ficazione dell’associazione fra indirizzo IP ed indirizzo MAC. Un primo esempio

storico, comunque, non coinvolge direttamente lo spoofing per via della debolezze della rete fisica. 3.1) Sni Prima problematica che esaminiamo è lo sni ffing sulle prime reti storiche ffing. Lo sniffing è un’operazione che consente, all’interno di una intranet, ad una persona non autorizzata di leggere pacchetti non diretti a lui. La prima versione di sni vediamo è quello storico. Le reti erano costituite da server e calcolatori connessi tramite un grosso bus (con unffing che aggeggio intermediario chiamato tranciver). Le macchine erano connesse al bus tramite delle pinze che bucavano la maglia del bus e univano il conduttore del bus con il cavo che sarebbe poi stato attaccato al computer. La comunicazione era (ed è ancora) gestita via ethernet la cui caratteristica fondamentale è il ethernet sfrutta sistemi CSMA/CD cioè carrier sense multiple access collision detection per evitare/risolvere le broadcast. Inoltre, collisioni. In ogni caso la cosa fondamentale da capire è che ethernet comunica in broadcast e ogni calcolatore (o meglio, la scheda di rete di ogni calcolatore) scarterà a livello frame che non sono diretti a lui. fisico (quindi non arriveranno neanche al livello datalink) quei

A Tranciver

E Tranciver

S Tranciver

A

E

S

E è il nostro avversario. Giacché la comunicazione è in broadcast, sarà su modificare la sua scheda di rete per accettare ogni pacchetto. Questa cosa è direttamente implementata nellafficiente per E attaccarsi alla rete e scheda ethernet e viene chiamata modalità promisqua.

Quindi E diventa una sorta di “sottorouter” che, in modo del tutto indisturbato, legge i pacchetti in transito fra A e il suo interlocutore in internet. Ecco che vediamo le due cache ARP sporcate:

A

E

R

S

IP IPAS,, MAC MAC S E IPE, MACE

IP IPRS,, MAC MACE S IPE, MACE

Per evitare che tutto questo accada è possibile e da impedire che uno stesso MAC sia associato a più IP (ma attenzione al problema dell’ARP proxy, che è un tipo diffettuare dei controlli sui calcolatori ma anche sugli switch in modo ARP poisoning “benigno” usato per effettuare subnetting fra due reti fisicamente sconnesse). Contromisure Come evitare il MAC spoofing? Si può usare:

  • ARP statico rete (pessima soluzione! Con reti minimamente dinamiche il costo di mantenimento è elevatissimo).: in sostanza non si usa ARP. Le tabelle di traduzione sono scritte manualmente dall’amministratore di
    • WPASi blocca il broadcasting : si cifra il traffico wi-fi: lo switch butta via tutti i pacchetti che e (che ci riporta in una situazione simile a quanto espresso nel paragrafo 3.1).ffettuano broadcast.

4) IP spoo L’IP spoofing è difingfficile da applicare poiché se falsifico il mio IP in fase di invio la risposta verrà inviata all’indirizzo IP

spoofato e non al mio. In alcuni casi però viene adottato come vedremo in seguito. 4.1) DoS: Denial of Service Una applicazione dell’IP spoofing molto usata sono gli attacchi DoS. Il concetto è quello di bombardare un server di richieste in modo che non sia più in grado di svolgere il suo servizio. Esistono anche attacchi DoS che non sfruttano IP spoofing. L’attacco DoS non è di per sé pericoloso: provoca solo l’interruzione di un servizio. Ma come possiamo immaginare se il servizio è molto importante ed è fondamentale che sia sempre online, allora l’attacco DoS può diventare pericoloso. Ci sono più modi di effettuare un attacco DoS, basati su tecnologie diverse.

Lo smurf attack L’attacco DoS che viene categorizzato come smurf attack si basa sul protocollo ICMP (più precisamente sulle echo request/echo reply). L’avversario E invia una echo request parecchio grande ad un server A. Il server risponderà con un echo reply e la macchina E lo riceverà. Questo “attacco” non è efficace: è uno scontro alla pari poiché ogni richiesta ICMP inviata da E genererà una risposta da A verso E. Esiste invece la variante più efficace che usa un reflector.

E

R

A Reflector

E compone un pacchetto ICMP di echo request falsificato (usa IP spoofing!) in questo modo:

Livelli superiori Head IPHead IP Head ICMPHead ICMPHead ICMP Dati ... IP mittente IP destinatario ... Codice ... Dati ... IPA IPReflector ... Echo request ... ... Così facendo ogni messaggio ICMP inviato da E verrà recapitato a Re inserendo come destinatario il mittente dell’echo request cioè A! Quindi il reflector il quale comporrà, però, un echo replyflector “scherma” E dalle risposte.

Questo tipo di attacco DoS cade sotto la categoria DDoS e cioè Distributed DoS (cioè si sfruttano altri calcolatori).

5

4.2) IP spoo Come abbiamo spiegato prima non è possibile e fing su rete locale (IP spoofing visibile) ffettuare IP spoofing su rete geografica poiché non si riesce ad instaurare una connessione a causa della perdita del sequence number del server. Parliamo, in quel caso, di spoofing cieco. IP Ma è possibile spoofare il proprio indirizzo all’interno della rete locale combinando ARP poisoning e sni Siamo nel caso dell’ IP spoofing visibile. ffing di rete.

A

B

R

Server

LAN Internet

C

IPB, MACA

A (il nostro avversario) vuole instradato a un certo indirizzo su internet ma al posto del suo indirizzo IP (IP fingersi un altro calcolatore sulla rete. Invierà un pacchetto al router per esserea) inserirà l’IP di un altro calcolatore sulla rete interna, diciamo B. Dunque il pacchetto arriverà a destinazione e verrà recapitata la risposta a B. Ma A, grazie ad un ARP poisoning sul router potrà facilmente sniffare la risposta ed ottenere il numero di sequenza tanto anelato.

Quindi il server ed A (sotto le mentite spoglie di B) hanno una connessione aperta.

5) DNS spoofing

5.1) DNS spoo Il DNS spoofing consiste nel fornire ad una macchina gli indirizzi essenziali per la comunicazione esterna (IP, fing indirizzo del router e indirizzo del DNS) errati così da poter portare le connessioni della vittima su server falsificati.

A

E

R

DHCP

---------------------^ IPDHCP^ -->? IP IPAR --> ?-->? IPDNS -->?

DNS

DNS [FAKE]

Appena la macchina di A si accende non conosce il suo indirizzo IP, né quello del router più vicino, né quello del DNS. Ha bisogno del DHCP affinché egli gli fornisca tutte queste informazioni. Ma A non conosce neanche l’indirizzo del DHCP e quindi e queste informazioni. ffettua una richiesta in broadcast per ottenere tutte E si chiederà sempre a DNS [ finge il DHCP e risponde ad A, fornendo l’indirizzo di un DNS che non è quello corretto! A questo punto AFAKE] la traduzione dei nomi di dominio e quindi quando l’utente sulla macchina A scriverà, ad esempio, “www.google.com” sulla barra degli indirizzi esso verrà tradotto in un indirizzo che non è quello del vero Google ma di una pagina simile (graficamente) in tutto e per tutto a quella del famoso motore di ricerca. Il DNS spoo essere sul loro sito della banca/facebook/ecc. e invece si trovano su un sito falso.fing è molto utile per effettuare phishing e cioè ottenere informazioni riservate dalle vittime che pensano di

Contromisure Il DNS spoofing è molto insidioso e sta all’utente fare attenzione al sito su cui si trova. Sebbene l’URL nel browser sia identico a quello del sito e quindi è la soluzione. I browser spesso indicano l’URL in colore verde, un lucchetto e la ragione sociale dell’aziendaffettivamente richiesto, durante la connessione il server fornisce un certificato: l’https in questione se la connessione è https: se mancano queste informazioni (quindi la connessione non è https) l’utente non deve procedere con l’utilizzo del sito. È inoltre sconsigliato l’uso di reti wifi non protette (potrebbero darci un DNS errato).

7) Una prima soluzione: il firewall

7.1) Router: un dispositivo stupido Il firewall è un dispositivo hardware che viene installato nelle reti locali per filtrare i pacchetti che arrivano dall’esterno (ma anche quelli dall’interno verso l’esterno) in modo da fornire una protezione ai calcolatori sulla LAN (e alla rete stessa). Ecco una tipica rete LAN connessa al mondo con un router:

A B

R

Server

Server

LAN Internet

C

Il router è un dispositivo viene filtrato nessun tipo di messaggio. Questo signi stupido , i pacchetti viaggiano dall’interno all’esterno in modo del tutto trasparente, nonfica che ogni dispositivo connesso alla rete è in realtà direttamente raggiungibile da chiunque si trovi in internet. Le macchine sono Inoltre, spesso, le macchine connesse alla LAN non sono sotto il controllo degli amministratori di rete (pensiamo ad esposte. un dipendente che si porti suo portatile) piuttosto che un guest chiunque che con il suo smartphone si colleghi alla rete. Questi dispositivi sono mine vaganti perché possono portare virus e vulnerabilità di ogni genere (di cui il proprietario inesperto è ovviamente ignaro). Quindi il nostro avversario da casa sua ha accesso ai nostri calcolatori e in particolare a quelli vulnerabili: può e possesso della nostra macchina (ad esempio da remoto).ffettuare sniffing, può effettuare botting (usare i nostri calcolatori per effettuare altri attacchi) oppure prendere

Il problema è il router: esso lascia passare ogni tipo di pacchetto. Introduciamo quindi un dispositivo hardware, chiamato firewall , fra lo switch ed il router, che farà da filtro (e non solo):

Chiaramente il stabilire? Lo vedremo in seguito. Prima vediamo alcune topologie di reti con firewall non dovrà bloccare tutti i pacchetti ma solo quelli che riterrà pericolosi. Come lo può firewall.

10

7.2) Topologie di reti con Perché esistono diverse topologie di reti con firewall firewall? A seconda delle esigenze e della disponibilità economica della società proprietaria della rete avremo diverse soluzioni. Reti casalinghe: screening router La soluzione più semplice è quella di installare un router più intelligente che effettua alcune operazioni di filtro. Soluzione adottata nel caso di piccole reti casalinghe.

Reti casalinghe: Un firewall può essere tranquillamente una macchina Linux. Ma una macchina tipica dispone di una sola scheda di firewall single homed rete e quindi come è possibile connettere il router e la LAN contemporaneamente?

Avremo che il router R instraderà tutto il tra Abbiamo ricreato logicamente il collegamento, in sostanza. Chiaramente questo sistema è vulnerabile poiché èffico al firewall il quale, se il pacchetto è “buono”, lo instraderà alla LAN. sufficiente cambiare la tabella di routing di R (non così facile) per accedere alla LAN. Reti piccole: È la situazione di cui abbiamo parlato per prima: il firewall dual homed firewall è frapposto fra LAN e router. Abbiamo due schede di rete (ovviamente).

R

LAN

Screening router

R

LAN

Macchina linux (firewall)

R

LAN

Firewall dual homed

Reti medio-grandi: reti con LAN e DMZ + HA In tutti i nostri discorsi abbiamo dimenticato un fattore fondamentale: l‘affidabilità. Quando un azienda deve fornire a Se ne installano quindi dueffidabilità non può avere un solo non in load balancing firewall, è troppo pericoloso a, cioè, il traffiffico passa sempre e comunque su uno solo (il loaddare ad un solo dispositivo hardware tutta la rete. balancing è problematico per la gestione delle connessioni che hanno una storia, capiremo meglio dopo). Applichiamo quindi della ridondanza: quando un firewall permette questo tipo di funzionalità è detto HA (high availability).

R

LAN

DMZ

in out

DMZ

ping in out

DMZ

La topologia si fa più complessa: abbiamo uno dei due manda ping continui all’altro firewall. Quando i ping smettono poiché il firewall che è acceso e funziona correttamente. Questo firewall è andato in crash, allora l’altro fi vecchiorewall prenderà il posto del primo (facendo ARP poisoning sullo switch prima del router oppure assumendo l’IP del firewall) e tutto funzionerà come prima. Notiamo che abbiamo dovuto introdurre un nuovo switch poiché il router ha una sola interfaccia di rete verso l’interno (ed una sola verso l’esterno).

Come abbiamo visto abbiamo perso la possibilità di connettere le nostre Extranet. Reintroduciamole avendo sempre firewall HA.

Reti grandi: reti con LAN, DMZ ed Extranet + HA

DMZ

DMZ

ping

DMZ

Extranet

Extranet

ping (^) R

Extranet

LAN

R

Extranet

R

Si vede subito come la topologia sia estremamente complessa. Ma abbiamo dei vantaggi notevoli: oltre alla HA possiamo anche permetterci di mettere firewall più veloci (Cisco, ad esempio) della prima fascia relativa alla DMZ (per gestire meglio le connessioni dall’esterno) e invece firewall con filtri più complessi per LAN ed Extranet. 7.3) Tipologie di Per semplicità, ci riferiremo ad una topologia con LAN e DMZ. firewall Non abbiamo un tipo unico di - Screening router : stateless, veloci, si limitano a guardare l’header IP e parte del Transport. Anche detti packet firewall ma a seconda delle esigenze ne abbiamo di tipologie diverse.

  • fi Firewall lter. applicativi : statefull, più lenti, ragionano in merito alle sessioni, danno importanza alla storia in cui vive il pacchetto. Anche detti application gateway. 7.4) I Ci troviamo in un ambito stateless, parliamo di firewall packet filter firewall snelli e che agiscono immediatamente. Dato un pacchetto, questo è ciò che il firewall può usare (ci sono altri campi non riportati poiché non utili ai fini della security):

Head IPHead IPHead IPHead IP Head TCPHead TCPHead TCP IP mittente IP destinatario Protocol Frammentazione (^) mittentePorta destinatario^ Porta^ Bit di sync, Bit di ack

14