V našom predchádzajúcom materiáli o cloudových témach sme
Č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
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
Približne v rovnakom čase ako AppShield (v roku 2002) sa objavil prvý open source WAF. Sa stal
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
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.
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++
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.
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é.
Ď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.
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