De evolutie van Web Application Firewall: van firewalls naar cloudgebaseerde beveiligingssystemen met machine learning

In ons vorige materiaal over cloudonderwerpen hebben we vertelde, hoe je IT-bronnen in de publieke cloud kunt beschermen en waarom traditionele antivirussen niet helemaal geschikt zijn voor deze doeleinden. In dit bericht gaan we verder met het onderwerp cloudbeveiliging en praten we over de evolutie van WAF en wat beter is om te kiezen: hardware, software of cloud. 

De evolutie van Web Application Firewall: van firewalls naar cloudgebaseerde beveiligingssystemen met machine learning

Wat is WAF

Ruim 75% van de hackeraanvallen is gericht op kwetsbaarheden van webapplicaties en websites: dergelijke aanvallen zijn doorgaans onzichtbaar voor de informatiebeveiligingsinfrastructuur en informatiebeveiligingsdiensten. Kwetsbaarheden in webapplicaties brengen op hun beurt risico's met zich mee van compromittering en fraude met gebruikersaccounts en persoonlijke gegevens, wachtwoorden en creditcardnummers. Bovendien dienen kwetsbaarheden in de website als toegangspunt voor aanvallers tot het bedrijfsnetwerk.

Web Application Firewall (WAF) is een beschermend scherm dat aanvallen op webapplicaties blokkeert: SQL-injectie, cross-site scripting, uitvoering van externe code, brute force en autorisatie-bypass. Inclusief aanvallen die misbruik maken van zero-day-kwetsbaarheden. Applicatiefirewalls bieden bescherming door de inhoud van webpagina's te monitoren, inclusief HTML, DHTML en CSS, en door potentieel kwaadaardige HTTP/HTTPS-verzoeken te filteren.

Wat waren de eerste beslissingen?

De eerste pogingen om een ​​webapplicatie-firewall te creëren werden begin jaren negentig ondernomen. Er zijn ten minste drie ingenieurs bekend die op dit gebied hebben gewerkt. De eerste is hoogleraar computerwetenschappen Gene Spafford van Purdue University. Hij beschreef de architectuur van een firewall voor proxytoepassingen en publiceerde deze in 90 in het boek "UNIX-beveiliging in de praktijk".

De tweede en derde waren informatiebeveiligingsspecialisten William Cheswick en Marcus Ranum van Bell Labs. Ze ontwikkelden een van de eerste prototypes van een applicatiefirewall. Het werd gedistribueerd door DEC - het product werd uitgebracht onder de naam SEAL (Secure External Access Link).

Maar SEAL was geen volwaardige WAF-oplossing. Het was een klassieke netwerkfirewall met geavanceerde functionaliteit: de mogelijkheid om aanvallen op FTP en RSH te blokkeren. Om deze reden wordt de eerste WAF-oplossing tegenwoordig beschouwd als het product van Perfecto Technologies (later Sanctum). In 1999 zij gepresenteerd AppShield-systeem. In die tijd was Perfecto Technologies informatiebeveiligingsoplossingen voor e-commerce aan het ontwikkelen, en online winkels werden de doelgroep van hun nieuwe product. AppShield kon HTTP-verzoeken en geblokkeerde aanvallen analyseren op basis van dynamisch informatiebeveiligingsbeleid.

Rond dezelfde tijd als AppShield (in 2002) verscheen de eerste open source WAF. Hij werd ModSecurity. Het is gemaakt met als doel WAF-technologieën te populariseren en wordt nog steeds ondersteund door de IT-gemeenschap (hier is het opslagplaats op GitHub). ModSecurity blokkeert aanvallen op applicaties op basis van een standaardset reguliere expressies (handtekeningen) - tools voor het controleren van verzoeken op basis van patronen - OWASP-kernregelset.

Als gevolg hiervan slaagden de ontwikkelaars erin hun doel te bereiken: er verschenen nieuwe WAF-oplossingen op de markt, inclusief oplossingen gebouwd op basis van ModSecurity.

Drie generaties zijn al geschiedenis

Het is gebruikelijk om drie generaties WAF-systemen te onderscheiden, die zijn geëvolueerd met de ontwikkeling van technologie.

Eerste generatie. Werkt met reguliere expressies (of grammatica's). Dit omvat ModSecurity. De systeemprovider bestudeert de soorten aanvallen op applicaties en genereert patronen die legitieme en potentieel kwaadaardige verzoeken beschrijven. WAF controleert deze lijsten en beslist wat te doen in een bepaalde situatie: verkeer blokkeren of niet.

Een voorbeeld van detectie op basis van reguliere expressies is het reeds genoemde project Kernregelset open source. Een ander voorbeeld - Naxi, dat ook open source is. Systemen met reguliere expressies hebben een aantal nadelen. Met name wanneer er een nieuwe kwetsbaarheid wordt ontdekt, moet de beheerder handmatig aanvullende regels maken. Bij een grootschalige IT-infrastructuur kunnen er enkele duizenden regels gelden. Het beheren van zoveel reguliere expressies is behoorlijk moeilijk, om nog maar te zwijgen van het feit dat het controleren ervan de netwerkprestaties kan verminderen.

Reguliere expressies hebben ook een vrij hoog percentage fout-positieven. De beroemde taalkundige Noam Chomsky stelde een classificatie van grammatica's voor, waarin hij ze in vier voorwaardelijke niveaus van complexiteit verdeelde. Volgens deze classificatie kunnen reguliere expressies alleen firewallregels beschrijven die geen afwijkingen van het patroon met zich meebrengen. Dit betekent dat aanvallers de WAF van de eerste generatie gemakkelijk voor de gek kunnen houden. Eén methode om dit tegen te gaan is het toevoegen van speciale tekens aan applicatieverzoeken die de logica van de kwaadaardige gegevens niet beïnvloeden, maar de handtekeningregel schenden.

De evolutie van Web Application Firewall: van firewalls naar cloudgebaseerde beveiligingssystemen met machine learning

Tweede generatie. Om de prestatie- en nauwkeurigheidsproblemen van WAF's te omzeilen, zijn applicatiefirewalls van de tweede generatie ontwikkeld. Ze beschikken nu over parsers die verantwoordelijk zijn voor het identificeren van strikt gedefinieerde soorten aanvallen (op HTML, JS, enz.). Deze parsers werken met speciale tokens die zoekopdrachten beschrijven (bijvoorbeeld variabele, string, onbekend, getal). Potentieel kwaadaardige tokenreeksen worden in een aparte lijst geplaatst, die het WAF-systeem regelmatig controleert. Deze aanpak werd voor het eerst getoond op de Black Hat 2012-conferentie in de vorm van C/C++ libinjection-bibliotheken, waarmee u SQL-injecties kunt detecteren.

Vergeleken met WAF's van de eerste generatie kunnen gespecialiseerde parsers sneller zijn. Ze hebben echter niet de problemen opgelost die gepaard gaan met het handmatig configureren van het systeem wanneer er nieuwe kwaadaardige aanvallen verschijnen.

De evolutie van Web Application Firewall: van firewalls naar cloudgebaseerde beveiligingssystemen met machine learning

Derde generatie. De evolutie in de detectielogica van de derde generatie bestaat uit het gebruik van machine learning-methoden die het mogelijk maken om de detectiegrammatica zo dicht mogelijk bij de echte SQL/HTML/JS-grammatica van de beschermde systemen te brengen. Deze detectielogica kan een Turing-machine aanpassen om recursief opsombare grammatica's te dekken. Bovendien was de taak om een ​​aanpasbare Turing-machine te creëren voorheen onoplosbaar totdat de eerste onderzoeken naar neurale Turing-machines werden gepubliceerd.

Machine learning biedt de unieke mogelijkheid om elke grammatica aan te passen om elk type aanval af te dekken zonder handmatig handtekeningenlijsten te maken zoals vereist bij detectie van de eerste generatie, en zonder nieuwe tokenizers/parsers te ontwikkelen voor nieuwe aanvalstypen zoals Memcached, Redis, Cassandra en SSRF-injecties , zoals vereist door de methodologie van de tweede generatie.

Door alle drie de generaties detectielogica te combineren, kunnen we een nieuw diagram tekenen waarin de derde generatie detectie wordt weergegeven door de rode omtrek (Figuur 3). In deze generatie zit één van de oplossingen die we samen met Onsek, de ontwikkelaar van het platform voor adaptieve bescherming van webapplicaties en de Wallarm API, in de cloud implementeren.

De detectielogica gebruikt nu feedback van de applicatie om zichzelf af te stemmen. Bij machinaal leren wordt deze feedbacklus ‘versterking’ genoemd. Meestal zijn er een of meer soorten van dergelijke wapening:

  • Analyse van applicatieresponsgedrag (passief)
  • Scan/fuzzer (actief)
  • Rapportbestanden/interceptorprocedures/vallen (achteraf)
  • Handleiding (gedefinieerd door supervisor)

Als gevolg hiervan pakt de detectielogica van de derde generatie ook het belangrijke probleem van nauwkeurigheid aan. Het is nu niet alleen mogelijk om valse positieven en valse negatieven te vermijden, maar ook om geldige echte negatieven te detecteren, zoals detectie van het gebruik van SQL-opdrachtelementen in het Configuratiescherm, het laden van webpaginasjablonen, AJAX-verzoeken gerelateerd aan JavaScript-fouten en andere.

De evolutie van Web Application Firewall: van firewalls naar cloudgebaseerde beveiligingssystemen met machine learning

De evolutie van Web Application Firewall: van firewalls naar cloudgebaseerde beveiligingssystemen met machine learning

De evolutie van Web Application Firewall: van firewalls naar cloudgebaseerde beveiligingssystemen met machine learning

Vervolgens zullen we de technologische mogelijkheden van verschillende WAF-implementatieopties bekijken.

Hardware, software of cloud: wat te kiezen?

Eén van de opties voor het implementeren van applicatiefirewalls is een hardwareoplossing. Dergelijke systemen zijn gespecialiseerde computerapparatuur die een bedrijf lokaal in zijn datacenter installeert. Maar in dit geval moet u uw eigen apparatuur aanschaffen en geld betalen aan integrators voor het opzetten en debuggen ervan (als het bedrijf niet over een eigen IT-afdeling beschikt). Tegelijkertijd raakt alle apparatuur verouderd en onbruikbaar, zodat klanten gedwongen worden budget te reserveren voor hardware-upgrades.

Een andere optie voor het inzetten van een WAF is een software-implementatie. De oplossing wordt geïnstalleerd als een add-on voor bepaalde software (ModSecurity wordt bijvoorbeeld bovenop Apache geconfigureerd) en draait ermee op dezelfde server. Dergelijke oplossingen kunnen in de regel zowel op een fysieke server als in de cloud worden ingezet. Hun nadeel is de beperkte schaalbaarheid en leveranciersondersteuning.

De derde optie is het opzetten van een WAF vanuit de cloud. Dergelijke oplossingen worden door cloudproviders aangeboden als abonnementsdienst. Het bedrijf hoeft geen gespecialiseerde hardware aan te schaffen en te configureren; deze taken vallen op de schouders van de dienstverlener. Een belangrijk punt is dat een moderne cloud-WAF niet de migratie van bronnen naar het platform van de provider impliceert. De site kan overal worden ingezet, zelfs op locatie.

We zullen verder uitleggen waarom mensen nu steeds meer naar cloud WAF kijken.

Wat WAF kan doen in de cloud

In termen van technologische mogelijkheden:

  • De aanbieder is verantwoordelijk voor updates. WAF wordt aangeboden per abonnement, zodat de serviceprovider de relevantie van updates en licenties bewaakt. Updates hebben niet alleen betrekking op software, maar ook op hardware. De provider upgradet het serverpark en onderhoudt dit. Het is ook verantwoordelijk voor taakverdeling en redundantie. Als de WAF-server uitvalt, wordt het verkeer onmiddellijk omgeleid naar een andere machine. Door een rationele verdeling van het verkeer kunt u situaties vermijden waarin de firewall in de fail-open-modus gaat: hij kan de belasting niet aan en stopt met het filteren van verzoeken.
  • Virtueel patchen. Virtuele patches beperken de toegang tot aangetaste delen van de applicatie totdat de ontwikkelaar het beveiligingslek sluit. Hierdoor krijgt de klant van de cloudprovider de mogelijkheid om rustig te wachten totdat de leverancier van deze of gene software officiële ‘patches’ publiceert. Dit zo snel mogelijk doen is een prioriteit voor de softwareleverancier. In het Wallarm-platform is bijvoorbeeld een aparte softwaremodule verantwoordelijk voor virtuele patching. De beheerder kan aangepaste reguliere expressies toevoegen om kwaadaardige verzoeken te blokkeren. Het systeem maakt het mogelijk om sommige verzoeken te markeren met de vlag “Vertrouwelijke gegevens”. Vervolgens worden hun parameters gemaskeerd en worden ze in geen geval buiten het werkgebied van de firewall verzonden.
  • Ingebouwde perimeter- en kwetsbaarheidsscanner. Hiermee kunt u zelfstandig de netwerkgrenzen van de IT-infrastructuur bepalen met behulp van gegevens uit DNS-query's en het WHOIS-protocol. Daarna analyseert WAF automatisch services die binnen de perimeter draaien (voert poortscans uit). De firewall kan alle veel voorkomende soorten kwetsbaarheden detecteren - SQLi, XSS, XXE, enz. - en fouten in de softwareconfiguratie identificeren, bijvoorbeeld ongeautoriseerde toegang tot Git- en BitBucket-repository's en anonieme oproepen naar Elasticsearch, Redis en MongoDB.
  • Aanvallen worden gemonitord door cloudbronnen. In de regel beschikken cloudaanbieders over grote hoeveelheden rekenkracht. Hierdoor kunt u bedreigingen met hoge nauwkeurigheid en snelheid analyseren. In de cloud wordt een cluster van filternodes ingezet waar al het verkeer doorheen gaat. Deze knooppunten blokkeren aanvallen op webapplicaties en sturen statistieken naar het Analytics Center. Het maakt gebruik van machine learning-algoritmen om de blokkeerregels voor alle beschermde applicaties bij te werken. De implementatie van een dergelijk schema wordt getoond in Fig. 4. Dergelijke op maat gemaakte beveiligingsregels minimaliseren het aantal valse firewall-alarmen.

De evolutie van Web Application Firewall: van firewalls naar cloudgebaseerde beveiligingssystemen met machine learning

Nu iets over de kenmerken van cloud-WAF's in termen van organisatorische problemen en beheer:

  • Overgang naar OpEx. In het geval van cloud-WAF's zullen de implementatiekosten nul zijn, omdat alle hardware en licenties al door de provider zijn betaald; de betaling voor de dienst gebeurt via een abonnement.
  • Verschillende tariefplannen. De gebruiker van de cloudservice kan snel extra opties in- of uitschakelen. Functies worden beheerd vanuit één enkel bedieningspaneel, dat bovendien beveiligd is. Het is toegankelijk via HTTPS, en er is een tweefactorauthenticatiemechanisme gebaseerd op het TOTP-protocol (Time-based One-Time Password Algorithm).
  • Verbinding via DNS. U kunt zelf DNS wijzigen en netwerkroutering configureren. Om deze problemen op te lossen is het niet nodig om individuele specialisten te werven en op te leiden. In de regel kan de technische ondersteuning van de aanbieder helpen bij de installatie.

WAF-technologieën zijn geëvolueerd van eenvoudige firewalls met vuistregels naar complexe beveiligingssystemen met machine learning-algoritmen. Applicatiefirewalls bieden nu een breed scala aan functies die in de jaren negentig moeilijk te implementeren waren. In veel opzichten werd de opkomst van nieuwe functionaliteit mogelijk dankzij cloudtechnologieën. WAF-oplossingen en hun componenten blijven evolueren. Net als andere gebieden van informatiebeveiliging.

De tekst is opgesteld door Alexander Karpuzikov, productontwikkelingsmanager informatiebeveiliging bij cloudprovider #CloudMTS.

Bron: www.habr.com

Voeg een reactie