Në materialin tonë të kaluar mbi temën e cloud-it ne , si të mbrohet infrastruktura IT në cloud publik dhe pse antivirusët tradicionalë nuk janë krejtësisht të përshtatshëm për këto qëllime. Në këtë postim do të vazhdojmë temën e sigurisë në cloud dhe do të flasim për evoluimin e WAF dhe se çfarë është më mirë të zgjidhni: harduer, softuer ose cloud.

Çfarë është WAF
Më shumë se 75% e sulmeve nga hakera janë të drejtuara ndaj dobësive të aplikacioneve web dhe faqeve: këto sulme zakonisht janë të padukshme për infrastrukturën dhe shërbimet e sigurisë. Dobësitë e aplikacioneve web përmbajnë, nga ana e tyre, rreziqe të kompromentimit dhe mashtrimit të llogarive dhe të dhënave personale të përdoruesve, fjalëkalimeve, numrave të kartave të kreditit. Për më tepër, dobësitë në një faqe interneti shërbejnë si pikë hyrjeje për sulmuesit në rrjetin korporativ.
Web Application Firewall (WAF) paraqet një ekran mbrojtës, i cili bllokon sulmet ndaj aplikacioneve web: SQL injeksione, skriptim të ndërfaqes së përdoruesit, ekzekutimin e kodit në distancë, brute force dhe shmangien e autorizimit (auth bypass). Kjo përfshin edhe sulmet që përdorin dobësi zero-day. Firewall-ët e aplikacioneve sigurojnë mbrojtje duke monitoruar përmbajtjen e faqeve web, duke përfshirë HTML, DHTML dhe CSS, dhe duke filtruar kërkesat potencialisht dëmtuese përmes HTTP/HTTPS.
Cilat ishin zgjidhjet e para?
Përpjekjet e para për të krijuar Web Application Firewall u bënë që në fillim të viteve '90. Dihet të paktën për tre inxhinierë që punuan në këtë fushë. I pari — profesori i shkencave kompjuterike Jean Spafford nga Universiteti Purdue. Ai përshkroi arkitekturën e një firewall-i aplikacionesh me proxy dhe e publikoi atë në 1991 në librin .
I dyti dhe i treti — ishin specialistët e sigurisë William Cheswick dhe Marcus Ranum nga Bell Labs. Ata zhvilluan një nga prototipet e para të firewall-ëve të aplikacioneve. Shpërndarja e tij u realizua nga kompania DEC — produkti u lëshua me emrin SEAL (Secure External Access Link).
Por SEAL nuk ishte një zgjidhje e plotë WAF. Ai përbënte një firewall të zakonshëm të rrjetit me funksionalitet të zgjeruar — mundësinë për të bllokuar sulmet ndaj FTP dhe RSH. Për këtë arsye, sot zgjidhja e parë WAF konsiderohet produkti i kompanisë Perfecto Technologies (më pas Sanctum). Në vitin 1999 ajo sistemin AppShield. Në atë kohë, Perfecto Technologies po merreshin me zhvillimin e zgjidhjeve të sigurisë për e-commerce dhe audienca që kishin synuar për produktin e tyre të ri ishin dyqanet online. AppShield kishte aftësinë të analizonte kërkesat HTTP dhe bllokonte sulmet në bazë të politikave dinamike të sigurisë.
Rreth të njëjtës kohë me AppShield (në vitin 2002) u shfaq WAF-i i parë me kod të hapur. Ai quhej . Ai u krijua me qëllim që të popullarizonte teknologjitë WAF dhe mbështetet ende nga komuniteti IT (ja ). ModSecurity bllokon sulmet ndaj aplikacioneve duke u bazuar në një grup standard të shprehjeve të rregullta (nënshkrimeve) — mjete për kontrollin e kërkesave sipas një modeli — .
Si rezultat, zhvilluesit arritën ta realizonin qëllimin e tyre — në treg filluan të shfaqen zgjidhje të reja WAF, përfshirë ato të ndërtuara mbi ModSecurity.
Të treja gjeneratat — tashmë histori
Praket e zakonshme janë identifikimi i tre gjeneratave të sistemeve WAF, të cilat kanë evoluar me zhvillimin e teknologjive.
Gjenerata e parë. Puna me shprehje të rregullta (ose gramatika). Ndër të tjera është ModSecurity. Ofruesi i sistemit studion llojet e sulmeve ndaj aplikacioneve dhe formon modele që përshkruajnë kërkesa legjitime dhe potencialisht të dëmshme. WAF-i përputhet me këto listat dhe vendos se çfarë të bëjë në situata të caktuara — të bllokojë trafik apo jo.
Një shembull i zbulimit në bazë të shprehjeve të rregullta është projekti që u përmend më parë me kod të hapur. Një shembull tjetër është , i cili gjithashtu është me kod të hapur. Sistemet me shprehje të rregullta kanë disa disavantazhe, veçanërisht, kur zbulohet një dobësi e re, administratori duhet të krijojë rregulla shtesë manualisht. Në rastin e një infrastrukture të madhe IT, rregullat mund të jenë mijëra. Të menaxhosh një numër kaq të madh shprehjesh të rregullta është mjaft e vështirë, përveç faktit se kontrolli i tyre mund të ulë performancën e rrjetit.
Po gjithashtu, shprehjet e rregullta kanë një nivel të lartë të rremeve pozitive. Lingüisti i njohur Noam Chomsky ofroi një klasifikim të gramatikave, duke i ndarë ato në katër nivele të kushtueshëm kompleksiteti. Sipas kësaj klasifikimi, me shprehje të rregullta mund të përshkruhen vetëm rregullat e firewall-it që nuk parashikojnë devijime nga modeli. Kjo do të thotë se ata që kryejnë sulme mund të 'mashtrojnë' lehtësisht WAF-in e gjeneratës së parë. Një nga metodat për ta luftuar këtë është të shtohen në kërkesat për aplikacione simbole speciale që nuk ndikojnë në logjikën e të dhënave të dëmshme, por përshtatin rregullin e nënshkrimit.

Gjenerata e dytë. Për të anashkaluar problemet që lidhen me performancën dhe saktësinë e WAF-it, janë zhvilluar firewall-a të aplikacioneve të gjeneratës së dytë. Aty janë shfaqur parserë që janë përgjegjës për identifikimin e tipeve strikte të sulmeve (në HTML, JS etj.). Këta parserë punojnë me tokenë të veçantë që përshkruajnë kërkesat (p.sh., variable, string, unknown, number). Sekuencat potencialisht të dëmshme të tokenëve nxirren në një listë të veçantë, me të cilën WAF-i kontrollohet rregullisht. Ky qasje u tregua për herë të parë në konferencën Black Hat 2012 në formën e bibliotekës C/C++ , e cila lejon identifikimin e injeksioneve SQL.
Në krahasim me WAF-in e gjeneratës së parë, parserët e specializuar mund të punojnë më shpejt. Megjithatë, ata nuk zgjidhin vështirësitë që lidhen me konfigurimin manual të sistemit kur shfaqen sulme të reja të dëmshme.

Gjenerata e tretë. Evolucioni në logjikën e zbulimit të gjeneratës së tretë qëndron në përdorimin e metodave të mësimit të makinerive, që ofron mundësinë më të afërt për gramatikën e zbulimit me gramatikën reale SQL/HTML/JS të sistemeve të mbrojtura. Kjo logjikë zbulimi është në gjendje të adaptohet me makinën Turing për të mbuluar gramatikat që numërohen rekurzivisht. Më parë, detyra e krijimit të një makine Turing të adaptueshme ka qenë e pazgjidhshme, derisa janë publikuar hulumtimet e para mbi makinat neuronale Turing.
Mësimi i makinave ofron një mundësi unike për të përshtatur çdo gramatikë për të mbuluar çdo lloj sulmi pa krijuar manualisht lista nënshkrimesh, siç kërkohej në zbulimin e brezit të parë, dhe pa zhvilluar tokenizues / parserë të rinj për lloje të reja sulmesh si Memcached, Redis, Cassandra, SSRF, ashtu siç kërkonte metodologjia e brezit të dytë.
Duke bashkuar të tre brezat e logjikës së zbulimit, ne mund të vizatojmë një diagram të ri, ku brezi i tretë i zbulimit është i paraqitur me një vijë të kuqe (shih. 3). Në këtë brez përfshihet një nga zgjidhjet që ne implementojmë në mjete cloud në bashkëpunim me 'Onsec', zhvilluesin e platformës për mbrojtjen adaptuese të aplikacioneve web dhe API-së Valarm.
Tani, logjika e zbulimit përdor feedback nga aplikacioni për vetë-rregullim. Në kuadër të mësimit të makinave, ky cikël feedback quhet 'forcim'. Në përgjithësi, ekzistojnë një ose më shumë lloje të këtij forcmimi:
- Analiza e sjelljes së përgjigjes së aplikacionit (pasive)
- Skanime / fuzzing (aktive)
- Skedarë raportesh / procedura kapëse / kurthe (post factum)
- Manuale (e përcaktuar nga supervizori)
Si rezultat, logjika e zbulimit të brezit të tretë gjithashtu zgjidh një çështje të rëndësishme të saktësisë. Tani është e mundur jo vetëm të shmangen njoftimet e rreme dhe mohim të rremë, por gjithashtu të zbulohet përdorimi i rezultateve të vërteta negative të pranueshme, siç është zbulimi i përdorimit të komponentit SQL në panelin e menaxhimit, ngarkimi i modeleve të faqeve web, kërkesat AJAX që lidhen me gabimet JavaScript dhe të tjera.

![]()

Më tej, do të shqyrtojmë mundësitë teknologjike të varianteve të ndryshme të implementimit të WAF.
Harduer, softuer apo cloud — çfarë të zgjedhim?
Një nga variantet e implementimit të firewall-ve të aplikacioneve është zgjidhja 'harduer'. Këto sisteme janë pajisje të specializuara kompjuterike që kompania i instalon lokal në qendrën e saj të të dhënave. Por në këtë rast, duhet të blihen pajisjet përkatëse dhe të paguhen integratorët për rregullimin dhe konfiguromin e saj (nëse kompania nuk ka departamentin e saj IT). Po ashtu, çdo pajisje bazohet në teknologji e vjetruar dhe mund të dështojë, prandaj klientët janë të detyruar të planifikojnë buxhet për rinovimin e pajisjeve.
Një variant tjetër i implementimit të WAF është zbatimi programor. Zgjidhja instalohet si një shtesë për ndonjë program të caktuar (p.sh., ModSecurity konfigurohet mbi Apache) dhe punon në të njëjtin server me të. Si rregull, zgjidhje të tilla mund të implementohen si në serverë fizikë ashtu edhe në cloud. Disavantazhi i tyre janë mundësitë e kufizuara të shkallëzueshmërisë dhe mbështetje nga furnizuesi.
Varianti i tretë është konfigurimi i WAF nga cloud. Zgjidhjet e tilla ofrohen nga ofruesit cloud si një shërbim me abone. Kompanitë nuk kanë nevojë të blejnë dhe konfigurojnë harduer të specializuar, këto detyra bien në krahët e ofruesit të shërbimit. Një pikë e rëndësishme është se WAF moderne në cloud nuk nënkupton migrimin e burimeve në platformën e ofruesit. Website-i mund të jetë i implementuar në çdo vend, madje edhe në ambientin e brendshëm.
Pse tani e më shumë po shikohet drejt WAF në cloud, do ta tregojmë më vonë.
Çfarë mund të bëjë WAF në cloud
Nga pikëpamja e mundësive teknologjike:
- Për azhurnimet është përgjegjës ofruesi. WAF ofrohet me abone, prandaj për aktualitetin e azhurnimeve dhe licencave kujdeset ofruesi i shërbimit. Azhurnimet përfshijnë jo vetëm softuerin, por edhe harduerin. Ofruesi përmirëson parkun server dhe merret me mirëmbajtjen e tij. Ai gjithashtu është përgjegjës për balancimin e ngarkesës dhe rezervimin. Nëse ndodh një dështim në punën e serverit WAF, trafiku menjëherë ridrejtohet në një makinë tjetër. Shpërndarja e arsyeshme e trafikut lejon shmangien e situatave kur firewalla kalon në modin fail open - nuk përballon ngarkesën dhe ndalon së filtruar kërkesat.
- Patch virtual. Patch virtuale kufizon qaccess në pjesët e kompromentuara të aplikacionit deri në mbylljen e dobësisë nga zhvilluesi. Si rezultat, klienti i ofruesit të shërbimeve cloud ka mundësinë të presë me qetësi deri sa furnizuesi i softuerit të publikojë "patch"-et zyrtare. Të bësh këtë sa më shpejt të jetë e mundur është një prioritet për furnizuesin e softuerit. Për shembull, në platformën "Valarm", një modul i veçantë programor është përgjegjës për patch virtual. Administratori mund të shtojë shprehje të rregullta të personalizuara për të bllokuar kërkesat e dëmshme. Sistemi lejon shënimin e disa kërkesave me flamurin "Të dhëna të Besueshme". Kështu, parametrat e tyre maskohen dhe ato nuk transmetohen nën asnjë rrethanë jashtë zonës operative të firewall-it.
- Skeneri i integruar i perimetrave dhe dobësive. Kjo lejon përcaktimin e vetë kufijve rrjetit të infrastrukturës IT, duke përdorur të dhënat e kërkesave DNS dhe protokollit WHOIS. Më pas, WAF automatikisht analizon shërbimet dhe shërbimet që funksionojnë brenda perimetrave (bën skanimin e porteve). Firewall-i është në gjendje të zbulojë të gjitha tipet e zakonshme të dobësive — SQLi, XSS, XXE etj. — dhe të identifikojë gabimet në konfigurimin e softuerit, si p.sh. aksesin e paautorizuar në repositorët Git dhe BitBucket dhe kërkesat anonime ndaj Elasticsearch, Redis, MongoDB.
- Sulmet monitorohen nga burimet e cloud. Zakonisht, ofruesit e cloud kanë kapacitete të mëdha llogaritëse. Kjo lejon analizimin e kërcënimeve me saktësi dhe shpejtësi të lartë. Në cloud vendoset një klaster i nyjeve filtruese, përmes të cilave kalon gjithë trafiku. Këto nyje bllokojnë sulmet ndaj aplikacioneve web dhe dërgojnë statistikat në Qendrën e Analizës. Ajo përdor algoritme të mësimit të makinerive për të përmirësuar rregullat e bllokimit për të gjitha aplikacionet e mbrojtura. Realizimi i një skeme të tillë është i ilustruar në fig. 4. Rregullat e tilla të adaptuara të sigurisë minimizojnë numrin e rremeve të zbulimit nga firewall-i.

Tani pak për veçoritë e WAF-ve cloud nga perspektiva organizative dhe menaxheriale:
- Kalimi në OpEx. Në rastin e WAF-ve cloud, kostoja e implementimit do të jetë zero, pasi të gjitha pajisjet dhe licencat janë paguar tashmë nga ofruesi, pagesa për shërbimin bëhet me anë të një abonimi.
- Plan të ndryshme tarifore. Përdoruesi i shërbimit të ruajtjes mund të lidhë ose çaktivizojë opsione shtesë me shpejtësi. Menaxhimi i funksioneve realizohet nga një panel i vetëm kontrolli, i cili gjithashtu është i siguruar. Qasja në të bëhet përmes HTTPS, plus ekziston një mekanizëm autentikimi me dy faktorë mbi bazën e protokollit TOTP (Algoritmi i Fjalëkalimeve të Aftësisë Njëherësh të Bazuar në Kohe).
- Lidhja përmes DNS. Mund të ndryshoni vetë DNS dhe të konfiguroni rrugëzimin në rrjet. Për të zgjidhur këto çështje, nuk është e nevojshme të angazhoni dhe trainoni specialistë të veçantë. Si rregull, me konfigurimin mund të ndihmojë mbështetje teknike nga ofruesi.
Teknologjitë WAF kanë kaluar një evolucion nga firewall-et e thjeshta me rregulla empirike në sisteme komplekse mbrojtjeje me algoritme të mësimit të makinerive. Aktualisht, firewall-et e aplikacioneve kanë një gamë të gjerë funksionesh, të cilat ishin të vështira për t’u realizuar në vitet '90. Në shumë aspekte, shfaqja e funksionaliteteve të reja është bërë e mundur falë teknologjive cloud. Zgjidhjet WAF dhe komponentët e tyre vazhdojnë të zhvillohen. Po ashtu si dhe sferat e tjera të sigurisë kibernetike.
Tekstin e përgatiti Aleksandër Karpuzikov, menaxher për zhvillimin e produkteve të sigurisë kibernetike të ofruesit të cloud #CloudMTS.
Burimi: habr.com
