De evolúsje fan Web Application Firewall: fan firewalls nei wolk-basearre beskermingssystemen mei masine learen

Yn ús foarige materiaal oer wolkûnderwerpen hawwe wy fertelde, hoe't jo IT-boarnen yn 'e iepenbiere wolk beskermje en wêrom't tradisjonele antiviruses net folslein geskikt binne foar dizze doelen. Yn dizze post sille wy it ûnderwerp fan wolkfeiligens trochgean en prate oer de evolúsje fan WAF en wat better is om te kiezen: hardware, software of wolk. 

De evolúsje fan Web Application Firewall: fan firewalls nei wolk-basearre beskermingssystemen mei masine learen

Wat is WAF

Mear as 75% fan hackeroanfallen binne rjochte op kwetsberens fan webapplikaasjes en websiden: sokke oanfallen binne meast ûnsichtber foar ynfrastruktuer foar ynformaasjefeiligens en tsjinsten foar ynformaasjefeiligens. Kwetsberheden yn webapplikaasjes drage op har beurt risiko's fan kompromis en fraude fan brûkersaccounts en persoanlike gegevens, wachtwurden en kredytkaartnûmers. Derneist tsjinje kwetsberens op 'e webside as yngongspunt foar oanfallers yn it bedriuwsnetwurk.

Web Application Firewall (WAF) is in beskermjend skerm dat oanfallen op webapplikaasjes blokkearret: SQL-ynjeksje, cross-site scripting, útfiering fan koade op ôfstân, brute force en autorisaasje bypass. Ynklusyf oanfallen dy't nul-dei kwetsberens brûke. Applikaasje-firewalls jouwe beskerming troch de ynhâld fan websiden te kontrolearjen, ynklusyf HTML, DHTML, en CSS, en it filterjen fan potinsjeel kweade HTTP/HTTPS-oanfragen.

Wat wiene de earste besluten?

De earste besykjen om in webapplikaasje-firewall te meitsjen waarden makke yn 'e iere jierren '90. It is bekend dat teminsten trije yngenieurs yn dit fjild wurke hawwe. De earste is heechlearaar kompjûterwittenskip Gene Spafford fan Purdue University. Hy beskreau de arsjitektuer fan in proxy-applikaasje-firewall en publisearre it yn 1991 yn it boek "UNIX Feiligens yn 'e praktyk".

De twadde en tredde wiene spesjalisten foar ynformaasjefeiligens William Cheswick en Marcus Ranum fan Bell Labs. Se ûntwikkele ien fan 'e earste prototypes foar applikaasje-firewall. It waard ferspraat troch DEC - it produkt waard útbrocht ûnder de namme SEAL (Secure External Access Link).

Mar SEAL wie gjin folweardige WAF-oplossing. It wie in klassike netwurk-firewall mei avansearre funksjonaliteit - de mooglikheid om oanfallen op FTP en RSH te blokkearjen. Om dizze reden wurdt de earste WAF-oplossing hjoed beskôge as it produkt fan Perfecto Technologies (letter Sanctum). Yn 1999 sy presintearre AppShield systeem. Op dat stuit ûntwikkele Perfecto Technologies oplossings foar ynformaasjefeiligens foar e-commerce, en online winkels waarden it doelpublyk fan har nije produkt. AppShield koe HTTP-oanfragen analysearje en blokkearre oanfallen basearre op dynamysk belied foar ynformaasjefeiligens.

Om deselde tiid as AppShield (yn 2002) ferskynde de earste iepen boarne WAF. Hy waard Mod Feiligens. It waard makke mei it doel om WAF-technologyen te popularisearjen en wurdt noch altyd stipe troch de IT-mienskip (hjir is it repository op GitHub). ModSecurity blokkearret oanfallen op applikaasjes basearre op in standert set reguliere útdrukkingen (hântekeningen) - ark foar it kontrolearjen fan oanfragen basearre op patroanen - OWASP Core Rule Set.

As gefolch, de ûntwikkelders slagge om te berikken harren doel - nije WAF oplossings begûn te ferskine op 'e merk, ynklusyf dy boud op basis fan ModSecurity.

Trije generaasjes binne al skiednis

It is gewoanlik om trije generaasjes WAF-systemen te ûnderskieden, dy't evoluearre binne mei de ûntwikkeling fan technology.

Earste generaasje. Wurket mei reguliere útdrukkingen (as grammatika's). Dit omfettet ModSecurity. De systeemprovider ûndersiket de soarten oanfallen op applikaasjes en genereart patroanen dy't legitime en potinsjeel kweade oanfragen beskriuwe. WAF kontrolearret dizze listen en beslút wat te dwaan yn in bepaalde situaasje - om ferkear te blokkearjen of net.

In foarbyld fan deteksje basearre op reguliere útdrukkingen is it al neamde projekt Kearnregelset iepen Boarne. In oar foarbyld - Naxsi, dy't ek iepen boarne is. Systemen mei reguliere útdrukkingen hawwe in oantal neidielen, benammen as in nije kwetsberens ûntdutsen wurdt, moat de behearder ekstra regels manuell oanmeitsje. Yn it gefal fan in grutskalige IT-ynfrastruktuer kinne d'r ferskate tûzen regels wêze. It behearen fan safolle reguliere útdrukkingen is frij lestich, om net te hawwen oer it feit dat it kontrolearjen fan har netwurkprestaasjes kin ferminderje.

Reguliere útdrukkingen hawwe ek in frij heech falsk positive taryf. De ferneamde taalkundige Noam Chomsky stelde in klassifikaasje fan grammatika's foar wêryn't er se opdielde yn fjouwer betingsten fan kompleksiteit. Neffens dizze klassifikaasje kinne reguliere útdrukkingen allinich firewallregels beskriuwe dy't gjin ôfwikingen fan it patroan omfetsje. Dit betsjut dat oanfallers de earste generaasje WAF maklik kinne "narre". Ien metoade om dit te bestriden is om spesjale tekens ta te foegjen oan oanfragen foar applikaasjes dy't de logika fan 'e kweade gegevens net beynfloedzje, mar de hantekeningregel skeine.

De evolúsje fan Web Application Firewall: fan firewalls nei wolk-basearre beskermingssystemen mei masine learen

Twadde generaasje. Om de prestaasjes en krektensproblemen fan WAF's te omgean, waarden twadde generaasje applikaasje-firewalls ûntwikkele. Se hawwe no parsers dy't ferantwurdlik binne foar it identifisearjen fan strikt definieare soarten oanfallen (op HTML, JS, ensfh.). Dizze parsers wurkje mei spesjale tokens dy't fragen beskriuwe (bygelyks fariabele, tekenrige, ûnbekend, nûmer). Potinsjele kweade token-sekwinsjes wurde pleatst yn in aparte list, wêrfan it WAF-systeem regelmjittich kontrolearret. Dizze oanpak waard foar it earst te sjen op 'e Black Hat 2012-konferinsje yn' e foarm fan C / C ++ libinjection bibleteken, wêrtroch jo SQL-ynjeksjes kinne ûntdekke.

Yn ferliking mei earste-generaasje WAF's kinne spesjalisearre parsers rapper wêze. Se hawwe lykwols de swierrichheden net oplost ferbûn mei it manuell konfigurearjen fan it systeem as nije kweade oanfallen ferskine.

De evolúsje fan Web Application Firewall: fan firewalls nei wolk-basearre beskermingssystemen mei masine learen

Tredde generaasje. De evolúsje yn deteksjelogika fan tredde generaasje bestiet út it brûken fan masine-learenmetoaden dy't it mooglik meitsje om de deteksjegrammatika sa ticht mooglik by de echte SQL / HTML / JS-grammatika fan 'e beskerme systemen te bringen. Dizze deteksjelogika is yn steat om in Turing-masine oan te passen om rekursyf optelbere grammatika's te dekken. Boppedat wie earder de taak fan it meitsjen fan in oanpasbere Turing-masine ûnoplosber oant de earste stúdzjes fan neurale Turing-masines waarden publisearre.

Masine learen biedt de unike mooglikheid om elke grammatika oan te passen om elk type oanfal te dekken sûnder hântekeninglisten te meitsjen lykas fereaske yn deteksje fan 'e earste generaasje, en sûnder nije tokenizers / parsers te ûntwikkeljen foar nije oanfalstypen lykas Memcached, Redis, Cassandra, SSRF-ynjeksjes , lykas fereaske troch de twadde generaasje metodyk.

Troch alle trije generaasjes fan deteksjelogika te kombinearjen, kinne wy ​​in nij diagram tekenje wêryn de tredde generaasje fan deteksje wurdt fertsjintwurdige troch de reade rigel (figuer 3). Dizze generaasje omfettet ien fan 'e oplossingen dy't wy yn' e wolk ymplementearje tegearre mei Onsek, de ûntwikkelder fan it platfoarm foar adaptive beskerming fan webapplikaasjes en de Wallarm API.

De deteksjelogika brûkt no feedback fan 'e applikaasje om harsels te tunen. Yn masine learen wurdt dizze feedbackloop "fersterking" neamd. Typysk binne d'r ien of mear soarten fan sokke fersterking:

  • Analyze fan gedrach fan applikaasje-antwurd (passyf)
  • Scan/fuzzer (aktyf)
  • Rapportearje triemmen / ûnderskeppingsprosedueres / fallen (nei it feit)
  • Hânlieding (definieare troch supervisor)

As gefolch, tredde-generaasje deteksje logika ek adres it wichtige probleem fan krektens. It is no mooglik om net allinich falske positiven en falske negativen te foarkommen, mar ek jildige wiere negativen te ûntdekken, lykas deteksje fan gebrûk fan SQL-kommando-eleminten yn Control Panel, laden fan websidesjabloanen, AJAX-oanfragen relatearre oan JavaScript-flaters, en oaren.

De evolúsje fan Web Application Firewall: fan firewalls nei wolk-basearre beskermingssystemen mei masine learen

De evolúsje fan Web Application Firewall: fan firewalls nei wolk-basearre beskermingssystemen mei masine learen

De evolúsje fan Web Application Firewall: fan firewalls nei wolk-basearre beskermingssystemen mei masine learen

Folgjende sille wy beskôgje de technologyske mooglikheden fan ferskate WAF ymplemintaasje opsjes.

Hardware, software of wolk - wat te kiezen?

Ien fan 'e opsjes foar it ymplementearjen fan applikaasje-firewalls is in hardware-oplossing. Sokke systemen binne spesjalisearre kompjûterapparaten dy't in bedriuw lokaal yn har datasintrum ynstallearret. Mar yn dit gefal moatte jo jo eigen apparatuer keapje en jild betelje oan yntegrators foar it ynstellen en debuggen (as it bedriuw gjin eigen IT-ôfdieling hat). Tagelyk wurdt alle apparatuer ferâldere en ûnbrûkber, sadat klanten wurde twongen om budzjet te meitsjen foar hardware-upgrades.

In oare opsje foar it ynsetten fan in WAF is in software-ymplemintaasje. De oplossing wurdt ynstallearre as in tafoeging foar guon software (Bygelyks, ModSecurity is konfigurearre boppe op Apache) en rint op deselde tsjinner mei. As regel kinne sokke oplossingen sawol op in fysike server as yn 'e wolk ynset wurde. Harren neidiel is beheinde skalberens en ferkeaper-stipe.

De tredde opsje is it ynstellen fan in WAF út 'e wolk. Sokke oplossingen wurde levere troch wolkproviders as abonnemintstsjinst. It bedriuw hoecht gjin spesjalisearre hardware te keapjen en te konfigurearjen; dizze taken falle op 'e skouders fan' e tsjinstferliener. In wichtich punt is dat in moderne wolk WAF net ymplisearret de migraasje fan boarnen nei it platfoarm fan de provider. De side kin oeral wurde ynset, sels on-premise.

Wy sille fierder útlizze wêrom't minsken no hieltyd mear nei wolk WAF sykje.

Wat WAF kin dwaan yn 'e wolk

Yn termen fan technologyske mooglikheden:

  • De provider is ferantwurdlik foar updates. WAF wurdt levere troch abonnemint, sadat de tsjinstferliener de relevânsje fan updates en lisinsjes kontrolearret. Updates hawwe net allinich software, mar ek hardware. De provider upgrade it serverpark en ûnderhâldt it. It is ek ferantwurdlik foar load balancing en redundans. As de WAF-tsjinner mislearret, wurdt ferkear daliks omlaat nei in oare masine. Rasjonele ferdieling fan ferkear lit jo situaasjes foarkomme as de firewall yn 'e fail-iepen modus komt - it kin net omgean mei de lading en stopet mei filterjen fan fersiken.
  • Firtuele patching. Firtuele patches beheine tagong ta kompromitteare dielen fan 'e applikaasje oant de ûntwikkelder de kwetsberens slút. As resultaat krijt de klant fan 'e wolkprovider de kâns om rêstich te wachtsjen oant de leveransier fan dizze of dy software offisjele "patches" publisearret. Dit sa gau mooglik dwaan is in prioriteit foar de softwareleveransier. Bygelyks, yn it Wallarm-platfoarm is in aparte softwaremodule ferantwurdlik foar firtuele patching. De behearder kin oanpaste reguliere útdrukkingen tafoegje om kweade fersiken te blokkearjen. It systeem makket it mooglik om guon oanfragen te markearjen mei de flagge "Fertroulike gegevens". Dan wurde har parameters maskere, en se wurde ûnder gjin omstannichheden bûten it firewall-wurkgebiet oerbrocht.
  • Ynboude perimeter en kwetsberens scanner. Hjirmei kinne jo de netwurkgrinzen fan 'e IT-ynfrastruktuer ûnôfhinklik bepale mei gegevens fan DNS-fragen en it WHOIS-protokol. Nei ôfrin analysearret WAF automatysk tsjinsten dy't rinne binnen de perimeter (fiert poarte skennen). De brânmuorre is yn steat om alle gewoane soarten kwetsberens - SQLi, XSS, XXE, ensfh.
  • Oanfallen wurde kontrolearre troch wolkboarnen. As regel hawwe wolkproviders grutte hoemannichten komputerkrêft. Hjirmei kinne jo bedrigingen analysearje mei hege krektens en snelheid. In kluster fan filterknooppunten wurdt ynset yn 'e wolk, dêr't alle ferkear troch giet. Dizze knopen blokkearje oanfallen op webapplikaasjes en stjoere statistiken nei it Analytics Center. It brûkt masine-learen-algoritmen om blokkearjende regels te aktualisearjen foar alle beskerme applikaasjes. De ymplemintaasje fan sa'n skema wurdt werjûn yn Fig. 4. Sokke maatwurk feiligens regels minimalisearje it oantal falske firewall alaarms.

De evolúsje fan Web Application Firewall: fan firewalls nei wolk-basearre beskermingssystemen mei masine learen

No in bytsje oer de funksjes fan wolk WAF's yn termen fan organisatoaryske problemen en behear:

  • Oergong nei OpEx. Yn it gefal fan wolk WAF's sille de kosten fan ymplemintaasje nul wêze, om't alle hardware en lisinsjes al binne betelle troch de provider; betelling foar de tsjinst wurdt makke troch abonnemint.
  • Ferskillende tariefplannen. De brûker fan 'e wolktsjinst kin ekstra opsjes fluch yn- of útskeakelje. Funksjes wurde beheard fanút ien kontrôlepaniel, dat ek feilich is. It is tagonklik fia HTTPS, plus d'r is in twa-faktor autentikaasjemeganisme basearre op it TOTP (Time-based One-Time Password Algorithm) protokol.
  • Ferbining fia DNS. Jo kinne DNS sels feroarje en netwurkrouting ynstelle. Om dizze problemen op te lossen is d'r gjin needsaak om yndividuele spesjalisten te rekrutearjen en op te trenen. As regel kin de technyske stipe fan 'e provider helpe by it opsetten.

WAF-technologyen binne evoluearre fan ienfâldige firewalls mei thumbregels nei komplekse beskermingssystemen mei masine-learalgoritmen. Applikaasje-firewalls biede no in breed oanbod fan funksjes dy't yn 'e jierren '90 lestich wiene te ymplementearjen. Op in protte manieren waard it ûntstean fan nije funksjonaliteit mooglik troch wolktechnologyen. WAF-oplossingen en har komponinten bliuwe te ûntwikkeljen. Krekt as oare gebieten fan ynformaasjefeiligens.

De tekst waard taret troch Alexander Karpuzikov, manager foar produktûntwikkeling foar ynformaasjefeiligens by wolkprovider #CloudMTS.

Boarne: www.habr.com

Add a comment