IOT E SICUREZZA 2 - NETWORK SECURITY - TOMMASO PECORELLA, PHD DPT. INGEGNERIA DELL'INFORMAZIONE - UNIV. FIRENZE 2 - NETWORK SECURITY

Pagina creata da Luigi Orlandi
 
CONTINUA A LEGGERE
IOT E SICUREZZA 2 - NETWORK SECURITY - TOMMASO PECORELLA, PHD DPT. INGEGNERIA DELL'INFORMAZIONE - UNIV. FIRENZE 2 - NETWORK SECURITY
IoT e Sicurezza

                                                                 Ottobre 2018

                                         IoT e Sicurezza

                                               2 – Network security

                                 Tommaso Pecorella, PhD
         Dpt. Ingegneria dell’Informazione - Univ. Firenze

This work is licensed under a Creative Commons
“Attribution-NonCommercial-ShareAlike 4.0 International”
license.

                                        Firenze – Ottobre 2018
IOT E SICUREZZA 2 - NETWORK SECURITY - TOMMASO PECORELLA, PHD DPT. INGEGNERIA DELL'INFORMAZIONE - UNIV. FIRENZE 2 - NETWORK SECURITY
IoT e Sicurezza

                                                 Ottobre 2018

Outline

Attaccanti
    Fisionomia dell’attaccante

Sicurezza – approccio sistematico
    Security e Safety
    Have a plan

Vulnerabilità
Vulnerabilità nel TCP/IP
    ARP e NDP spoofing
    SYN flooding
    TCP Reset
    DNS Poisoning

Strumenti di difesa
    Firewalls
    Intrusion Detection / Prevention Systems

                                                          1
IOT E SICUREZZA 2 - NETWORK SECURITY - TOMMASO PECORELLA, PHD DPT. INGEGNERIA DELL'INFORMAZIONE - UNIV. FIRENZE 2 - NETWORK SECURITY
IoT e Sicurezza

                                                                                    Ottobre 2018

Hackers

Il primo che dice la parola ‘Hacker’ verrà accompagnato alla porta.

E’ come dire ‘Ho la febbre perché ho preso un virus’.
Quale virus ? Influenza, Epatite, Ebola ?

        A computer hacker is any skilled computer expert that uses their technical
    knowledge to overcome a problem. While "hacker" can refer to any skilled com-
    puter programmer, the term has become associated in popular culture with a "se-
    curity hacker", someone who, with their technical knowledge, uses bugs or exploits
    to break into computer systems.

                                        Wikipedia

Il termine risale agli anni ’60

                                                                                             2
IOT E SICUREZZA 2 - NETWORK SECURITY - TOMMASO PECORELLA, PHD DPT. INGEGNERIA DELL'INFORMAZIONE - UNIV. FIRENZE 2 - NETWORK SECURITY
IoT e Sicurezza

                                                                                         Ottobre 2018

Attaccanti
Gli attaccanti si riconoscono dal cappello

  • White hat – Effettua attacchi con scopi NON malevoli.
  • Black hat – Effettua attacchi con scopi malevoli.
  • Grey hat – Metà White, metà Black.
  • Script kiddie – Attaccante senza specifiche skills, usa attacchi ‘preconfezionati’.
  • Blue hat – Attaccante ‘interno’ all’azienda. Tester di sicurezza.
  • Hacktivist – Attaccante con scopi sociali, ideologici, religiosi, politici, etc. Vuole
    diffondere un messaggio.
  • Nation state – Sperate di non esserne vittima.

I più pericolosi sono gli Script Kiddie – perché non sanno quello che fanno.
I più dannosi sono i Black hats – perché sanno quello che fanno.
I più costosi sono gli White hats – perché vi diranno cosa non va.
                                                                                                  3
IOT E SICUREZZA 2 - NETWORK SECURITY - TOMMASO PECORELLA, PHD DPT. INGEGNERIA DELL'INFORMAZIONE - UNIV. FIRENZE 2 - NETWORK SECURITY
IoT e Sicurezza

                                                                                      Ottobre 2018

Cos’è la sicurezza

La sicurezza è un concetto apparentemente semplice.

  • NIST Computer Security Handbook1 definisce la computer security come:
        Protection afforded to an automated information system in order to attain the ap-
        plicable objectives of preserving the Integrity, Availability, and Confidentiality of
        system resources.
  • Si possono definire 6 proprietà:
       •   Availability (Disponibilità);
       •   Authentication (Autenticazione);
       •   Confidentiality (Confidenzialità);
       •   Integrity (Integrità);
       •   Non repudiation (Non ripudiabilità);
       •   Access control (Controllo degli accessi).

  1 https://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.800-12r1.pdf                 4
IoT e Sicurezza

                                                                                      Ottobre 2018

Availability – Disponibilità

 • Il servizio deve essere disponibile;
 • La disponibilità è molto difficile da garantire ⇒ è compito della pianificazione del
   servizio;
 • Gli attacchi di Denial of Service (DoS) minano la disponibilità del servizio.
     • Gli attacchi DoS devono essere difficili da realizzare !

                                                                                               5
IoT e Sicurezza

                                                                          Ottobre 2018

Authentication – Autenticazione

 • Occorre essere sicuri dell’identità dei soggetti;
 • Verificare l’identità di un soggetto è complesso;
 • Mantenere i dati di autenticazione segreti è ancora più complesso;
 • Si usano firme digitali.

                                                                                   6
IoT e Sicurezza

                                                                                  Ottobre 2018

Confidentiality - Confidenzialità

 • I dati scambiati tra mittente e ricevente devono essere mantenuti segreti;
 • Si possono sempre intercettare i dati su Internet (sniffing);
 • Per avere confidenzialità si usa la crittografia.

                                                                                           7
IoT e Sicurezza

                                                                                    Ottobre 2018

Integrity – Integrità

 • I dati non devono essere alterati (durante la trasmissione);
 • E’ possibile alterare un messaggio senza violare la cifratura ⇒ bit flipping attack;
 • Per avere integrità si usano funzioni di hash.

                                                                                             8
IoT e Sicurezza

                                                       Ottobre 2018

Non repudiation – Non ripudiabilità

 • Non si può negare di aver mandato un messaggio;
 • E’ importante quando si mandano documenti;
 • Si usano le digital signature.

                                                                9
IoT e Sicurezza

                                                                                          Ottobre 2018

Access control – Controllo degli accessi

 • Assegnare i profili agli utenti e limitare gli accessi ai servizi agli utenti autorizzati;
 • Bisogna prima avere un’autenticazione;
 • Necessario per una buona politica di sicrezza;
      • Limitare (e isolare) le conseguenze legali;
 • Occorre usare tecniche di accounting.

                                                                                                   10
IoT e Sicurezza

                                                                        Ottobre 2018

E’ questa la sicurezza ?

Per fortuna no

La “sicurezza” è in realtà una cosa un po’ più ampia.
Sicurezza in inglese si traduce con DUE termini: Security e Safety.

                                                                                 11
IoT e Sicurezza

                                                                                                                        Ottobre 2018

Security e Safety

Security
 1. The quality or state of being secure from danger, fear or anxiety, the prospect of being laid off (job security), etc.
 2. Something given, deposited, or pledged to make certain the fulfillment of an obligation
 3. An instrument of investment in the form of a document (as a stock certificate or bond) providing evidence of its ownership
 4. Something that secures, e.g., measures taken to guard against espionage or sabotage, crime, attack, or escape – an
    organization or department whose task is security

Safety
 1. The condition of being safe from undergoing or causing hurt, injury, or loss
 2. A device (as on a weapon or a machine) designed to prevent inadvertent or hazardous operation
 ...

http://www.merriam-webster.com/dictionary/safety

                                                                                                                                 12
IoT e Sicurezza

                                                                                   Ottobre 2018

Sicurezza e costi

E’ anche abbastanza chiaro che la sicurezza ha un costo in termini di:
 1. Aumento della complessità del sistema.
 2. Implementazione e manutenzione.
 3. Operatività (certe cose non si possono fare, o si possono ma).

Prima di parlare di come rendere un sistema sicuro, occorre quindi sapere cosa deve
essere reso sicuro, perché e contro chi.

Un sistema di sicurezza eccessivo o di cui non si comprendano gli scopi è destinato a
essere de-implementato, quindi è inutile.

Serve un sistema per descrivere il cosa.

                                                                                            13
IoT e Sicurezza

                                         Ottobre 2018

Enterprise Architecture Framework

   An Enterprise Architecture
   Framework (EA Framework) is a
   framework for an Enterprise
   Architecture which defines how to
   organize the structure and views
   associated with an Enterprise
   Architecture.’

   E’ un concetto alieno.

   Ma serve capirlo.

                                                  14
IoT e Sicurezza

                                                                                   Ottobre 2018

Enterprise Architecture Framework

Gli EAF più usati sono:
  • COBIT - Framework for IT Governance and Control
  • TOGAF - the Open Group Architecture Framework
  • DoDAF - United States Department of Defense Architectural Framework.
  • MODAF - United Kingdom Ministry of Defence Architectural Framework.
  • NAF - the NATO Architecture Framework
  • SABSA a comprehensive framework for Enterprise Security Architecture and Service
    Management.

In ambito civile TOGAF e COBIT sono tra i più usati. SABSA si può considerare un
“aggiunta”. Sembra estremamente utile ma è mal documentato.

                                                                                           15
IoT e Sicurezza

                                                                             Ottobre 2018

Enterprise Architecture Framework

                                    Tutti gli EAF (quasi) adottano modelli
                                    “iterativi” in cui ad ogni fase si
                                    raffinano e precisano i concetti
                                    precedenti.

                                    Quasi tutti i Framework pongono
                                    l’accento sui dati piuttosto che sulle
                                    applicazioni e/o la tecnologia.

                                    Si introduce quindi il concetto di
                                    Asset.

                                                                                     16
IoT e Sicurezza

                                                                                     Ottobre 2018

Asset

Si definisce asset una qualsiasi risorsa dell’Enterprise che abbia o rappresenti un valore
importante per l’Enterprise stesso.

Un asset può essere rappresentato da:
  • Dati
  • Componenti tecnologici (hardware)
  • Componenti applicativi (applicazioni)

Un asset ha anche delle proprietà intrinseche e/o desiderate e/o imposte dalla legge (e.g.,
i dati personali sono sottoposti alla legge sulla Privacy).
Tali proprietà sono “esportate” agli asset che interagiscono con l’asset in questione.

Lo scopo della sicurezza è quello di proteggere gli asset.

                                                                                              17
IoT e Sicurezza

                                                                                     Ottobre 2018

Risk management

Il Risk Management è un processo composto da:
 1. identificazione
 2. valutazione
 3. riduzione del rischio a livelli accettabili
 4. implementazione di contromisure per mantenere il livello di rischio definito

Quello che siamo abituati a pensare come “sicurezza” è svolto ai punti 3 e 4.

                                                                                              18
IoT e Sicurezza

                                                                        Ottobre 2018

Risk assessment methodologies
Il Risk assessment può essere qualitativo o quantitativo.

Qualitativo
Esempio: matrici importanza (influenza) / probabilità di occorrenza
Danno una visione semplice e sintetica dei possibili rischi

Quantitativo
Esempio:
  • Asset value (AV)
  • Annual rate of occurrence (ARO)
  • Exposure factor (EF) (percentage)
  • Single loss expectancy (SLE) = AV x EF
  • Annual loss expectancy (ALE) = ALE = SLE x ARO
Quasi sempre sono stime troppo grossolane.
                                                                                 19
IoT e Sicurezza

                                                                 Ottobre 2018

Risk analysis model

Il Vulnerability Assessment è una parte chiave nel processo.              20
IoT e Sicurezza

                                                                                      Ottobre 2018

Ricordarsi che...

Un Attacco:
 1. non è mai fine a sé stesso,
 2. sfrutta una vulnerabilità,
 3. è rivolto ad un asset.

Un Asset:
 1. ha sempre delle vulnerabilità,
 2. ha un protection level e un sensitivity level,
 3. si può proteggere con delle countermeasures.

Le contromisure non sono le protezioni contro le vulnerabilità (quelle sono tese ad
eliminare le vulnerabilità), sono... contromisure.
E.g.: se mi bloccano la mail mi faccio mandare un fax.

                                                                                              21
IoT e Sicurezza

                                                                              Ottobre 2018

Quindi...

Rendere ‘sicuro’ un sistema prevede di occuparsi di 3 aspetti:
 1. Il sistema informatico;
 2. La rete dati;
 3. Gli applicativi.

Il tutto per rendere sicuri i dati.

Quello che vogliamo proteggere sono i dati (e l’operatività del sistema).

                                                                                       22
IoT e Sicurezza

                                                                                     Ottobre 2018

Vulnerabilità
L’unico sistema senza vulnerabilità è un computer:
   • Spento.
  • Disassemblato.
  • Le cui parti sono custodite in casseforti.
  • E le casseforti sono in posti diversi.
  • ... e probabilmente non basta.

Scherzo da programmatori
Ciascun programma contiene almeno un bug e almeno una istruzione di troppo.
Per induzione tutti i programmi possono essere ridotti a una sola istruzione. Sbagliata.

Per le vulnerabilità è lo stesso
Nessun programma è privo di vulnerabilità (con pochissime eccezioni)
                                                                                              23
IoT e Sicurezza

                                                                        Ottobre 2018

Vulnerabilità – origine

Esistono cinque motivi per avere delle vulnerabilità in un sistema:
  • By design.
  • By bad design.
  • By bad implementation.
  • By bad deployment.
  • By {library, OS, etc.} update.
Ce ne potrebbero essere altri, ma questi sono i più comuni.

Scoprire una vulnerabilità è costoso. Meglio prevenire.

                                                                                 24
IoT e Sicurezza

                                                                                     Ottobre 2018

Vulnerabilità by design

In questo caso la vulnerabilità è nota e accettata.

Si può avere una vulnerabilità by design quando il protocollo (o il sistema) non
funzionerebbe se si eliminasse la vulnerabilità.

Esempi:
  • Protocolli di resource discovery.
  • ARP / NDISC.
  • NAT.

                                                                                              25
IoT e Sicurezza

                                                                                        Ottobre 2018

Vulnerabilità by bad design

Si è fatto un errore nella progettazione del protocollo, non tenendo in conto aspetti cruciali.

Esempi:
  • SAMBA (File sharing di Windows).
  • Attacchi alla Speculative Execution nei processori.
  • Errori nella sequenza di gestione delle eccezioni.

                                                                                                 26
IoT e Sicurezza

                                                                     Ottobre 2018

Vulnerabilità by bad implementation

Si è fatto un errore nell’implementazione del protocollo (bugs).

Esempi:
  • infiniti esempi...
  • if / then / else non terminati.
  • Copia di memoria non controllato.
  • Input non controllato.
  • etc.

                                                                              27
IoT e Sicurezza

                                                                                    Ottobre 2018

Vulnerabilità by bad deployment

Si è fatto un errore nel deployment del sistema.

Il sistema funziona in laboratorio e nel testbed, ma non sul campo.

Esempi:
  • LAN non taggate.
  • Ritardi e errori di rete non gestiti bene.
  • Server che non rispondono nei tempi previsti (e errore nella gestione dell’eccezione).
  • etc.

                                                                                             28
IoT e Sicurezza

                                                                                     Ottobre 2018

Vulnerabilità by {library, OS, etc.} update

La vulnerabilità non è nell’applicazione, ma nella libreria.

Molti (troppi) sistemi si basano su librerie. Non sempre un aggiornamento delle librerie è
indolore.

Esempi:
  • Funzioni dichiarate obsolete.
  • Bug introdotti nelle librerie.
  • Numeri casuali non più così casuali.
  • etc.

                                                                                              29
IoT e Sicurezza

                                                                                          Ottobre 2018

Vulnerabilità by bad implementation (o design)

Come si fa a trovare le vulnerabilità ?
  Ne riparleremo, ma...

Alcune buone notizie:
 1. Le vulnerabilità si pagano (in senso, venite pagati se ne trovate una).
      Esempio: https://www.bugcrowd.com/bug-bounty-list/
 2. Esistono dei database delle vulnerabilità note:
      Common Vulnerabilities and Exposures (CVE) – https://cve.mitre.org
      Common Weakness Enumeration (CWE) – https://cwe.mitre.org

Molte vulnerabilità vengono ‘chiuse’ in breve tempo. In molti altri casi esistono delle
tecniche di mitigazione (i.e., per evitare che la vulnerabilità venga usata).

In ogni caso è necessario sapere le vulnerabilità dei prodotti che si usano.
   E’ uno sporco lavoro, ma qualcuno deve farlo.
                                                                                                  30
IoT e Sicurezza

                                                                       Ottobre 2018

Vulnerabilità nei protocolli TCP/IP

Il TCP/IP non è esente da vulnerabilità.
Alcune sono by design, altre by bad (outdated) design.

Esempi:
  • ARP e NDP spoofing.
  • SYN Flooding.
  • TCP Reset.
  • DNS poisoning.

Sono solo alcuni esempi di vulnerabilità. Ne esistono molte altre.

                                                                                31
IoT e Sicurezza

                                                                                       Ottobre 2018

ARP e NDISC spoofing

ARP: Address Resolution Protocol (IPv4)
NDP: Neighbor Discovery Protocol (IPv6)

Sono due protocolli che assolvono allo stesso scopo:
Dato un indirizzo IP di un host, scoprire il suo indirizzo MAC.

Il funzionamento è simile: si manda un pacchetto Request in broadcast (IPv4) o multicast
(IPv6) e si aspetta una risposta.

L’attacco consiste nel rispondere al posto dell’host ‘vero’. La conseguenza è che l’host
attaccato (chi ha fatto la richiesta) manderà all’attaccante (che ha risposto) i pacchetti che
dovrebbe mandare alla destinazione legittima.

                                                                                                32
IoT e Sicurezza

                                                                                    Ottobre 2018

ARP e NDISC spoofing – perché funziona (e perché non ci si può
difendere)

ARP e NDP sono pensati per essere veloci e reattivi.
Se un host cambia la sua scheda di rete (il suo indirizzo MAC) deve poter mandare un
messaggio unsolicited, altrimenti si dovrebbe aspettare che il mittente si accorga che c’è
qualcosa che non va (di solito parecchi secondi).
Quindi, ARP e NDP accettano risposte unsolicited, e prendono per buona l’ultima risposta
che ricevono.

E’ un caso di vulnerabilità by design.

Ci si protegge monitorando le risposte ARP e NDP nello switch.
Autenticare ARP e NDP funziona, ma si perdono alcune funzionalità della rete.

                                                                                             33
IoT e Sicurezza

                                                                                     Ottobre 2018

SYN flooding

Il flag SYN in un pacchetto TCP serve a iniziare una sessione.
La sequenza ‘normale’ è SYN – SIN-ACK – ACK.

Quando si riceve un SYN si allocano delle risorse (buffer di trasmissione e ricezione,
contatori, etc.).

Cosa succede se un attaccante manda solo pacchetti con il flag di SYN ?
L’host attaccato consumerà le sue risorse (vengono liberate dopo un timeout molto lungo).

E’ una vulnerabilità by design.
Ci si protegge allocando solo un ‘cookie’, il che rende l’attacco molto più complesso.

                                                                                              34
IoT e Sicurezza

                                                                                  Ottobre 2018

TCP Reset

Una connessione viene chiusa (legittimamente) mandano un pacchetto con il flag di
RESET attivo.

Problema: un host accetta qualsiasi pacchetto con un sequence number compreso tra
l’ultimo arrivato correttamente e il massimo che l’altro endpoint potrebbe trasmettere.
Dipende dalla dimensione della finestra (Window) del TCP, che a sua volta dipende dalla
velocità della connessione e dal Round Trip Time tra i due host.
Nota:
   • Il sequence number è un numero a 32 bit.
  • Una TCP Window può essere larga fino a 216 bytes.
  • Con l’opzione TCP Window Scale si arriva a 216 214 bytes.

Per portare l’attacco basta mandare UN pacchetto con un numero di sequenza plausibile.

                                                                                           35
IoT e Sicurezza

                                                                                 Ottobre 2018

TCP Reset

Supponiamo che la TCP Window sia 216 bytes.

Si manda un pacchetto, si incrementa il sequence number di 216 , si riprova.
Bastano 232 /216 = 216 = 65536 pacchetti.

Velocità          # Pacchetti   Tempo per una porta       Tempo per 50 porte
56kbps (dialup)   216   (*50)   374 seconds (6 min.)      18700 (5.2 hours)
80kbps (DSL)      216   (*50)   262 seconds (4.3 min.)    13107 (3.6 hours)
256kbps (DSL)     216   (*50)   81 seconds (1 min.)       4050 (1.1 hours)
1.54kbps (T1)     216   (*50)   13.6 seconds              680 (11 minutes)
45mbps (DS3)      216   (*50)   1/2 second                25 seconds
155mbps (OC3)     216   (*50)   1/10 second               5 seconds

Con una TCP Window Scale massima bastano 232 /(216 214 ) = 4 pacchetti !
E’ la conseguenza di un Design reso obsoleto.
                                                                                          36
IoT e Sicurezza

                                                                                      Ottobre 2018

DNS Poisoning

Normalmente i server DNS effettuano una ricerca ricorsiva fino a che:
  • Si trova il sever autoritativo, o
  • Si trova un server con una cache valida.

                                 2
                                                 Root DNS   3

                                       4

               Local DNS   1

                                                                Authoritative DNS

                                                                                               37
IoT e Sicurezza

                                                                                   Ottobre 2018

DNS Poisoning

E’ possibile ‘inquinare’ la cache di un server DNS, in modo che risponda con un record
falso.

Tralasciando la matematica, bastano pochi tentativi per inquinare una cache.

Vulnerability by bad deployment.
Il server DNS non dovrebbe:
 1. Ricevere richieste dall’esterno,
 2. Usare il protocollo DNS per comunicare con altri DNS (si deve usare il DNSSEC)

                                                                                            38
IoT e Sicurezza

                                                                                          Ottobre 2018

Firewall

Un firewall serve a delimitare due (o più) zone di sicurezza all’interno di una rete.
  • Rete interna (LAN) – alta sicurezza
  • DeMilitarized Zone (DMZ) – media sicurezza
  • Internet (WAN) – nessuna sicurezza

E’ una protezione perimetrale.

Agisce in base a regole, che devono essere decise in base alle esigenze degli utenti.

Tipicamente:
  • LAN ⇒ WAN – Specifici protocolli (quasi tutti).
  • LAN ⇒ DMZ – I protocolli in uso nei server della DMZ.
  • WAN ⇒ DMZ – I protocolli in uso nei server della DMZ.
  • Tutto il resto – Bloccato.

                                                                                                   39
IoT e Sicurezza

                                                                              Ottobre 2018

Tipi Firewall
Esistono 3 tipi di firewall:
  • Sateless Firewall – Non più usati.
  • Stateful Firewall – Agiscono fino al L4 (TCP).
  • L7 Firewall – Agiscono fino al livello applicativo.

Stateful Firewall
  • Controllano tutte le connessioni TCP, UDP, etc.
  • Sono in grado di bloccare la maggior parte degli attacchi.

L7 Firewall
  • Controllano tutte le connessioni, fino al livello applicativo.
  • Estremamente onerosi in termini di risorse.
  • Non funzionano in caso di protocolli cifrati (tranne in alcuni casi).
  • Necessitano di aggiornamenti continui.
                                                                                       40
IoT e Sicurezza

                                                            Ottobre 2018

Posizionamento Firewall

                          Firewall singolo
                             • Più facile da configurare.

                          Due Firewalls (di marche
                          diverse)
                            • Più complesso da violare.
                            • ... e da configurare.

                          Normalmente basta un firewall
                          solo.

                                                                    41
IoT e Sicurezza

                                                                                     Ottobre 2018

Ridondanza del Firewall

Usare un firewall è bene, ma usarne due è meglio.
  Alias: Il firewall è un Single Point of Failure. Ci sono due opzioni (più una)

Primary / Backup
  • E’ semplice.
  • Prestazioni costanti, ma uno dei firewall è inutilizzato.

Multi-primary
  • Lievemente più complesso (di poco).
  • Prestazioni degradano in base al numero di firewall attivi.

                                                                                              43
IoT e Sicurezza

                                                                                      Ottobre 2018

Ridondanza del Firewall

Attenzione allo stato delle connessioni attive nel Firewall.

Un firewall Stateful (guess what) mantiene uno stato per ogni connessione attiva.
Se un Firewall si guasta le connessioni attive si interrompono.

Soluzione: State replication.
  • Periodica.
  • On-event.

Quale usare dipende dal tipo di connessioni che il Firewall gestisce.

                                                                                               44
IoT e Sicurezza

                                                                                     Ottobre 2018

IDS / IPS

Gli Intrusion Detection Systems (IDS) e Intrusion Prevention Systems (IPS) sono sistemi
che analizzano il traffico di rete alla ricerca di pattern di traffico sospetti.

Differiscono dai Firewall in quanto non sono difese perimetrali. Servono a individuare
eventuali attacchi in corso.

Un IPS è un IDS interconnesso con un firewall – se evidenzia traffico anomalo lo blocca.

Sono molto più complessi di un Firewall, richiedono molte risorse, e sono soggetti a falsi
positivi / negativi.

                                                                                              45
IoT e Sicurezza

                                                                                  Ottobre 2018

IDS / IPS

Esistono tre principali IDS/IPS Open Source:
  • Snort: uno dei primi IDS, forse il più usato. E’ alla versione 3.
  • Suricata: nasce come alternativa high-performance a Snort.
  • Bro: nato per reti terabit. Fortemente orientato all’analisi distribuita.

                                                                                           46
IoT e Sicurezza

                                                                                        Ottobre 2018

IDS / IPS – difficoltà

La difficoltà di un IDS / IPS sono le regole, ovvero i pattern che riconoscono il traffico
malevolo.

  • Snort fornisce pattern aggiornati mensilmente e (su sottoscrizione) quindicinalmente.
  • Suricata usa le stesse regole di Snort.
  • Bro ha un linguaggio di definizione dei pattern completamente diverso.

Suggerimento: come primo approccio usate Snort (per provarlo). Poi analizzate bene il
vostro scenario.

Attenzione: Un IDS deve:
 1. Essere invisibile.
 2. Vedere il traffico.
In teoria un IDS dovrebbe avere una ‘probe’ su tutti i link.
                                                                                                 47
IoT e Sicurezza

              Ottobre 2018

Domande ?

                       48
Puoi anche leggere