Retrospektiva
Rozsah, složení a struktura kybernetických hrozeb pro aplikace se rychle vyvíjejí. Po dlouhá léta měli uživatelé přístup k webovým aplikacím prostřednictvím internetu pomocí populárních webových prohlížečů. V každém okamžiku bylo nutné podporovat 2-5 webových prohlížečů a soubor standardů pro vývoj a testování webových aplikací byl dostatečně omezený. Například téměř všechny databáze byly vytvořeny pomocí SQL. Bohužel, po krátkém čase se hackeři naučili využívat webové aplikace ke krádeži, odstraňování nebo změně dat. Získali nelegální přístup a zneužili příležitosti aplikací pomocí různých technik, včetně podvodu uživatelů aplikací, injektování a vzdáleného spouštění kódu. Brzy se na trhu objevily komerční prostředky ochrany webových aplikací, nazývané Web Application Firewalls (WAF), a společnost reagovala vytvořením otevřeného projektu pro zajištění bezpečnosti webových aplikací, Open Web Application Security Project (OWASP), s cílem definovat a udržovat standardy a metodologie pro vývoj bezpečných aplikací.
Základní ochrana aplikací
je výchozím bodem pro zabezpečení aplikací a obsahuje seznam nejnebezpečnějších hrozeb a nesprávných konfigurací, které mohou vést k zranitelnostem aplikací, jakož i taktik detekce a odražení útoků. OWASP Top 10 je uznávaným měřítkem v průmyslu kybernetické bezpečnosti aplikací po celém světě a definuje základní seznam funkcí, které by měl mít systém ochrany webových aplikací (WAF).
Kromě toho by funkce WAF měly zohlednit i další běžné útoky na webové aplikace, včetně podvržení meziwebových žádostí (CSRF), clickjacking (podvodné přesměrování uživatelů), web scraping (scraping webu) a zahrnutí souborů (RFI/LFI).
Hrozby a úkoly zajištění bezpečnosti moderních aplikací
V současné době nejsou všechna aplikace implementována v síťové variantě. Existují cloudové aplikace, mobilní aplikace, API a v novějších architekturách dokonce i individuální programové funkce. Všechny tyto typy aplikací je třeba synchronizovat a řídit, neboť vytvářejí, mění a zpracovávají naše data. S vydáním nových technologií a paradigmat se objevují nové složitosti a úkoly ve všech fázích životního cyklu aplikací. To zahrnuje integraci vývoje a provozu (DevOps), kontejnery, Internet věcí (IoT), nástroje s otevřeným zdrojovým kódem, API a další.
Distribuované umístění aplikací a rozmanitost technologií vytváří složité a komplexní úkoly nejen pro specialisty na informační bezpečnost, ale také pro výrobce bezpečnostních řešení, kteří se nemohou spoléhat na standardní přístup. Ochranné prostředky aplikací musí zohledňovat jejich obchodní specifika, aby se zabránilo chybným aktivacím a narušení kvality služeb pro uživatele.
Konečným cílem hackerů je obvykle buď krádež dat, nebo narušení dostupnosti služeb. Útočníci také těží z technologické evoluce. Zaprvé, vývoj nových technologií vytváří více potenciálních mezer a zranitelností. Zadruhé, mají k dispozici více nástrojů a znalostí k obchvatu tradičních ochranných prostředků. To výrazně zvyšuje takzvanou 'útočnou plochu' a vystavuje organizace novým rizikům. Bezpečnostní politiky by se měly neustále měnit v souladu se změnami v technologiích a aplikacích.
Aplikace by měly být chráněny před neustále rostoucí rozmanitostí metod a zdrojů útoků a odražení automatických útoků by mělo probíhat v reálném čase na základě informovaných rozhodnutí. V důsledku toho se zvyšují operační náklady a manuální práce na pozadí oslabených pozic v oblasti bezpečnosti.
Úkol č. 1: Správa botů
Více než 60 % internetového provozu generují boti, z nichž polovina se týká 'špatného' provozu (podle údajů ). Organizace investují do zvyšování šířky pásma sítě, v podstatě poskytují fiktivní zatížení. Přesné oddělení mezi skutečným uživatelským provozem a botovým provozem, stejně jako mezi „dobrými“ boty (například vyhledávacími roboty a službami pro porovnávání cen) a „špatnými“ boty, může znamenat výrazné úspory nákladů a zlepšení kvality služeb pro uživatele.
Boti nemají v úmyslu usnadnit tuto úlohu, a mohou napodobovat chování skutečných uživatelů, obcházet CAPTCHA a další překážky. Navíc, v případě útoků s využitím dynamických IP adres se ochrana založená na filtrování podle IP stává neefektivní. Často se pro provádění bruteforce útoků, credential stuffing útoků, DDoS útoků a automatizovaných botových útoků používají nástroje s otevřeným zdrojovým kódem (například Phantom JS), které umí zpracovávat klientský JavaScript.
Pro efektivní řízení botového provozu je potřebná unikátní identifikace jeho zdroje (jako otisk prstu). V případě botového útoku vzniká mnoho záznamů a její otisk umožňuje odhalit podezřelou aktivitu a přiřadit body, na jejichž základě ochranný systém aplikací přijímá informované rozhodnutí – blokovat/povolit – s minimálním počtem falešně pozitivních výsledků.
Úkol č. 2: Ochrana API
Mnoho aplikací shromažďuje informace a data od služeb, se kterými spolupracují prostřednictvím API. Při přenosu citlivých dat prostřednictvím API více než 50 % organizací neprovádí ani kontrolu, ani ochranu API pro odhalení kybernetických útoků.
Příklady použití API:
- Integrace Internetu věcí (IoT)
- Mezi strojové interakce
- Serverless prostředí
- Mobilní aplikace
- Aplikace spravované událostmi
Zranitelnosti API jsou podobné zranitelnostem aplikací a zahrnují injekce, útoky na protokoly, manipulace s parametry, přesměrování a útoky botů. Vydělené API brány zajišťují kompatibilitu aplikací, které komunikují prostřednictvím API. Neposkytují však end-to-end zabezpečení aplikací, jak je možné zajistit pomocí WAF s potřebnými bezpečnostními nástroji, jako je analýza HTTP hlaviček, seznam řízení přístupu Layer 7 (ACL), analýza a ověřování JSON/XML payloadu a ochrana proti všem zranitelnostem z OWASP Top 10. Toho je dosaženo inspekcí klíčových hodnot API s využitím pozitivních a negativních modelů.
Úkol č. 3: Odmítnutí služby
Starý vektor útoků — odmítnutí služby (DoS) — pokračuje v prokazování své účinnosti při útocích na aplikace. Útočníci mají k dispozici celou řadu úspěšných technik, jak narušit provoz aplikací, včetně HTTP nebo HTTPS floodů, slabých a pomalých útoků ("low-and-slow", jako například SlowLoris, LOIC, Torshammer), útoků s využitím dynamických IP adres, přetečení zásobníku, bruteforce útoků a mnoha dalších. S rozvojem Internetu věcí a následným vznikem IoT botnetů se útoky na aplikace staly hlavním směrem DDoS útoků. Většina WAF s monitorováním stavu připojení dokáže odolávat pouze omezenému objemu zátěže. Nicméně, mohou inspektořit toky HTTP/S provozu a odebírat útočný provoz a škodlivá připojení. Jakmile je útok identifikován, nemá smysl tento provoz znovu propouštět. Vzhledem k omezené propustnosti WAF pro odražení útoků je potřeba další řešení na perimetru sítě pro automatické blokování následujících "špatných" paketů. Pro tuto scénář ochrany by obě řešení měla mít schopnost spolupracovat a vyměňovat si informace o útocích.

Obr. 1. Organizace komplexní ochrany sítě a aplikací na příkladu řešení Radware
Úkol č. 4: Nepřetržitá ochrana
Aplikace často podléhají změnám. Metodiky vývoje a implementace, jako je kontinuální aktualizace, znamenají, že modifikace probíhají bez účasti a kontroly člověka. V těchto dynamických podmínkách je obtížné udržet adekvátní bezpečnostní politiky bez vysokého počtu falešně pozitivních výsledků. Mobilní aplikace se aktualizují mnohem častěji než webové aplikace. Aplikace třetích stran se mohou změnit bez vašeho vědomí. Některé organizace se snaží získat větší kontrolu a vizualizaci, aby zůstaly informovány o potenciálních rizicích. To však není vždy dosažitelné, a spolehlivá ochrana aplikací by měla využívat možnosti strojového učení k zaznamenávání a vizuálnímu zobrazení dostupných zdrojů, analýze potenciálních hrozeb, vytváření a optimalizaci bezpečnostních politik v případě modifikace aplikací.
Závěry
Jak aplikace hrají stále důležitější roli v každodenním životě, stávají se hlavním cílem hackerů. Potenciální kořist pro útočníky a možné ztráty pro podniky jsou obrovské. Složitost úkolu zabezpečení aplikací nelze přeceňovat, vzhledem k počtu a variacím aplikací a hrozbám.
Naštěstí se nacházíme v takovém období, kdy nám může umělá inteligence přispět. Algoritmy založené na strojovém učení poskytují adaptivní ochranu v reálném čase před nejpokročilejšími kybernetickými hrozbami cílenými na aplikace. Také automaticky aktualizují bezpečnostní politiky k ochraně webových, mobilních a cloudových aplikací — stejně jako API — bez falešně pozitivních výsledků.
Je obtížné přesně předpovědět, jaké bude nové generace kyberhrozeb pro aplikace (možná také založené na strojovém učení). Ale organizace mohou určitě podniknout kroky k ochraně dat zákazníků, duševního vlastnictví a zajištění dostupnosti služeb s velkým přínosem pro podnikání.
Účinné přístupy a metody zajištění bezpečnosti aplikací, hlavní typy a vektory útoků, rizikové zóny a mezery v kybernetické ochraně webových aplikací, stejně jako světové zkušenosti a osvědčené postupy jsou představeny ve studii a zprávě Radware.”.
Zdroj: habr.com
