Computernetwerken Deel 2. Beveiliging Firewall: toegang beperken IDS: inbraak detecteren en...

38
Computernetwerken Deel 2

Transcript of Computernetwerken Deel 2. Beveiliging Firewall: toegang beperken IDS: inbraak detecteren en...

Page 1: Computernetwerken Deel 2. Beveiliging Firewall: toegang beperken IDS: inbraak detecteren en alarmeren Encryptie: gegevens verbergen.

ComputernetwerkenDeel 2

Page 2: Computernetwerken Deel 2. Beveiliging Firewall: toegang beperken IDS: inbraak detecteren en alarmeren Encryptie: gegevens verbergen.

Beveiliging

• Firewall: toegang beperken• IDS: inbraak detecteren en alarmeren• Encryptie: gegevens verbergen

Page 3: Computernetwerken Deel 2. Beveiliging Firewall: toegang beperken IDS: inbraak detecteren en alarmeren Encryptie: gegevens verbergen.

Firewall

• Waarom?• Filteren van pakketten• Wildcard mask: omgekeerd subnetmasker• Pakketfiltering niet altijd voldoende• Soorten firewalls• Firewall in het netwerk

Page 4: Computernetwerken Deel 2. Beveiliging Firewall: toegang beperken IDS: inbraak detecteren en alarmeren Encryptie: gegevens verbergen.

Firewall: waarom?

• TCP/IP– Alle hosts bereikbaar (via IP-adres)– Kunnen met elkaar communiceren

• Pakketten zullen verwerkt worden• Bv voortdurend pingen (ICMP-bericht)

– UDP of TCP• als poortnummer van wachtend proces: ACK en start

van verwerking

Page 5: Computernetwerken Deel 2. Beveiliging Firewall: toegang beperken IDS: inbraak detecteren en alarmeren Encryptie: gegevens verbergen.

Firewall: waarom?

• Poortscannen: zoeken naar open poorten• Sturen slecht geformatteerde data

– Storen lopend proces– Zaken uitvoeren die niet de bedoeling zijn

• Elke computer beveiligen?– Beveiliging concentreren in één machine

Page 6: Computernetwerken Deel 2. Beveiliging Firewall: toegang beperken IDS: inbraak detecteren en alarmeren Encryptie: gegevens verbergen.

Firewall: waarom?

• Alle ip-pakketten via één bewaakte toegang– Van binnen naar buiten en Van buiten naar binnen

• Geen beveiliging voor intern verkeer• Geen beveiliging tegen virussen• Geen beveiliging tegen DNS-spoofing

– Foute dns-info om gebruiker om te leiden

• Het internet is ontworpen zonder beveiliging

Page 7: Computernetwerken Deel 2. Beveiliging Firewall: toegang beperken IDS: inbraak detecteren en alarmeren Encryptie: gegevens verbergen.

Filteren van pakketten

– Coax-voorstelling?– Router:

• Voor inkomende pakketten: nagaan welke interface verder sturen

• Doorsturen van pakketten

if2if1

netwerk 1 netwerk 2

router

Page 8: Computernetwerken Deel 2. Beveiliging Firewall: toegang beperken IDS: inbraak detecteren en alarmeren Encryptie: gegevens verbergen.

Filteren van pakketten

– Configuratiemogelijkheid van een router: filteren• Eigenschappen van pakket nagaan• Pakket eventueel niet verder sturen

– Via ACL (Access Control List) = lijst van regels

if2if1

netwerk 1 netwerk 2

router

Page 9: Computernetwerken Deel 2. Beveiliging Firewall: toegang beperken IDS: inbraak detecteren en alarmeren Encryptie: gegevens verbergen.

Filteren van pakketten

• Eigenschappen van pakketten om op te filteren?– IP-adres (zender en ontvanger)– Protocol

• IP, IPX, ...• TCP, UDP, ICMP, ...• HTTP, FTP, ...

– Poorten– Niet op basis van inhoud van een pakket

Page 10: Computernetwerken Deel 2. Beveiliging Firewall: toegang beperken IDS: inbraak detecteren en alarmeren Encryptie: gegevens verbergen.

Filteren van pakketten

• ACL– koppelen aan interface– Per interface: ACL voor in, ACL voor uit– Syntaxis hangt af van besturingssysteem van

router

Page 11: Computernetwerken Deel 2. Beveiliging Firewall: toegang beperken IDS: inbraak detecteren en alarmeren Encryptie: gegevens verbergen.

Filteren van pakketten: vb1

– ACL voor if1, inkomende pakketten

if2if1

200.201.202.0/24 Naar internet

router

bron- adres

bron- poort

best.- adres

b.-poort

pro- tocol

door- laten

200.201.202.200 * * * * Neen 200.201.202.128/25 * * 80 TCP J a

200.201.202.1 * * * ICMP J a * .* .* .* * * * * Neen

Page 12: Computernetwerken Deel 2. Beveiliging Firewall: toegang beperken IDS: inbraak detecteren en alarmeren Encryptie: gegevens verbergen.

Filteren van pakketten: vb1

– Van 200.201.202.200: alle pakketten weigeren– Van 200.201.202.128/25: mogen naar poort 80 (http)van elke

host– Computer 200.201.202.1 mag pingen (ICMP)– Al de rest wordt niet doorgelaten– Volgorde van belang

bron- adres

bron- poort

best.- adres

b.-poort

pro- tocol

door- laten

200.201.202.200 * * * * Neen 200.201.202.128/25 * * 80 TCP J a

200.201.202.1 * * * ICMP J a * .* .* .* * * * * Neen

Page 13: Computernetwerken Deel 2. Beveiliging Firewall: toegang beperken IDS: inbraak detecteren en alarmeren Encryptie: gegevens verbergen.

Filteren van pakketten: vb2

naar Internet200.201.202.0/24

if2if1

router

200.201.203.0/24

if3

web-servermail-serverdns-server

bron- adres

bron- poort

best.- adres

b.-poort

pro- tocol

door- laten

200.201.202.200 * * * * Neen 200.201.202.128/25 * * 80 TCP J a

200.201.202.1 * * * ICMP J a * .* .* .* * * * * Neen

Naar welke servers(200.201.203.0/24)kunnen pc’s van200.201.202.0/24?

Alleen naar webserverAlleen vanaf 200.201.202.128/25

Page 14: Computernetwerken Deel 2. Beveiliging Firewall: toegang beperken IDS: inbraak detecteren en alarmeren Encryptie: gegevens verbergen.

Filteren van pakketten: vb2

naar Internet200.201.202.0/24

if2if1

router

200.201.203.0/24

if3

web-servermail-serverdns-server

bron- adres

br. p.

best.- adres

b. p.

pr door

200.201.202.200 * * * * Neen 200.201.202.128/25 * * 80 TCP J a 200.201.202.0/24 * 200.201.203.0/24 25 TCP J a 200.201.202.0/24 * 200.201.203.0/24 53 UDP J a

200.201.202.1 * * * ICMP J a * .* .* .* * * * * Neen

Hoe andere servicesbereikbaar maken?

Page 15: Computernetwerken Deel 2. Beveiliging Firewall: toegang beperken IDS: inbraak detecteren en alarmeren Encryptie: gegevens verbergen.

Filteren van pakketten: vb2

naar Internet200.201.202.0/24

if2if1

router

200.201.203.0/24

if3

web-servermail-serverdns-server

Hoe andere servicesbereikbaar maken?Tweede mogelijkheid?

bron- adres

bron- poort

best.- adres

b.-poort

pro- tocol

door- laten

200.201.202.200 * * * * Neen 200.201.202.128/25 * * 80 TCP J a

200.201.202.1 * * * ICMP J a * .* .* .* * * * * Neen

ACL met andere interface associëren

Page 16: Computernetwerken Deel 2. Beveiliging Firewall: toegang beperken IDS: inbraak detecteren en alarmeren Encryptie: gegevens verbergen.

Filteren van pakketten: vb3

bron-adres br.p. best.-adres b.-p. pr. door

200.201.202.0/23 * * * * Nee * * 200.201.202.200 * * Nee * * 200.201.203.1 25 TCP J a * 25 200.201.203.1 >1023 TCP J a * * 200.201.203.2 53 UDP J a * 53 200.201.203.2 >1023 UDP J a * * 200.201.203.3 80 TCP J a * * 200.201.202.1 * icmp J a * * * * * Nee

naar Internet200.201.202.0/24if2if1

router

200.201.203.0/24if3

Page 17: Computernetwerken Deel 2. Beveiliging Firewall: toegang beperken IDS: inbraak detecteren en alarmeren Encryptie: gegevens verbergen.

Wildcard mask

• ACL:– Bron = groep van IP-adressen– Bestemming = groep van IP-adressen

• Notatie opeenvolgende IP-adressen– Begin- en eindadres– Beginadres/aantal bits– Beginadres subnetmasker– Cisco: omgekeerd subnetmasker

Page 18: Computernetwerken Deel 2. Beveiliging Firewall: toegang beperken IDS: inbraak detecteren en alarmeren Encryptie: gegevens verbergen.

Wildcard mask

• Bv 200.201.202.128 0.0.0.127• 0.0.0.127 = Wilcard Mask• Betekenis:

– 0 : bit moet gelijk zijn– 1 : bit mag om het even zijn

• Dus: 200.201.202.128 en 0.0.0.127– 11001000 11001001 11001010 10000000– 00000000 00000000 00000000 01111111– 200.201.202.128 tot 200.201.202.255

Page 19: Computernetwerken Deel 2. Beveiliging Firewall: toegang beperken IDS: inbraak detecteren en alarmeren Encryptie: gegevens verbergen.

Pakketfiltering niet altijd voldoende

• TCP-intercept– Hacker stuurt geen ACK-segment

• Server wacht, veel open sessies, vals bron adres• Server plat (DoS-aanval)

– Bijhouden hoeveel half-open sessies• Maximum aantal• Sluiten na tijdsinterval

Page 20: Computernetwerken Deel 2. Beveiliging Firewall: toegang beperken IDS: inbraak detecteren en alarmeren Encryptie: gegevens verbergen.

Pakketfiltering niet altijd voldoende

• Fragmentatie– Groot IP-pakket opdelen in fragmenten– Fragmenten verstuurd als aparte IP-pakketten– Hacker: pakketten zo klein maken dat TCP-

hoofding er niet volledig in kan– ACL’s op poortnummer en protocol– ACL’s niet leesbaar

Page 21: Computernetwerken Deel 2. Beveiliging Firewall: toegang beperken IDS: inbraak detecteren en alarmeren Encryptie: gegevens verbergen.

Pakketfiltering niet altijd voldoende

• FTP– Gestarte sessie (poort 21) is alleen voor besturing.– Bestandsoverdracht (active mode)

• Client stuurt vraag naar poort 21 en deelt een poortnummer (random) mee waarop hij luistert (PORT commando)

• Client wacht op verbinding• Server start verbinding met client via syn, ....• Bestandsoverdracht gebeurt

Page 22: Computernetwerken Deel 2. Beveiliging Firewall: toegang beperken IDS: inbraak detecteren en alarmeren Encryptie: gegevens verbergen.

Pakketfiltering niet altijd voldoende

• FTP– Bestandsoverdracht (passive mode)

• Client stuurt vraag naar poort 21 (PASV commando)• Server deelt een poortnummer mee waarop hij luistert

(random)• Client start verbinding met client via syn, ....• Bestandsoverdracht gebeurt

– Moeilijk/niet wenselijk om alle poorten op te lijsten in ACL’s

Page 23: Computernetwerken Deel 2. Beveiliging Firewall: toegang beperken IDS: inbraak detecteren en alarmeren Encryptie: gegevens verbergen.

Stateful inspection

• Toestand (= State) van elke TCP-sessie wordt bijgehouden

• Bij TCP of UDP is poortnummer van bron willekeurig: geen vaste regels in firewall mogelijk

• Oplossing: dynamische ACL’s

Page 24: Computernetwerken Deel 2. Beveiliging Firewall: toegang beperken IDS: inbraak detecteren en alarmeren Encryptie: gegevens verbergen.

Dynamische ACL’s: vb1

• 200.201.202.17 start Telnet-sessie met 34.45.67.89

• Clientpoort: 1234 (willekeurig > 1023)• Serverpoort: 23• Dynamische ACL:

– Tijdens init (syn, syn/ack, ack): regel toegevoegd aan ACL

– Firewall houdt status bij– Bij opheven verbinding: schrappen regel

Page 25: Computernetwerken Deel 2. Beveiliging Firewall: toegang beperken IDS: inbraak detecteren en alarmeren Encryptie: gegevens verbergen.

Dynamische ACL’s: vb1

• ACL voor if2, inkomende pakketten

naar het Internet200.201.202.0/24if2if1

router

bron- adres

bron- poort

best.- adres

b.-poort

pro- tocol

door- laten

... ... ... ... ... ... 34.45.67.89 23 200.201.202.17 1234 TCP J a

... ... ... ... ... ... * .* .* .* * * * * Neen

Page 26: Computernetwerken Deel 2. Beveiliging Firewall: toegang beperken IDS: inbraak detecteren en alarmeren Encryptie: gegevens verbergen.

Dynamische ACL’s: vb2

• Bij UDP en ICMP: geen init, hoe status bijhouden, wanneer schrappen?– Na timeout

• Gebruik van virtuele verbinding– Uitgaande verzoeken worden geregistreerd– Alleen inkomende berichten doorlaten die een

antwoord zijn op een geregistreerd verzoek

Page 27: Computernetwerken Deel 2. Beveiliging Firewall: toegang beperken IDS: inbraak detecteren en alarmeren Encryptie: gegevens verbergen.

Dynamische ACL’s: vb3

• FTP:– Firewall houdt status van sessie bij

• Toevoegen, weglaten lijn in ACL

– Firewall met Inspection engine (software in firewall)

• Firewall kent het toepassingsprotocol (FTP)• Herkent PORT, PASV commando• Voegt dynamisch regels toe aan ACL = sessiefiltering

Page 28: Computernetwerken Deel 2. Beveiliging Firewall: toegang beperken IDS: inbraak detecteren en alarmeren Encryptie: gegevens verbergen.

Soorten firewalls

• Pakketfilters: filteren per pakket• Sessiefilter: filteren per sessie• Toepassings-proxy• Statefull packet inspection• Persoonlijke firewall

Page 29: Computernetwerken Deel 2. Beveiliging Firewall: toegang beperken IDS: inbraak detecteren en alarmeren Encryptie: gegevens verbergen.

Toepassings-proxy

• Werkt op toepassingslaag (web-proxy, ftp-proxy, ...)

• Is een programma– Mag gebruiker sessie starten?– Maakt verbinding met server– Inspecteert pakketten– Inspecteert (hele) inhoud van berichten

Page 30: Computernetwerken Deel 2. Beveiliging Firewall: toegang beperken IDS: inbraak detecteren en alarmeren Encryptie: gegevens verbergen.

Statefull packet inspection

• State = toestand van de verbinding• Voortdurende inspectie van

– De toestand van de verbinding– Inhoud van pakketten

• Voordeel tov Proxy: geen extra verbindingen

Page 31: Computernetwerken Deel 2. Beveiliging Firewall: toegang beperken IDS: inbraak detecteren en alarmeren Encryptie: gegevens verbergen.

Persoonlijke firewall

• Software op client• Regels op applicatieniveau

Page 32: Computernetwerken Deel 2. Beveiliging Firewall: toegang beperken IDS: inbraak detecteren en alarmeren Encryptie: gegevens verbergen.

Firewall in het netwerk

• Doel firewall: alle pakketten filteren tussen eigen netwerk en internet

• Verschillend beleid– Bedrijfsnetwerk– Servers die voor buitenwereld bereikbaar moeten

zijn

• Firewall met meerdere interfaces– Per interface een apart beleid– Alle hosts aan een interface hebben zelfde eisen

Page 33: Computernetwerken Deel 2. Beveiliging Firewall: toegang beperken IDS: inbraak detecteren en alarmeren Encryptie: gegevens verbergen.

Firewall in het netwerk3 interfaces

Page 34: Computernetwerken Deel 2. Beveiliging Firewall: toegang beperken IDS: inbraak detecteren en alarmeren Encryptie: gegevens verbergen.

Firewall in het netwerk2 interfaces

bedrijfsnetwerk

buitenafgeschermd netwerk

server2

server1

router

firewall

Page 35: Computernetwerken Deel 2. Beveiliging Firewall: toegang beperken IDS: inbraak detecteren en alarmeren Encryptie: gegevens verbergen.

Firewall in het netwerk2 interfaces

• Bedrijfsnetwerk– Eigen gebruikers, vertrouwd– Achter de firewall– Alle pakketten van en naar bedrijfsnewerk:

controle door Firewall

• Afgeschermd netwerk (DMZ)– Beperkte beveiliging door router– Beveiliging op niveau van server (Bastion Hosts)

Page 36: Computernetwerken Deel 2. Beveiliging Firewall: toegang beperken IDS: inbraak detecteren en alarmeren Encryptie: gegevens verbergen.

Firewall in het netwerk2 interfaces

• Waarom bv server 1 niet achter Firewall?– Beleid: iedereen van buiten af moet aan servers

kunnen– Dus moet voorbij Firewall kunnen– Servers kunnen fouten bevatten: mogelijks

uitbuiting

Page 37: Computernetwerken Deel 2. Beveiliging Firewall: toegang beperken IDS: inbraak detecteren en alarmeren Encryptie: gegevens verbergen.

Firewall in het netwerk3 interfaces

• Firewall controleert ook de toegang tot de servers

• DMZ: gebied met ander, milder beleid• Router

– Pakketfiltering– Verschillende netwerkinterfaces (ethernet,

fiber, ...)

Page 38: Computernetwerken Deel 2. Beveiliging Firewall: toegang beperken IDS: inbraak detecteren en alarmeren Encryptie: gegevens verbergen.

IDS: intrusion detection system

• Bekijken netwerkverkeer voorbij de firewall• Opsporen verdacht verkeer:

– Ping door zelfde host naar meer dan 5 adressen– Poortscanning– ...

• Alleen signaleren• IPS (Intrusion Prevention System): gaat ook

acties ondernemen, regels toevoegen