Věděli jste, že kybernetický útočník může vaším jménem provádět bankovní operace či online nákupy, aniž by získal přístup k vašim přihlašovacím údajům?
Soubory cookie jsou často spojovány se sledováním a dotěrnými reklamami na internetu. Avšak, tyto soubory také uchovávají informace o vašich vyhledávacích dotazech a umožňují vám navštěvovat webové stránky bez opakovaného zadávání uživatelského jména a hesla.
Pokud by se však soubor cookie dostal do rukou nepovolané osoby, může dojít k závažnému kybernetickému útoku, který se nazývá únos relace. Tento útok může ohrozit vaše citlivá data a způsobit značné škody dříve, než vůbec zjistíte, co se stalo.
Pojďme se podívat, co přesně únos relace je a jak se proti němu můžete chránit!
Co je to únos relace?
Únos relace nastává, když útočník zachytí a převezme aktivní relaci mezi uživatelem a serverem, ať už se jedná o webový server, Telnet připojení nebo jiné spojení využívající TCP protokol. Relace se zahajuje ve chvíli, kdy se přihlásíte na webovou stránku nebo do aplikace, například na sociální síť.
Relace trvá, dokud jste přihlášeni, prohlížíte svůj profil, diskutujete v diskuzích, a končí, když se ze systému odhlásíte. Jak ale server pozná, že každý váš požadavek přichází skutečně od vás?
Právě zde vstupují do hry soubory cookie. Po přihlášení odešlete své přihlašovací údaje na server. Ten ověří vaši totožnost a přidělí vám ID relace prostřednictvím souboru cookie, který je s vámi spojen po celou dobu trvání relace. Proto vás aplikace neodhlásí pokaždé, když si prohlédnete cizí profil a proč si internetový obchod pamatuje obsah vašeho košíku, i když obnovíte stránku.
Útočníci však mohou relaci unést, pokud využijí speciální techniky správy relací nebo získají váš soubor cookie. Mohou tak oklamat server a přesvědčit ho, že požadavky přicházejí od vás, tedy od oprávněného uživatele.
Fenomén únosu relace se stal známým počátkem 21. století, ale i dnes patří mezi nejčastější metody používané hackery.
Nedávným příkladem je skupina Lapsus$, která se letos dostala na seznam nejhledanějších FBI. Pro únos relace využívají infekci malwarem InfoStealer.
Podobně existuje GenesisStore, obchod pouze pro zvané, provozovaný stejnojmennou skupinou, která prodává kompromitovaná data souborů cookie a má ve svém seznamu více než 400 000 robotů.
Druhy zachycení relací
Únos relace se dá rozdělit do dvou hlavních kategorií podle toho, jaký je záměr útočníka.
Aktivní: Při aktivním útoku útočník převezme vaši relaci a získá kontrolu nad připojením mezi vámi a serverem. V závislosti na webu může hacker provádět online nákupy, měnit hesla nebo obnovovat účty. Častým příkladem aktivního útoku je útok hrubou silou, XSS nebo DDoS.
Zdroj: OSWAP
Pasivní: Při pasivním útoku útočník relaci nepřebírá ani nemění. Místo toho potichu monitoruje datový provoz mezi vaším zařízením a serverem a shromažďuje citlivé informace. K provádění pasivních útoků se obvykle využívá IP Spoofing a malware.
Zdroj: OSWAP
Jak funguje únos relace?
HTTP je bezstavový protokol, což znamená, že server si nepamatuje předchozí aktivity klienta. Každý nový požadavek HTTP je zpracován jako samostatná operace, server poskytuje stránky klientovi, aniž by si pamatoval předchozí požadavky.
Při prohlížení webových stránek si ale uvědomujeme, že aplikace vědí, kdo je klient (až příliš dobře!). Díky této „paměti“ serveru je možné vytvářet moderní zabezpečené zóny webů, online bankovnictví, webmailové služby atd.
Proto byl vytvořen doplněk, který mění bezstavový protokol HTTP na stavový: soubory cookie.
Stavové relace
Webové aplikace, které používají stavové relace, po přihlášení klienta uloží soubor cookie relace. To znamená, že se spoléhají na tento soubor cookie při sledování klienta. V souboru cookie je uložen unikátní kód, který umožňuje rozpoznání klienta, například:
SESSIONID=ACF3D35F216AAEFC
Kdokoliv s tímto unikátním ID relace by byl serverem považován za ověřeného klienta. Pokud by útočník získal tento identifikátor, jak je vidět na obrázku níže, mohl by zneužít relaci původně ověřenou pro oběť, a to buď odposloucháváním legitimní relace, nebo jejím úplným převzetím. Tento identifikátor se obvykle vkládá do URL adresy, do skrytého pole formuláře nebo do souborů cookie.
OSWAP
Bezstavové relace
S vývojem webu se objevila řešení pro správu „paměti“ serveru bez použití souborů cookie relace. V webové aplikaci, kde jsou frontend a backend dobře odděleny a komunikují pouze přes API, může být nejlepším řešením JWT (JSON Web Token), podepsaný token, který umožňuje frontendu využívat API poskytovaná backendem.
JWT se obvykle ukládá do sessionStorage prohlížeče, což je paměťová oblast, kterou klient používá, dokud nezavře kartu. Otevřením nové karty se tak vytvoří nová relace (na rozdíl od souborů cookie).
Krádež identifikačního tokenu klienta umožňuje ukrást relaci uživatele a provést tak útok únosu relace. Ale jak takový token ukrást?
V současnosti hackeři nejčastěji používají tyto metody:
#1. Session Side Jacking
Tato metoda využívá nezabezpečené sítě ke zjištění vašeho ID relace. Útočník používá sniffing (speciální software) a cílí obvykle na veřejné Wi-Fi sítě nebo webové stránky bez SSL certifikátu, které jsou známy špatným zabezpečením.
#2. Fixace relace
Oběť používá ID relace, které vytvořil útočník. Může se tak stát pomocí phishingového útoku (prostřednictvím škodlivého odkazu), který „zafixuje“ vaše ID relace.
#3. Hrubou silou
Jedná se o časově nejnáročnější a neefektivní metodu. Během tohoto útoku hacker neukradne vaše soubory cookie, ale zkouší všechny možné kombinace, aby uhodl vaše ID relace.
#4. XSS nebo Cross-site Scripting
Hacker zneužívá zranitelnosti webových stránek nebo aplikací, aby vložil škodlivý kód. Když uživatel navštíví takovou stránku, skript se aktivuje, ukradne soubory cookie uživatele a odešle je útočníkovi.
#5. Injekce malwaru
Škodlivý software může na vašem zařízení provádět neoprávněné akce, aby získal osobní údaje. Často se používá i pro zachycení souborů cookie a odeslání informací útočníkovi.
#6. Spoofing IP
Kybernetický zločinec změní zdrojovou IP adresu svého paketu, aby vypadalo, že pochází od vás. Díky falešné IP si webový server myslí, že jste to vy, a relace je unesena.
Jak zabránit únosu relace?
Možnost únosu relace závisí obvykle na zabezpečení webových stránek nebo aplikací, které používáte. Existují ale kroky, které můžete sami udělat pro svou ochranu:
- Vyhýbejte se veřejným Wi-Fi sítím, protože bezplatné hotspoty jsou ideální pro kybernetické zločince. Obvykle mají špatné zabezpečení a hackeři je mohou snadno napadnout. Navíc se na nich často shromažďuje velké množství potenciálních obětí, jejichž datový provoz je neustále ohrožován.
- Každá webová stránka, která nepoužívá SSL certifikát, vás vystavuje nebezpečí, protože nedokáže šifrovat provoz. Zkontrolujte, zda je web zabezpečený tak, že uvidíte malý visací zámek vedle URL adresy.
- Nainstalujte si do zařízení antimalwarovou aplikaci, která dokáže detekovat a chránit vaše zařízení před malwarem a jinými škodlivými programy, které mohou krást osobní údaje.
- Stahujte aplikace pouze z oficiálních obchodů s aplikacemi nebo webových stránek.
- Pokud obdržíte zprávu s výzvou ke kliknutí na neznámý odkaz, nedělejte to. Může se jednat o phishingový útok, který může infikovat vaše zařízení a ukrást vaše osobní údaje.
Uživatel může proti útoku Session Hijacking udělat jen málo. Nicméně, aplikace si může všimnout, že se k ní se stejným ID relace připojuje jiné zařízení. Na základě toho můžete navrhnout strategie zmírnění, jako jsou:
- Ke každé relaci přiřaďte nějaký technický otisk nebo charakteristiku připojeného zařízení, abyste mohli detekovat změny v registrovaných parametrech. Tyto informace by měly být uloženy v souboru cookie (u stavových relací) nebo v JWT (u bezstavových relací) a musí být absolutně šifrované.
- Pokud relace používá soubory cookie, zrušte soubor cookie s atributem HTTPOnly, aby byl v případě XSS útoku nedostupný.
- Nakonfigurujte systém detekce narušení (IDS), systém prevence narušení (IPS) nebo řešení monitorování sítě.
- Některé služby provádějí sekundární kontroly identity uživatele. Webový server může například s každým požadavkem kontrolovat, zda se IP adresa uživatele shoduje s tou poslední, která byla použita během relace. To však nezabrání útokům od někoho, kdo sdílí stejnou IP adresu, a mohlo by to být nepříjemné pro uživatele, jejichž IP adresa se může během prohlížení změnit.
- Případně mohou některé služby měnit hodnotu souboru cookie s každým požadavkem. To výrazně snižuje časové okno, ve kterém může útočník jednat, a usnadňuje identifikaci, zda došlo k útoku, ale může to způsobit další technické problémy.
- Používejte různá řešení vícefaktorové autentizace (MFA) pro každou uživatelskou relaci.
- Udržujte všechny systémy aktualizované pomocí nejnovějších oprav a bezpečnostních aktualizací.
FAQ
Jak se únos relace liší od session spoofing?
Únos relace zahrnuje předstírání, že jste uživatel, zatímco spoofing znamená nahrazení uživatele. V posledních letech někteří bezpečnostní analytici začali definovat spoofing jako typ únosu relace.
Závěrečná slova
Počet útoků typu session hijacking v posledních letech narostl. Proto je důležité těmto útokům porozumět a dodržovat preventivní opatření. Nicméně, s vývojem technologií se i útoky stávají sofistikovanějšími. Je proto nutné vytvářet aktivní strategie pro zmírnění dopadů zneužití relací.
Možná by vás také zajímalo, jakou cenu mají vaše data na dark webu.