Onlangs gaf ik een gastcollege over web-application firewalls voor it-studenten van de Saxion Hogeschool. Mijn voorbereiding bleek wat te gedetailleerd, omdat het fenomeen bij velen nog redelijk onbekend bleek te zijn. Toch zien steeds meer bedrijven er de meerwaarde van in, omdat het intelligente en realtime beveiliging biedt voor web-applicaties. In tijden van cloud en SaaS is dat zeker geen overbodige luxe.
Firewalls bestaan sinds circa 1990. De eerste varianten waren vooral gericht op het filteren van netwerkverkeer van desktop- en serverapplicaties. Dit gebeurt ook nu nog steeds op ip-niveau door de headers van datapakketjes te lezen, op basis waarvan het verkeer wel of niet wordt doorgelaten. De tweede variant bekijkt het verkeer al iets meer in context, namelijk op applicatieniveau. Daarnaast zijn er nog varianten die specifiek zijn gericht op het monitoren van bepaalde netwerkverbindingen. In de praktijk bieden firewalls een combinatie hiervan. Sinds die tijd hebben de ontwikkelingen uiteraard niet stil gestaan.
Inmiddels zijn er Next Generation Firewalls op de markt die veel meer functionaliteit bieden, zoals bescherming tegen zero-day kwetsbaarheden en ondersteuning van IPS. Firewalls zijn daarom onmisbaar geworden.
Voor webapplicaties is er soms nog een aanvullende beveiliging nodig in de vorm van een web-application firewalls. Deze zijn namelijk specifiek bedoeld om SaaS en andere webgebaseerde applicaties te beschermen. Deze firewall-variant is ook niet nieuw, maar de waarde ervan is de afgelopen jaren wel veel groter geworden door de explosie aan webgebaseerde diensten en platformen. Maar wat doet een web-application firewall nu eigenlijk? Is het niet gewoon een security-lapmiddel voor iets dat je eigenlijk op applicatieniveau moet oplossen?
Toekomstige bedreigingen
De hoeveelheid van en de diversiteit aan cybersecurity-bedreigingen zijn de laatste jaren exponentieel toegenomen. Die aanvallen zijn in steeds grotere mate gericht op webgebaseerde diensten, omdat achter de login-schermen vaak grote hoeveelheden bedrijfsdata of klantgegevens te vinden zijn. Natuurlijk is het voor elke webapplicatie van belang dat deze zo veilig mogelijk ontwikkeld en ingericht is. Zeker als het gaat om SaaS, spreek je over oplossingen waar continu aan ontwikkeld wordt. Dit introduceert vrijwel altijd nieuwe bugs of zwakheden, die door kwaadwillenden misbruikt kunnen worden. En omdat het diensten aan derden betreft, kan zelfs de kortste downtime leiden tot het verlies van (potentiële) klanten.
Maar ook zijn er andere bedreigingen, die zowel gelden voor bedrijven die SaaS afnemen als die het leveren: zero-day vulnerabilities. Deze nieuw gevonden zwakheden in allerlei standaard software kunnen ineens voor een gapend beveiligingslek zorgen, dat onmogelijk direct gepatcht kan worden. De vraag is, hoe ga je daar als bedrijf mee om? Een goed opgeleid it-team kan een eventuele inbraak wellicht op tijd detecteren, maar dan is het kwaad misschien al geschied. Een web-application firewall is een goede eerste lijn van verdediging om webapplicaties extra te beschermen tegen met name die nieuwe en onbekende bedreigingen, zeker als het om een eigen SaaS-dienst gaat.
Zelflerende security
Een reguliere firewall is bij webgebaseerde applicaties goed te omzeilen. Webapplicaties zijn immers direct via het web te benaderen en geven na een inbraak direct toegang tot de gewilde buit. Het vinden van zwakheden kan wat tijd kosten, maar met beproefde technieken als SQL injection kan het soms verrassend eenvoudig zijn. Een verkeerde configuratie of een zero-day kan daardoor al snel leiden tot een ernstig beveiligingslek.
Een web-application firewall biedt een extra beveiligingslaag naast de bestaande login-functionaliteit van de applicatie. De firewall monitort deze op een intelligente manier en maakt daarnaast gebruikt van geactualiseerde informatie over cybersecurity-bedreigingen. Een web-application firewall kan bijvoorbeeld van afstand voorzien worden van updates over zero-days of andere zwakheden in software, waardoor webapplicaties er direct tegen beschermd kunnen worden.
Ook zijn dit soort firewalls vaak zelflerend. Ze kunnen op een intelligente manier login-schermen of andere invulvelden monitoren om zelfstandig te bepalen wat wenselijk of normaal gedrag is. Gebeurt er dan iets buiten die norm, zoals pogingen tot SQL injection, dan gaan direct de alarmbellen af. Door deze dynamische manier van beveiligen zorgen web-application firewalls ervoor dat alle vormen van web-gebaseerde applicaties beter beveiligd kunnen worden.
Is er een business-case?
Steeds meer bedrijven gebruiken web-based applicaties en SaaS voor het hosten van it-oplossingen of voor het online doorleveren van eigen diensten. Door de dynamiek van deze diensten en het feit dat ze via het internet geleverd worden, zijn de potentiële beveiligingsrisico’s aanmerkelijk groter dan bij applicaties op een intern netwerk. Traditionele beveiliging op basis van lijsten met virusdefinities of bekende kwetsbaarheden is daarom niet meer toereikend.
Het kan daarom een grote meerwaarde hebben om een web-application firewall als aanvullende dienst van de SaaS-leverancier af te nemen. Het is uiteraard wel afhankelijk van de geschatte bedrijfsrisico’s of dit de investering waard is. Maar als er een heldere businesscase op basis van een grondige risicoanalyse is voor het optimaal beveiligen van SaaS, dan biedt een web-application firewall een aanzienlijke verbetering van de beveiliging, die onmogelijk te evenaren is met traditionele oplossingen of een alert ontwikkelteam. De realtime en zelflerende bescherming die web-application firewalls bieden, is volgens mij noodzakelijk als je op een toekomstgerichte manier met beveiliging bezig wilt zijn.