Lezione 20211214

firewall componente, servizio intero dove si possono definire alcune regole per definire come avvengon le comunicazioni. Permette di definire regole di segregazione Primo componente di sicurezza della rete

  1. configurati
  2. di per sè sicuri
  3. posizionati nel posto giusto all’interno della rete (la rete deve essere progettata per poter inserire i firewall)

lavorano su livelli 3 e 4. Esistono firewall sia hw che sw. Non c’è differenza di sicurezza tra i due. Su hw si possono creare creare regole più complesse, e sono comunque predisposti per reti ad alta velocità.

Ad esempio non si può mettere un firewall in una rete piatta, ovvero dove tutti i componenti (computer e servizi) sono tutti nella stessa rete locale.

Attenzione! Non si possono utilizzare così come vengono acquistati. Senza la configurazione è inutile.

Regolare il traffico

Access Control List regole che definiscono quali sono i servizi e gli host consentiti e non 2 paradigmi:

  • negazione implicita: tutto non consentito a parte quello che c’è all’interno della lista (prefer security over usability)
  • consenso implicito: tutto consentito a parte quello che c’è all’interno della lista (prefer usability over security)

Analisi

  • stateless/static: ogni pacchetto viene analizzato indipendentemente
  • stateful: si possono gestire i pacchetti in base al flusso a cui si presume sia associato

un firewall installato su un router di bordo può essere chiamato screening router. Fa analisi veloci. Analisi solo 3 e 4. Non vanno a livello applicativo proxy firewall alternativo a application level firewall. Si installa e supporta in modo approfondito 1 o più protocolli applicativi stealth firewall simile a screening router. Non viene installato su un router, ma all’interno della rete non viene visto. Utile in contesti in cui vogliamo aumentare la sicurezza appunto del firewall. Non essenso rilevabile è più duro da bypassare.

DEFENSE IN DEPTH!!

Proxy firewall

Analizza cosa succede a livello di applicazione, creando connessioni tcp con i client che ospitano l’app effettiva. Funzionano da intermediari tra app e fruitore.

ATTENZIONE se le connessioni sono cifrate, il traffico non può essere analizzato facilmente. MA in tls, livello 3 e header livello 4 non sono cifrati, quindi si possono applicare regole a quei livelli. La logica applicativa però non può essere controllato in nessun modo. QUINDI molto spesso si utilzza un proxy firewall, dove c’è un man in the middle su cui si analizza il traffico. Se i servizi sono nostri, i certificati possono anche essere installati nel proxy firewall, quindi l’analisi può essere eseguita senza nessun problema.

Il problema sta tra client interni e siti esterni. Per controllare il traffico dai siti esterni verso i siti interni, è complicato perché non abbiamo i certificati dei siti esterni. QUINDI solitamente si creano certificati self signed (falsi). Se si usa un dispositivo estenro alla rete, bisogna installare il certificato

Bastion host

quasi sinonimo di proxy firewall. Ha il ruolo di fare un’ispezione approfondita tra rete trusted e non.

De-militarized zone

zona che può comunicare direttamente con l’esterno. Crea un controllo gerarchico

Schema multi livello con più screening routers

IPTables

NAT Filter iptables consente di agire su NAT filter per implementare diverse funzionalità del controllo di traffico di rete. Si possono realizzare regole di filtraggio, marking (tracciatura pacchetti) ecc

hook: dove analizzare il traffico

Catene di regole con liste interne, per determinare se accettare o meno il traffico

NAT: regole trasformazione pacchetti legate a regole natting MANGLE: ispezionare per altri scopi avanzati

associati ad un subset di hook EG per filtering abbimao solo questi 3 hooks

Simulazione

Alice: host computer utente WWW: web server. Non deve iniziare connessioni verso esterno Rotuer: router verso esterno

netcat

gestire connessioni tcp a basso livello nc -lp 8080 crea server tcp sulla porta 8080 nc 127.0.0.1 8080 crea connessione in locale porta 8080