Në materialin tonë të kaluar mbi temën e облака, ne , si të mbrohet IT burimet në облаке publike dhe pse antivirusët tradicionalë nuk janë gjithmonë të përshtatshëm për këto qëllime. Në këtë post, ne do të vazhdojmë temën e sigurisë së облака dhe do të flasim për evolucionin e WAF dhe se çfarë është më mirë të zgjidhet: hardware, software apo облаке.

Çfarë është WAF
Më shumë se 75% të sulmeve nga hakerat 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ë IT. Dobësitë e aplikacioneve web sjellin me vete rrezik të komprometimit 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ë faqen e internetit shërbejnë si një pikë hyrëse për kriminelët në rrjetin korporativ.
Web Application Firewall (WAF) është një ekran mbrojtës që bllokon sulmet ndaj aplikacioneve web: injeksione SQL, skriptim të ndërmjetëm, ekzekutimin e kodit në distancë, bruteforce dhe anashkalimin e autorizimit. Përfshin gjithashtu sulme që përdorin dobësi zero-day. Firewall-et e aplikacioneve ofrojnë mbrojtje duke monitoruar përmbajtjen e faqeve web, duke përfshirë HTML, DHTML dhe CSS, dhe duke filtruar kërkesat potencialisht të dëmshme përmes HTTP/HTTPS.
Cilat ishin zgjidhjet e para?
Përpjekjet e para për të krijuar një Web Application Firewall u ndërmorën që në fillim të viteve '90. Dihet për të paktën tre inxhinierë që punuan në këtë fushë. I pari ishte profesori i shkencave kompjuterike Gene Spafford nga Universiteti i Purdue. Ai përshkroi arkitekturën e firewall-it të aplikacioneve me proksi dhe në vitin 1991 e publikoi atë në librin e tij .
I dyti dhe i treti ishin specialistët e sigurisë IT William Cheswick dhe Marcus Ranum nga Bell Labs. Ata zhvilluan një nga prototipat e parë të firewall-eve të aplikacioneve. Për shpërndarjen e tij, kompania DEC punoi nën emrin SEAL (Secure External Access Link).
Por SEAL nuk ishte një zgjidhje e plotë WAF. Ai përbënte një firewall klasik rrjeti me funksionalitet të zgjeruar — duke bllokuar sulmet ndaj FTP dhe RSH. Për këtë arsye, zgjidhja e parë WAF sot konsiderohet produkti i kompanisë Perfecto Technologies (më vonë Sanctum). Në vitin 1999 ajo sistemi AppShield. Në atë kohë, Perfecto Technologies po zhvillonin zgjidhje IT për e-commerce, dhe audienca e synuar e produktit të tyre të ri ishin dyqanet online. AppShield mund të analizonte kërkesat HTTP dhe bllokonte sulmet bazuar në politikat e dinamike të sigurisë IT.
Afërsisht në të njëjtën kohë me AppShield (në vitin 2002) u shfaq WAF-i i parë me burim të hapur. Ai u bë . Ai u krijua me qëllim popularizimin e teknologjive WAF dhe mbështetet nga komuniteti IT deri tani (këtu është ). ModSecurity bllokon sulmet ndaj aplikacioneve duke u bazuar në një grup standard të shenjave (nënshkrimeve) — mjeteve për kontrollimin e kërkesave sipas modelit — .
Si rezultat, zhvilluesit arritën qëllimin e tyre — në treg filluan të shfaqen zgjidhje të reja WAF, duke përfshirë ato të ndërtuara mbi bazën e ModSecurity.
Tre gjenerata — tashmë histori
Pranohet se ekzistojnë tre gjenerata të sistemeve WAF, që janë evoluar me zhvillimin e teknologjive.
Gjenerata e parë. Punon me shenja regulatore (ose gramatika). Ajo përfshin ModSecurity. Ofruesi i sistemit studion llojet e sulmeve ndaj aplikacioneve dhe formon modele që përshkruajnë kërkesat legjitime dhe të mundshme të dëmshme. WAF krahason këto lista dhe vendos se çfarë të bëjë në situatën konkrete — të bllokojë trafikun apo jo.
Një shembull i zbulimit në bazë të shenjave është projekti i përmendur tashmë me burim të hapur. Një shembull tjetër është , i cili gjithashtu është me burim të hapur. Sistemet me shenja regulatore kanë disa disavantazhe, sidomos kur bëhet fjalë për zbulimin e një dobësie të re, administratorit i duhet të krijojë rregulla shtesë manualisht. Në rastin e një infrastrukture IT të madhe, mund të ketë disa mijëra rregulla. Menaxhimi i këtij numri të madh të shenjave është mjaft i komplikuar, për të mos përmendur se verifikimi i tyre mund të ulë performancën e rrjetit.
Gjithashtu, shenjat regulatore kanë një nivel të lartë të rreziqeve të rreme. Linguisti i njohur Noam Chomsky propozoi një klasifikim të gramatikave, në të cilin i ndau ato në katër nivele të kushtueshme kompleksiteti. Sipas këtij klasifikimi, shenjat regulatore mund të përshkruajnë vetëm rregullat e firewall-it që nuk parashikojnë devijime nga modeli. Kjo do të thotë se kriminelët mund të "mashtrojnë" lehtësisht WAF-in e gjeneratës së parë. Një nga metodat për të luftuar këtë është të shtoni simbole speciale në kërkesat ndaj aplikacioneve, të cilat nuk ndikojnë në logjikën e të dhënave të dëmshme, por prishin rregullin e nënshkrimit.

Gjeni i dytë. Për të zgjidhur problematikat e performancës dhe saktësisë të WAF, u zhvilluan firewalls të aplikacioneve të gjeneratës së dytë. Aty u introdukohen parserë që identifikojnë lloje të caktuar sulmesh (për HTML, JS etj.). Këta parserë punojnë me tokensa të veçantë që përshkruajnë kërkesat (p.sh., variable, string, unknown, number). Sekuencat potencialisht të dëmshme të tokenëve përfshihen në një listë të veçantë, me të cilën sistemi WAF raportohet rregullisht. Për herë të parë ky qasje u prezantua në konferencën Black Hat 2012 në formën e C/C++ , e cila lejon identifikimin e SQL injection.
Në krahasim me WAF të gjeneratës së parë, parserët e specializuar mund të punojnë më shpejt. Megjithatë, ata nuk e zgjidhën vështirësinë e konfigurimit manual të sistemit në rastin e sulmeve të reja të dëmshme.

Gjeni i tretë. Evolucioni në logjikën e identifikimit të gjeneratës së tretë qëndron në përdorimin e metodave të mësimit të makinerisë, duke afruar sa më pranë gramatikës së identifikimit me gramatikën reale të SQL/HTML/JS që mbrohen nga sistemet. Kjo logjikë identifikimi është në gjendje të adaptojë makinën e Turingut për të përfshirë gramatikat e enumeruara rekurzive. Ndërkohë, deri më tani detyra e krijimit të një makine Turingu të adaptueshme ishte e pazgjidhshme, derisa u publikuan hulumtimet e para mbi makinat neurale të Turingut.
Mësimi i makinerisë ofron një mundësi unike për të adaptuar çdo gramatikë për të mbuluar çdo lloj sulmesh pa krijuar listat e nënshkrimeve manualisht, siç kërkohej për identifikimin e gjeneratës së parë, dhe pa zhvillimin e tokenizerëve/parserëve të rinj për lloje të reja sulmesh, si Memcached injections, Redis, Cassandra, SSRF, sikurse kërkonte metodologjia e gjeneratës së dytë.
Duke bashkuar të tre gjeneratat e logjikës së identifikimit, ne mund të përshkruajmë një diagram të ri, ku gjenerata e tretë e identifikimit përfaqësohet me një kontur të kuq (shih figurën 3). Kjo gjeneratë përfshin një nga zgjidhjet që ne e implementojmë në re në bashkëpunim me "Onsec", zhvilluesin e platformës së mbrojtjes adaptuese të aplikacioneve web dhe API-së Valarm.
Tani logjika e identifikimit përdor reagimin nga aplikacioni për auto-konfigurim. Në kuadër të mësimit të makinerisë, ky cikël reagimi quhet "forcim". Në përgjithësi, ka një ose më shumë lloje të tillë forcimi:
- Analiza e sjelljes së përgjigjes nga aplikacioni (pasive)
- Skemimi/fazoni (aktive)
- Skedarët e raporteve/procedurat-e ndaluesve/kapësit (post faktum)
- Me dorë (e përcaktuar nga mbikëqyrësi)
Si rrjedhojë, logjika e identifikimit të gjeneratës së tretë gjithashtu zgjidh problemin e rëndësishëm të saktësisë. Tani është e mundur jo vetëm të shmangen alarminet false dhe humbjet false, por gjithashtu të identifikohen rezultatet e vërteta negative, siç janë identifikimi i përdorimit të elementit të komandës SQL në panelin e kontrollit, ngarkimi i modeleve të faqeve të internetit, kërkesat AJAX të lidhura me gabimet JavaScript dhe të tjera.

![]()

Më tej, do të shqyrtojmë mundësitë teknologjike të varianteve të ndryshme të implementimit të WAF.
Harduer, Software apo Re — çfarë të zgjedhim?
Një nga opsionet për implementimin e firewalls të aplikacioneve është zgjidhja "harduerike". 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 pajisje të veta dhe të paguhet një shumë për integratorët për konfigurimin dhe rregullimin e saj (nëse kompania nuk ka departamentin e saj IT). Gjithashtu, çdo pajisje plaket dhe bëhet e papërdorshme, kështu që klientët duhet të parashikojnë një buxhet për rinovimin e harduerit.
Një tjetër opsion për vendosjen e WAF është implementimi softuerik. Zgjidhja instalohet si një shtesë për ndonjë softuer (p.sh., ModSecurity konfigurohet mbi Apache) dhe punon në të njëjtin server me të. Zakonisht, këto zgjidhje mund të vendosen si në server fizik ashtu edhe në re. Disavantazhi i tyre është mundësitë e kufizuara të shkallëzimit dhe mbështetjes nga ana e ofruesit.
Opsioni i tretë është konfigurimi i WAF nga re. Këto zgjidhje ofrohen nga ofruesit e re si një shërbim me abonim. Kompanitë nuk duhet të blejnë dhe të konfigurojnë harduer të specializuar, këto detyra bien mbi supe të ofruesit të shërbimit. Një pikë e rëndësishme është se WAF-ja moderne në re nuk nënkupton migrimin e burimeve në platformën e ofruesit. Websajti mund të vendoset kudo, madje edhe on-premise.
Pse tani gjithnjë e më shumë po shikohet në drejtim të WAF në re, do të tregojmë më tej.
Çfarë mund të bëjë WAF në re
Nga pikëpamja e mundësive teknologjike:
- Për përditësimet përgjegjës është ofruesi. WAF ofrohet me abonim, kështu që ofruesi i shërbimit monitoron aktualitetin e përditësimeve dhe licencave. Përditësimet prekin jo vetëm softuerin, por edhe harduerin. Ofruesi përmirëson parkun e serverëve 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ë funksionimin e serverit WAF, trafiku menjëherë drejtohet në një makinë tjetër. Shpërndarja e arsyeshme e trafikëve lejon shmangien e situatave kur firewalli kalon në modalitetin fail open — nuk përballon ngarkesën dhe ndalon filtrimin e kërkesave.
- Patch virtual. Patch-at virtualë kufizojnë aksesin në pjesët e komprometuara të aplikacionit deri sa zhvilluesi të mbyllë vulnerabilitetin. Si rezultat, klienti i ofruesit të cloud-it merr mundësinë të presë në qetësi deri sa ofruesi i softuerit të publikojë "patch-at" zyrtarë. Të bëhet sa më shpejt — është prioritet për ofruesin e softuerit. Për shembull, në platformën "Valarm" patch-i virtual është përgjegjës për një modul të veçantë. Administratorët mund të shtojnë shprehje të zakonshme për të bllokuar kërkesat e dëmshme. Sistemi ofron mundësinë për të shënuar disa kërkesa me flamurin "Të dhëna konfidenciale". Atëherë parametrat e tyre maskohen dhe ato nuk dërgohen në asnjë rast jashtë zonës së punës së firewallit.
- Skener i integruar për kufijtë dhe vulnerabilitetet. Kjo lejon përcaktimin e vetë kufijve të rrjetit të infrastrukturës IT, duke përdorur të dhënat e kërkesave DNS dhe protokollin WHOIS. Pas kësaj, WAF analizon automatikisht shërbimet dhe shërbimet që funksionojnë brenda kufijve (bën skanimin e porteve). Firewalli është në gjendje të zbulojë të gjitha llojet e zakonshme të vulnerabiliteteve — SQLi, XSS, XXE etj. — dhe të identifikojë gabimet në konfigurimin e softuerit, për shembull, aksesin e paautorizuar në repository-t Git dhe BitBucket dhe kërkesat anonime në Elasticsearch, Redis, MongoDB.
- Sulmet monitorohen nga burimet e cloud-it. Si rregull, ofruesit e cloud-it kanë një volum të konsiderueshëm të kapacitetit kompjuterik. Kjo lejon analizën e kërcënimeve me saktësi dhe shpejtësi të lartë. Në cloud vendoset një grup nyjash filtrimi, përmes të cilave kalon gjithë trafiku. Këto nyje bllokojnë sulmet në aplikacione dhe dërgojnë statistikën në Qendrën e Analizës. Ajo përdor algoritme të mësimit të makinerive për të përditësuar rregullat e bllokimit për të gjitha aplikacionet që mbrohen. Realizimi i një skeme të tillë është i ilustruar në fig. 4. Rregullat e përshtatura të sigurisë minimizojnë numrin e falsifikimeve nga firewalli.

Tani pak mbi veçoritë e WAF-ve në cloud nga pikëpamja e organizatave dhe menaxhimit:
- Kalimi në OpEx. Në rastin e WAF-ve në cloud, kostoja e implementimit do të jetë zero, pasi të gjithë hardueri dhe licencat janë paguar tashmë nga ofruesi, ndërsa pagesa për shërbimin bëhet me abonim.
- Plani të ndryshëm. Përdoruesi i shërbimit të cloud-it mund të aktivizojë ose çaktivizojë opsione shtesë me shpejtësi. Menaxhimi i funksioneve realizohet nga një panel i vetëm menaxhimi, i cili është gjithashtu i mbrojtur. Aksesimi bëhet përmes HTTPS, plus ka një mekanizëm të dyfishtë autentikimi bazuar në protokollin TOTP (Algoritmi i Kodit të Përdorimit Njëherësh të Bazuar në Kohë).
- Konfigurimi përmes DNS. Mund të ndryshohet vetë DNS-ja dhe të konfigurohet rrugëzimi në rrjet. Për të zgjidhur këto detyra nuk është e nevojshme të trajnohen dhe të angazhohen specialistë të veçantë. Si rregull, mbështetje teknike nga ofruesi mund të ndihmojë në konfigurim.
Teknologjitë WAF kanë kaluar një evolucion nga muret e thjeshta të rrjetit me rregulla empirike në sisteme të kompletuara mbrojtjeje me algoritme të mësimit të makinerive. Tani, firewall-at e aplikacioneve kanë një gamë të gjerë funksionesh, të cilat ishin të vështira për t'u realizuar në vitet '90. Shumë nga funksionalitetet e reja u bënë të mundura falë teknologjive në cloud. Zgjidhjet WAF dhe komponentët e tyre vazhdojnë të zhvillohen. Ashtu si edhe fushat e tjera të sigurisë IT.
Teksti është përgatitur nga Aleksandër Karpuzikov, menaxher i zhvillimit të produkteve të sigurisë IT të ofruesit të cloud-it #CloudMTS.
Burimi: habr.com
