Firewall versus IDS versus IPS versus WAF: wat ze inspecteren, blokkeren of melden en wat ze beschermen

Alle vier verdedigen tegen aanvallen die via het netwerk binnenkomen, maar ze verschillen in wat ze inspecteren en wat ze doen als ze iets vinden. Een firewall laat alleen verkeer door dat zijn regels toestaan, op basis van IP-adressen, poortnummers en vergelijkbare velden. Een IDS (inbraakdetectiesysteem) inspecteert het verkeer tot en met de inhoud, vindt wat op een aanval lijkt en waarschuwt beheerders, maar houdt het verkeer niet tegen. Een IPS (inbraakpreventiesysteem) zit in het pad van het verkeer en blokkeert gevonden aanvallen ter plekke. Een WAF (webapplicatiefirewall) inspecteert de inhoud van HTTP-verzoeken en blokkeert aanvallen op webapplicaties zoals SQL-injectie. Geen van hen dekt alles in zijn eentje, dus ze worden samen gebruikt.

KenmerkFirewallIDSIPSWAF
Wat het vooral inspecteertIP-adressen van bron en bestemming, poortnummers en verbindingsstatus (netwerk- en transportlaag); sommige producten herkennen ook applicatiesPakketheaders tot en met de inhoud (van de netwerklaag tot de applicatielaag)Net als een IDS: pakketheaders tot en met de inhoudDe inhoud van HTTP- en HTTPS-verzoeken en -antwoorden (applicatielaag)
Plaatsing ten opzichte van het verkeerspadIn het pad (inline)Meestal buiten het pad; ontvangt een kopie van het verkeer via een mirrorpoort van een switch of iets vergelijkbaarsIn het pad (inline)In het pad, vóór de webserver, als reverse proxy of clouddienst
Actie bij detectieBlokkeert verkeer dat de regels niet toestaanGeeft een waarschuwing en legt die vast; het verkeer zelf wordt niet tegengehoudenBlokkeert het verkeer of verbreekt de verbindingBlokkeert verzoeken die als aanval worden beoordeeld; een modus die alleen detecteert en logt is ook gebruikelijk
DetectiemethodeRegels voor toestaan en weigeren (adressen, poorten, verbindingsstatus)Vergelijking met bekende aanvalspatronen (signatures) en anomaliedetectie die zoekt naar afwijkingen van normaal verkeerNet als een IDS: signatures en anomaliedetectieRegels voor aanvalspatronen zoals SQL-injectie en cross-site scripting, en regels die bepalen welke invoer is toegestaan
Wat het vooral beschermtDe in- en uitgangspunten van het netwerk, door niet-toegestaan verkeer buiten te houdenBewaking van netwerken en servers, om tekenen van een aanval of inbraak op te merkenServers en eindpunten op het netwerk, tegen bekende aanvallenWebapplicaties, tegen aanvallen die kwetsbaarheden in de applicatie misbruiken
Gevolgen van fout-positievenEen fout in een regel houdt legitiem verkeer tegenVeel valse meldingen bedelven echte waarschuwingen en belasten de beheerders, maar bedrijfsverkeer wordt niet tegengehoudenEen fout-positief blokkeert direct legitiem verkeer, dus zorgvuldige afstemming is nodigLegitieme invoer, zoals tekst met symbolen, die als aanval wordt beoordeeld, laat handelingen van gebruikers mislukken
Voorbeeld van plaatsingOp de grens tussen het interne netwerk en internet, tussen netwerksegmenten en op elke server of elk eindpuntOp het te bewaken netwerksegment (netwerkgebaseerd) of op een server (hostgebaseerd)Op de grens met internet, bijvoorbeeld direct achter de firewallVóór een publieke webserver
BeperkingenKan geen aanvallen tegenhouden die via toegestane poorten gaan, zoals aanvallen die fouten in webapplicaties misbruiken; heeft geen functie om verkeer te versleutelenDetecteert alleen en kan niets tegenhouden; kan met TLS versleuteld verkeer niet inspecteren, tenzij het staat op een plek waar het verkeer ontsleuteld kan wordenOnbekende aanvallen zonder signature hangen af van anomaliedetectie en worden makkelijk gemist; kan versleutelde inhoud niet zien; de capaciteit kan een knelpunt voor het verkeer wordenBeschermt geen ander verkeer dan webverkeer; lost de kwetsbaarheden van de applicatie zelf niet op

De getalswaarden zijn typische ordegroottes en variëren per procesgeneratie en product.

Wanneer welke variant?

Firewall
De basismaatregel die als eerste op elk netwerk wordt geplaatst: alleen het benodigde verkeer toestaan en de rest blokkeren.
IDS
Wanneer je tekenen van een aanval of inbraak wilt opmerken zonder het risico het verkeer te onderbreken. Het bewaart ook gegevens voor onderzoek.
IPS
Wanneer bekende aanvallen automatisch moeten worden tegengehouden zonder op een menselijke beslissing te wachten. Het is gebruikelijk het eerst in een modus die alleen detecteert af te stemmen voordat blokkeren wordt ingeschakeld, zodat fout-positieven het bedrijfsverkeer niet onderbreken.
WAF
Wanneer je een webapplicatie publiceert. Het kan als noodoplossing dienen zolang reparaties van kwetsbaarheden nog niet klaar zijn, maar het vervangt het repareren van de applicatie niet.

Veelgestelde vragen

Wat is het belangrijkste verschil tussen een IDS en een IPS?

Of het de gevonden aanvallen tegenhoudt. Een IDS inspecteert meestal een kopie van het verkeer en geeft alleen waarschuwingen, zonder het verkeer aan te raken. Een IPS zit in het pad van het verkeer en blokkeert verkeer dat als aanval wordt beoordeeld ter plekke. Bij een IPS blokkeren fout-positieven daardoor legitiem verkeer, en er moet op worden gelet dat een storing van het apparaat niet al het verkeer stillegt. Veel producten kunnen tussen beide modi wisselen.

Als ik een firewall heb, heb ik dan nog een WAF nodig?

Ze doen verschillend werk, dus als je een webapplicatie publiceert, is het zinvol beide te gebruiken. Zodra een firewall verkeer naar poort 443 van een webserver toestaat, maakt hij geen onderscheid tussen legitieme verzoeken en aanvallen in de inhoud. Een WAF inspecteert de inhoud van HTTP-verzoeken en vindt en blokkeert aanvalspatronen zoals SQL-injectie en cross-site scripting.

Kan een IDS of IPS versleuteld verkeer inspecteren?

Niet zomaar. Om de inhoud van met TLS versleuteld verkeer te inspecteren, moet het achter een apparaat staan dat TLS beëindigt (zoals een reverse proxy of een WAF), of moet het apparaat zelf het verkeer ontsleutelen om het te inspecteren. Zonder ontsleuteling moeten afwijkingen worden gevonden aan de hand van bestemmingen, volumes en tijdspatronen van het verkeer.

Wat is een next-generation firewall (NGFW)?

Een naam voor firewalls die in één apparaat de traditionele regels op adressen en poorten combineren met functies zoals het herkennen van applicaties aan de inhoud van het verkeer en IPS-functies. Welke functies erin zitten, verschilt per product, dus controleer welke lagen het inspecteert en wat het kan blokkeren.

Test uw begrip

Welke beschrijving van de basisfunctie van een firewall (met pakketfiltering) is juist?

  1. AHij versleutelt de communicatie om afluisteren onderweg te voorkomen
  2. BHij laat alleen toegestaan verkeer door en blokkeert de rest, volgens regels op basis van onder meer bron- en doel-IP-adressen en poortnummers
  3. CHij verdeelt binnenkomende pakketten over meerdere servers om de verwerkingslast te spreiden
Antwoord en toelichting tonen

Antwoord: B. Hij laat alleen toegestaan verkeer door en blokkeert de rest, volgens regels op basis van onder meer bron- en doel-IP-adressen en poortnummers

Een firewall wordt bijvoorbeeld geplaatst op de grens tussen een intern netwerk en het internet en staat verkeer toe of weigert het volgens vooraf vastgelegde regels. Een typische instelling is „van buitenaf alleen verkeer naar poort 443 van de openbare webserver toestaan en alle andere inkomende verbindingen weigeren”. De meeste firewalls voeren tegenwoordig stateful inspection uit: ze houden de toestand van verbindingen bij en laten de terugkerende pakketten van verbindingen die van binnenuit zijn begonnen automatisch door. Ze versleutelen niets, dus voor de bescherming van het verkeer worden ze gecombineerd met TLS of een VPN. Ook kunnen ze aanvallen die via een toegestane poort binnenkomen (zoals aanvallen op kwetsbaarheden van webapplicaties) niet tegenhouden, dus worden ook andere maatregelen zoals een WAF ingezet.

In een webapplicatie kan iemand zonder het wachtwoord te kennen inloggen door in het wachtwoordveld van het inlogscherm een tekenreeks zoals ' OR '1'='1 in te voeren. Hoe heet deze aanval?

  1. ASQL-injectie
  2. BCross-site scripting
  3. CDirectory traversal
Antwoord en toelichting tonen

Antwoord: A. SQL-injectie

SQL-injectie maakt misbruik van een webapplicatie die opdrachten voor de database (SQL-statements) opbouwt door de invoer van de gebruiker eenvoudig als tekenreeks aan te plakken. Wordt bijvoorbeeld ' OR '1'='1 ingevoegd op de plek waar de voorwaarde „het wachtwoord is gelijk aan 'invoer'” wordt opgebouwd, dan sluit het aanhalingsteken de tekenreeks af en wordt de altijd ware voorwaarde „of '1' is gelijk aan '1'” toegevoegd. Daardoor is aan de voorwaarde voldaan zonder het wachtwoord, en slaagt de inlog. Op dezelfde manier kunnen ook gegevens worden gestolen, gewijzigd of verwijderd. De fundamentele tegenmaatregel is een mechanisme dat invoer nooit als deel van de opdracht interpreteert: prepared statements met placeholders.

Een webapplicatie voor een prikbord had een kwetsbaarheid waarbij scripts in teksten die gebruikers plaatsten, werden uitgevoerd in de browsers van andere bezoekers. Welke combinatie geeft de naam van deze kwetsbaarheid en de fundamentele tegenmaatregel juist weer?

  1. ASQL-injectie. Het wachtwoord voor de verbinding met de database langer maken
  2. BCross-site scripting (XSS). Tekens met een speciale betekenis, zoals < en >, escapen bij het uitvoeren van geplaatste tekst als HTML
  3. CCross-site scripting (XSS). De communicatie tussen server en browser met HTTPS versleutelen
Antwoord en toelichting tonen

Antwoord: B. Cross-site scripting (XSS). Tekens met een speciale betekenis, zoals < en >, escapen bij het uitvoeren van geplaatste tekst als HTML

Cross-site scripting (XSS) is een kwetsbaarheid waarbij een webapplicatie de invoer van gebruikers ongewijzigd in HTML uitvoert, zodat een script in de invoer als deel van de pagina in de browsers van bezoekers wordt uitgevoerd. Omdat het script draait als pagina van die site, kan het de sessie-informatie van de bezoeker (cookies) stelen of nepinvoervelden tonen. De fundamentele tegenmaatregel is tekens met een speciale betekenis, zoals <, >, & en aanhalingstekens, te escapen afhankelijk van de plek waar ze worden uitgevoerd (bijvoorbeeld < omzetten in &lt;), zodat ze als gewone tekens worden weergegeven. Aanvullende maatregelen zijn onder meer cookies het attribuut HttpOnly geven, zodat scripts ze niet kunnen lezen, en met een Content Security Policy beperken welke scripts mogen draaien. HTTPS beschermt het communicatiekanaal en kan niet voorkomen dat een script dat in een legitieme pagina is ingebed wordt uitgevoerd.

  1. Welke uitspraak over een zero-day-aanval is juist?
  2. Welke uitspraak over een DDoS-aanval is juist?
  3. Welke beschrijving van een reverse proxy is juist?

Oefenvragen over Basis van informatiebeveiliging

Belangrijke termen uitgelegd

Poortnummer
Getal van 0 tot 65535 waarmee TCP en UDP aangeven voor welke applicatie op een apparaat het verkeer bestemd is. De poorten 0–1023, zoals 80 voor HTTP, 443 voor HTTPS en 53 voor DNS, heten well-known ports.
OSI-referentiemodel
Model dat de communicatiefuncties indeelt in zeven lagen: fysieke laag, datalinklaag, netwerklaag, transportlaag, sessielaag, presentatielaag en applicatielaag. Het dient als gemeenschappelijke taal om de rol van elke laag afzonderlijk te bekijken.
SQL-injectie
Aanval die misbruik maakt van een webapplicatie die SQL-statements opbouwt door de invoer van de gebruiker eenvoudig aan te plakken, en met de invoer de betekenis van de opdracht verandert om de database onbevoegd te manipuleren. Prepared statements met placeholders zijn de fundamentele tegenmaatregel.
Cross-site scripting (XSS)
Kwetsbaarheid waarbij een webapplicatie de invoer van gebruikers ongewijzigd in HTML uitvoert, zodat een script in de invoer in de browsers van bezoekers als pagina van die site wordt uitgevoerd. Het escapen van tekens met een speciale betekenis bij het uitvoeren is de fundamentele tegenmaatregel.
Reverse proxy
Een server die vóór webservers staat, de verzoeken van gebruikers namens die servers ontvangt en ze doorstuurt naar een of meer servers erachter. Hij neemt taken op zich zoals de HTTPS-versleuteling op één plek afhandelen (TLS-terminatie), veelgebruikte antwoorden opslaan en teruggeven, de belasting over meerdere servers verdelen en de configuratie van de servers erachter verbergen. Hij verschilt in plaats en in wat hij beschermt van een forward proxy, die aan de kant van de gebruikers staat en namens hen verbinding maakt met externe sites.
TLS (Transport Layer Security)
Protocol dat communicatie versleutelt, manipulatie detecteert en servers met certificaten authenticeert. HTTPS is HTTP beveiligd met TLS.
Zero-day-aanval
Aanval die een kwetsbaarheid in software misbruikt in de periode nadat ze is ontdekt, maar voordat er een oplossing (patch) beschikbaar is. Omdat patches haar niet kunnen voorkomen, wordt de schade beperkt met meerdere verdedigingslagen.

Verwante vergelijkingen