Evolúcia Web Application Firewall: od firewallov po cloudové ochranné systémy so strojovým učením

V našom predchádzajúcom materiáli o cloudových témach sme povedal, ako chrániť IT zdroje vo verejnom cloude a prečo nie sú tradičné antivírusy na tieto účely úplne vhodné. V tomto príspevku budeme pokračovať v téme cloudovej bezpečnosti a budeme hovoriť o vývoji WAF a o tom, čo je lepšie zvoliť: hardvér, softvér alebo cloud. 

Evolúcia Web Application Firewall: od firewallov po cloudové ochranné systémy so strojovým učením

Čo je WAF

Viac ako 75 % hackerských útokov je zameraných na zraniteľné miesta webových aplikácií a webových stránok: takéto útoky sú zvyčajne neviditeľné pre infraštruktúru informačnej bezpečnosti a služby informačnej bezpečnosti. Zraniteľnosť vo webových aplikáciách prináša riziko kompromitácie a podvodu s používateľskými účtami a osobnými údajmi, heslami a číslami kreditných kariet. Okrem toho zraniteľnosti na webe slúžia ako vstupný bod pre útočníkov do podnikovej siete.

Web Application Firewall (WAF) je ochranná obrazovka, ktorá blokuje útoky na webové aplikácie: SQL injection, cross-site skriptovanie, vzdialené spustenie kódu, hrubá sila a autorizačné obchádzanie. Vrátane útokov, ktoré využívajú zraniteľnosti zero-day. Aplikačné brány firewall poskytujú ochranu monitorovaním obsahu webových stránok vrátane HTML, DHTML a CSS a filtrovaním potenciálne škodlivých požiadaviek HTTP/HTTPS.

Aké boli prvé rozhodnutia?

Prvé pokusy o vytvorenie brány firewall webových aplikácií sa uskutočnili už začiatkom 90. rokov. Je známe, že v tejto oblasti pracovali najmenej traja inžinieri. Prvým je profesor informatiky Gene Spafford z Purdue University. Opísal architektúru proxy aplikačného firewallu a publikoval ju v roku 1991 v knihe "Bezpečnosť UNIX v praxi".

Druhý a tretí boli špecialisti na informačnú bezpečnosť William Cheswick a Marcus Ranum z Bell Labs. Vyvinuli jeden z prvých prototypov aplikačného firewallu. Distribuoval ho DEC - produkt bol vydaný pod názvom SEAL (Secure External Access Link).

SEAL ale nebolo plnohodnotným riešením WAF. Išlo o klasický sieťový firewall s pokročilou funkcionalitou – schopnosťou blokovať útoky na FTP a RSH. Z tohto dôvodu sa dnes za prvé WAF riešenie považuje produkt Perfecto Technologies (neskôr Sanctum). V roku 1999 ona представила Systém AppShield. Perfecto Technologies v tom čase vyvíjala riešenia informačnej bezpečnosti pre e-commerce a internetové obchody sa stali cieľovou skupinou ich nového produktu. AppShield dokázal analyzovať požiadavky HTTP a blokované útoky na základe dynamických zásad bezpečnosti informácií.

Približne v rovnakom čase ako AppShield (v roku 2002) sa objavil prvý open source WAF. Sa stal ModSecurity. Bol vytvorený s cieľom popularizovať technológie WAF a je stále podporovaný IT komunitou (tu je úložisko na GitHub). ModSecurity blokuje útoky na aplikácie na základe štandardnej sady regulárnych výrazov (podpisov) - nástroje na kontrolu požiadaviek na základe vzorov - Sada základných pravidiel OWASP.

Vďaka tomu sa vývojárom podarilo dosiahnuť svoj cieľ - na trhu sa začali objavovať nové riešenia WAF, vrátane tých, ktoré sú postavené na báze ModSecurity.

Tri generácie sú už históriou

Je zvykom rozlišovať tri generácie systémov WAF, ktoré sa vyvinuli s vývojom techniky.

Prvá generácia. Pracuje s regulárnymi výrazmi (alebo gramatikami). To zahŕňa ModSecurity. Poskytovateľ systému študuje typy útokov na aplikácie a generuje vzory, ktoré popisujú legitímne a potenciálne škodlivé požiadavky. WAF kontroluje tieto zoznamy a rozhoduje, čo robiť v konkrétnej situácii – či zablokovať premávku alebo nie.

Príkladom detekcie na základe regulárnych výrazov je už spomínaný projekt Sada základných pravidiel open source. Ďalší príklad - Naxsi, ktorý je tiež open source. Systémy s regulárnymi výrazmi majú množstvo nevýhod, najmä keď je objavená nová zraniteľnosť, administrátor musí manuálne vytvárať ďalšie pravidlá. V prípade rozsiahlej IT infraštruktúry môže ísť o niekoľko tisíc pravidiel. Správa takého množstva regulárnych výrazov je pomerne náročná, nehovoriac o tom, že ich kontrola môže znížiť výkon siete.

Regulárne výrazy majú tiež pomerne vysokú mieru falošnej pozitivity. Slávny lingvista Noam Chomsky navrhol klasifikáciu gramatík, v ktorej ich rozdelil do štyroch podmienených úrovní zložitosti. Podľa tejto klasifikácie môžu regulárne výrazy popisovať iba pravidlá brány firewall, ktoré nezahŕňajú odchýlky od vzoru. To znamená, že útočníci môžu ľahko „oklamať“ WAF prvej generácie. Jednou z metód boja proti tomuto je pridávanie špeciálnych znakov do požiadaviek aplikácie, ktoré neovplyvňujú logiku škodlivých údajov, ale porušujú pravidlo podpisu.

Evolúcia Web Application Firewall: od firewallov po cloudové ochranné systémy so strojovým učením

Druhá generácia. Na obídenie problémov s výkonom a presnosťou WAF boli vyvinuté aplikačné firewally druhej generácie. Teraz majú parsery, ktoré sú zodpovedné za identifikáciu presne definovaných typov útokov (na HTML, JS atď.). Tieto analyzátory pracujú so špeciálnymi tokenmi, ktoré popisujú dotazy (napríklad premenná, reťazec, neznámy, číslo). Potenciálne škodlivé sekvencie tokenov sú umiestnené v samostatnom zozname, ktorý systém WAF pravidelne kontroluje. Tento prístup bol prvýkrát ukázaný na konferencii Black Hat 2012 vo forme C/C++ libinjekčné knižnice, ktorý vám umožňuje odhaliť injekcie SQL.

V porovnaní s WAF prvej generácie môžu byť špecializované analyzátory rýchlejšie. Nevyriešili však ťažkosti spojené s manuálnou konfiguráciou systému, keď sa objavia nové škodlivé útoky.

Evolúcia Web Application Firewall: od firewallov po cloudové ochranné systémy so strojovým učením

Tretia generácia. Evolúcia v detekčnej logike tretej generácie spočíva v použití metód strojového učenia, ktoré umožňujú priblížiť gramatiku detekcie čo najbližšie reálnej gramatike SQL/HTML/JS chránených systémov. Táto detekčná logika je schopná prispôsobiť Turingov stroj tak, aby pokryl rekurzívne spočítateľné gramatiky. Navyše, predtým bola úloha vytvoriť adaptabilný Turingov stroj neriešiteľná, kým neboli publikované prvé štúdie neurálnych Turingových strojov.

Strojové učenie poskytuje jedinečnú schopnosť prispôsobiť akúkoľvek gramatiku na pokrytie akéhokoľvek typu útoku bez manuálneho vytvárania zoznamov podpisov, ako sa vyžaduje pri detekcii prvej generácie, a bez vývoja nových tokenizérov/analyzátorov pre nové typy útokov, ako sú Memcached, Redis, Cassandra, injekcie SSRF. , ako to vyžaduje metodika druhej generácie.

Kombináciou všetkých troch generácií detekčnej logiky môžeme nakresliť nový diagram, v ktorom je tretia generácia detekcie znázornená červeným obrysom (obrázok 3). Táto generácia obsahuje jedno z riešení, ktoré implementujeme v cloude spolu s Onsekom, vývojárom platformy pre adaptívnu ochranu webových aplikácií a Wallarm API.

Detekčná logika teraz využíva spätnú väzbu z aplikácie na samoladenie. V strojovom učení sa táto spätná väzba nazýva „posilnenie“. Typicky existuje jeden alebo viac typov takejto výstuže:

  • Analýza správania odozvy aplikácie (pasívna)
  • Scan/fuzzer (aktívne)
  • Nahlásiť súbory/procedúry zachytávača/pasce (po skutočnosti)
  • Manuál (definovaný nadriadeným)

V dôsledku toho logika detekcie tretej generácie rieši aj dôležitú otázku presnosti. Teraz je možné nielen vyhnúť sa falošným pozitívam a falošným negatívam, ale aj odhaliť platné skutočné negatíva, ako je detekcia použitia prvku príkazu SQL v ovládacom paneli, načítanie šablóny webovej stránky, požiadavky AJAX súvisiace s chybami JavaScriptu a iné.

Evolúcia Web Application Firewall: od firewallov po cloudové ochranné systémy so strojovým učením

Evolúcia Web Application Firewall: od firewallov po cloudové ochranné systémy so strojovým učením

Evolúcia Web Application Firewall: od firewallov po cloudové ochranné systémy so strojovým učením

Ďalej zvážime technologické možnosti rôznych možností implementácie WAF.

Hardvér, softvér alebo cloud – čo si vybrať?

Jednou z možností implementácie aplikačných firewallov je hardvérové ​​riešenie. Takéto systémy sú špecializované výpočtové zariadenia, ktoré spoločnosť inštaluje lokálne vo svojom dátovom centre. V tomto prípade si však musíte zakúpiť vlastné vybavenie a zaplatiť integrátorom peniaze za jeho nastavenie a odladenie (ak spoločnosť nemá vlastné IT oddelenie). Zároveň sa akékoľvek vybavenie stáva zastaraným a nepoužiteľným, takže zákazníci sú nútení počítať s aktualizáciou hardvéru.

Ďalšou možnosťou nasadenia WAF je softvérová implementácia. Riešenie sa inštaluje ako doplnok pre nejaký softvér (napríklad ModSecurity je nakonfigurovaný na vrchole Apache) a beží s ním na rovnakom serveri. Spravidla je možné takéto riešenia nasadiť na fyzický server aj v cloude. Ich nevýhodou je obmedzená škálovateľnosť a podpora dodávateľov.

Treťou možnosťou je nastavenie WAF z cloudu. Takéto riešenia poskytujú poskytovatelia cloudu ako predplatiteľskú službu. Spoločnosť nemusí kupovať a konfigurovať špecializovaný hardvér, tieto úlohy spadajú na plecia poskytovateľa služieb. Dôležitým bodom je, že moderný cloudový WAF neznamená migráciu zdrojov na platformu poskytovateľa. Stránka môže byť nasadená kdekoľvek, dokonca aj na mieste.

Ďalej vysvetlíme, prečo sa ľudia v súčasnosti čoraz viac obracajú na cloudové WAF.

Čo dokáže WAF v cloude

Z hľadiska technologických možností:

  • Za aktualizácie zodpovedá poskytovateľ. WAF sa poskytuje na základe predplatného, ​​takže poskytovateľ služby sleduje relevantnosť aktualizácií a licencií. Aktualizácie sa netýkajú len softvéru, ale aj hardvéru. Poskytovateľ upgraduje serverový park a udržiava ho. Je tiež zodpovedný za vyrovnávanie záťaže a redundanciu. Ak WAF server zlyhá, prevádzka je okamžite presmerovaná na iný počítač. Racionálne rozloženie prevádzky vám umožňuje vyhnúť sa situáciám, keď brána firewall prejde do otvoreného režimu zlyhania - nedokáže sa vyrovnať so záťažou a zastaví filtrovanie požiadaviek.
  • Virtuálne patchovanie. Virtuálne záplaty obmedzujú prístup k ohrozeným častiam aplikácie, kým vývojár neuzavrie zraniteľnosť. Zákazník cloudového poskytovateľa tak získa možnosť pokojne počkať, kým dodávateľ toho či onoho softvéru zverejní oficiálne „záplaty“. Urobiť to čo najrýchlejšie je prioritou dodávateľa softvéru. Napríklad v platforme Wallarm je za virtuálne patchovanie zodpovedný samostatný softvérový modul. Správca môže pridať vlastné regulárne výrazy na blokovanie škodlivých požiadaviek. Systém umožňuje označiť niektoré požiadavky príznakom „Dôverné údaje“. Potom sú ich parametre maskované a za žiadnych okolností nie sú prenášané mimo pracovnej oblasti brány firewall.
  • Vstavaný skener perimetra a zraniteľnosti. To vám umožňuje nezávisle určiť hranice siete IT infraštruktúry pomocou údajov z DNS dotazov a protokolu WHOIS. Potom WAF automaticky analyzuje služby bežiace vo vnútri perimetra (vykonáva skenovanie portov). Firewall dokáže odhaliť všetky bežné typy zraniteľností – SQLi, XSS, XXE atď. – a identifikovať chyby v konfigurácii softvéru, napríklad neoprávnený prístup k úložiskám Git a BitBucket a anonymné volania do Elasticsearch, Redis, MongoDB.
  • Útoky sú monitorované cloudovými prostriedkami. Poskytovatelia cloudu majú spravidla veľké množstvo výpočtového výkonu. To vám umožňuje analyzovať hrozby s vysokou presnosťou a rýchlosťou. V cloude je nasadený zhluk filtračných uzlov, cez ktorý prechádza všetka prevádzka. Tieto uzly blokujú útoky na webové aplikácie a odosielajú štatistiky do centra Analytics. Používa algoritmy strojového učenia na aktualizáciu pravidiel blokovania pre všetky chránené aplikácie. Implementácia takejto schémy je znázornená na obr. 4. Takéto prispôsobené bezpečnostné pravidlá minimalizujú počet falošných poplachov brány firewall.

Evolúcia Web Application Firewall: od firewallov po cloudové ochranné systémy so strojovým učením

Teraz trochu o funkciách cloudových WAF z hľadiska organizačných problémov a správy:

  • Prechod na OpEx. V prípade cloudových WAF budú náklady na implementáciu nulové, keďže všetok hardvér a licencie už zaplatil poskytovateľ, platba za službu prebieha formou predplatného.
  • Rôzne tarifné plány. Používateľ cloudovej služby môže rýchlo povoliť alebo zakázať ďalšie možnosti. Funkcie sú riadené z jedného ovládacieho panela, ktorý je navyše bezpečný. Pristupuje sa k nemu cez HTTPS a navyše existuje dvojfaktorový autentifikačný mechanizmus založený na protokole TOTP (Time-based One-Time Password Algorithm).
  • Pripojenie cez DNS. DNS môžete zmeniť sami a nakonfigurovať smerovanie siete. Na vyriešenie týchto problémov nie je potrebné prijímať a školiť jednotlivých špecialistov. S nastavením môže spravidla pomôcť technická podpora poskytovateľa.

Technológie WAF sa vyvinuli od jednoduchých firewallov s orientačnými pravidlami až po komplexné ochranné systémy s algoritmami strojového učenia. Aplikačné firewally teraz ponúkajú širokú škálu funkcií, ktoré sa v 90. rokoch ťažko implementovali. V mnohých ohľadoch bol vznik novej funkcionality možný vďaka cloudovým technológiám. Riešenia WAF a ich komponenty sa neustále vyvíjajú. Rovnako ako v iných oblastiach informačnej bezpečnosti.

Text pripravil Alexander Karpuzikov, manažér vývoja produktov informačnej bezpečnosti v cloudovom poskytovateľovi #CloudMTS.

Zdroj: hab.com

Pridať komentár