Útoky typu Man-in-the-Middle (MITM): Co to je a jak se chránit
Útok typu man-in-the-middle, zkráceně MITM, nastává, když se škodlivý aktér vmísí do probíhající síťové komunikace nebo přenosu dat. Zločinec se v podstatě postaví doprostřed komunikačního kanálu a následně se vydává za legitimního účastníka konverzace.
V reálném světě se útočníci umísťují mezi odeslané požadavky a přijaté odpovědi. Uživatelé tak mají dojem, že komunikují přímo s cílovým serverem nebo webovou aplikací, jako je například Facebook, Twitter, online bankovnictví a další. Ve skutečnosti však své požadavky odesílají útočníkovi, který pak s bankou či aplikací komunikuje za ně.
Takový útočník má přístup k veškeré komunikaci, včetně všech odeslaných požadavků a přijatých odpovědí od cílového serveru. Navíc k monitorování celého průběhu konverzace může útočník i pozměňovat odeslané požadavky a přijaté odpovědi, odcizovat přihlašovací údaje, přesměrovávat uživatele na ovládaný server nebo provádět jiné kybernetické zločiny.
Obecně platí, že útočník může zachytit datový tok od kterékoliv strany v probíhající komunikaci. Následně může upravit data nebo odeslat škodlivé odkazy či odpovědi oběma legitimním účastníkům. Tento typ útoku může zůstat dlouhou dobu nezjištěn, až do doby, než dojde k závažným škodám.
Běžné metody útoků typu Man-in-the-Middle
Sniffing paketů: Útočník využívá různé nástroje k analýze síťových paketů na nízké úrovni. Sniffing mu umožňuje získat přístup k datovým paketům, ke kterým by jinak neměl oprávnění.
Vkládání paketů: Zločinci vkládají škodlivé pakety do komunikačních kanálů. Před vložením využívají sniffing k identifikaci, jak a kdy vložit škodlivé pakety. Po vložení se tyto pakety promísí s legitimními daty v komunikačním toku.
Únos relace: Většina webových aplikací při přihlašování vytvoří dočasný token relace, díky kterému uživatel nemusí neustále zadávat heslo pro každou stránku či požadavek. Bohužel, útočník pomocí sniffing nástrojů může tento token identifikovat a zneužít. Následně může odesílat požadavky, jako by byl legitimním uživatelem.
Odstranění SSL: Útočníci používají metodu odstraňování SSL k zachycení legitimních paketů, modifikaci požadavků založených na HTTPS a jejich přesměrování na nezabezpečené ekvivalenty HTTP. V důsledku toho hostitel začne odesílat nešifrované požadavky na server, čímž jsou citlivá data v textové podobě snadno odcizitelná.
Následky útoků MITM
Útoky MITM představují značné nebezpečí pro jakoukoli organizaci, což může vést k finančním ztrátám a poškození reputace.
Zločinci mohou získat a zneužít citlivé firemní informace. Například mohou odcizit přihlašovací údaje, jako jsou uživatelská jména a hesla, údaje o platebních kartách, které pak zneužijí k finančním transakcím nebo neoprávněným nákupům. Ukradené přihlašovací údaje mohou také využít k instalaci škodlivého softwaru nebo ke krádeži dalších citlivých informací, které mohou zneužít k vydírání společnosti.
Z tohoto důvodu je velmi důležité chránit uživatele a digitální systémy tak, aby se riziko útoku MITM snížilo na minimum.
Nástroje pro útoky MITM pro bezpečnostní týmy
Kromě použití spolehlivých bezpečnostních řešení a postupů je důležité používat nástroje, které umožní kontrolu systémů a identifikaci potenciálních slabin, které mohou útočníci využít. Zde uvádíme některé z nástrojů pro útoky HTTP MITM, které mohou bezpečnostní experti využít.
Hetty
Hetty je rychlý open-source HTTP toolkit, který nabízí pokročilé funkce pro bezpečnostní výzkumníky. Tento lehký nástroj s integrovaným webovým rozhraním Next.js obsahuje HTTP man-in-the-middle proxy.
Klíčové vlastnosti:
- Umožňuje fulltextové vyhledávání.
- Obsahuje modul pro odesílání ručních HTTP požadavků, buď na základě zachycených požadavků z proxy protokolu, nebo z nového požadavku.
- Modul pro automatické odesílání HTTP požadavků.
- Snadná instalace a uživatelsky přívětivé rozhraní.
- Umožňuje odesílat ručně vytvořené HTTP požadavky, případně kopírovat z proxy protokolu.
Bettercap
Bettercap je komplexní a škálovatelný nástroj pro síťový průzkum a útoky.
Toto snadno použitelné řešení poskytuje odborníkům z oblasti reverzního inženýrství, bezpečnostním expertům a týmům funkce pro testování sítí Wi-Fi, IP4, IP6, zařízení Bluetooth Low Energy (BLE) a bezdrátových HID zařízení. Dále tento nástroj nabízí funkce pro monitorování sítě, tvorbu falešných přístupových bodů, sledování hesel, DNS spoofing, zachycení handshake a další.
Klíčové vlastnosti:
- Výkonný vestavěný sniffer pro identifikaci ověřovacích dat a získávání přihlašovacích údajů.
- Výkonný a rozšiřitelný.
- Umožňuje aktivní i pasivní skenování IP hostitelů a testování na zranitelnosti MITM.
- Snadno použitelné a interaktivní webové rozhraní pro provádění útoků MITM, odposlouchávání přihlašovacích údajů, řízení HTTP provozu a další.
- Extrahuje všechna zachycená data (např. přihlašovací údaje POP, IMAP, SMTP a FTP, navštívené URL a HTTPS hostitele, HTTP cookies, odeslaná HTTP data) a ukládá je do externího souboru.
- Umožňuje manipulaci nebo úpravu TCP, HTTP a HTTPS provozu v reálném čase.
Proxy.py
Proxy.py je lehký open-source proxy server pro WebSockets, HTTP, HTTPS a HTTP2. Tento rychlý nástroj, dostupný v jediném python souboru, umožňuje výzkumníkům analyzovat webový provoz, včetně TLS šifrovaných aplikací s minimální spotřebou systémových zdrojů.
Klíčové vlastnosti:
- Rychlý a škálovatelný nástroj pro zvládání desítek tisíc připojení za sekundu.
- Programovatelné funkce, např. vestavěný webový server, proxy a přizpůsobení HTTP směrování.
- Lehká konstrukce, která spotřebuje 5-20 MB RAM. Využívá standardní python knihovny a nevyžaduje externí závislosti.
- Přizpůsobitelný řídicí panel, rozšiřitelný pomocí pluginů. Umožňuje kontrolovat, monitorovat a konfigurovat proxy.py za chodu.
- Bezpečný nástroj využívá TLS k zajištění end-to-end šifrování mezi proxy.py a klientem.
Mitmproxy
mitmproxy je open-source HTTPS proxy řešení.
Tento snadno instalovatelný nástroj funguje jako SSL man-in-the-middle HTTP proxy s konzolovým rozhraním, které umožňuje monitorovat a upravovat provoz za běhu. Nástroj založený na příkazovém řádku lze používat jako HTTP nebo HTTPS proxy pro zaznamenání veškerého síťového provozu, sledování uživatelských požadavků a jejich přehrávání. Mitmproxy zahrnuje sadu tří nástrojů: mitmproxy (konzolové rozhraní), mitmweb (webové rozhraní) a mitmdump (verze z příkazové řádky).
Klíčové vlastnosti:
- Interaktivní a spolehlivý nástroj pro analýzu a modifikaci HTTP provozu.
- Flexibilní, stabilní, spolehlivý, snadno instalovatelný a použitelný nástroj.
- Umožňuje zachycovat a upravovat HTTP a HTTPS požadavky a odpovědi za běhu.
- Zaznamenává konverzace HTTP na straně klienta i serveru a umožňuje jejich pozdější přehrávání a analýzu.
- Generuje SSL/TLS certifikáty pro zachycování provozu za běhu.
- Funkce reverzní proxy umožňuje přesměrovat síťový provoz na jiný server.
Burp Suite
Burp Suite je automatizovaný a škálovatelný nástroj pro skenování zranitelností, který je často využíván bezpečnostními experty. Umožňuje testovat webové aplikace a identifikovat slabá místa, která by mohly být zneužity k útokům MITM.
Pracuje s uživatelsky řízeným postupem, který poskytuje přímý náhled na cílovou aplikaci a její fungování. Burp Suite funguje jako webový proxy server, který je prostředníkem mezi webovým prohlížečem a cílovými servery. Díky tomu umožňuje zachycovat, analyzovat a upravovat provoz požadavků a odpovědí.
Klíčové vlastnosti:
- Zachycování a analýza neupraveného síťového provozu mezi webovým prohlížečem a serverem.
- Přerušení TLS připojení v HTTPS provozu a umožnění prohlížet a upravovat šifrovaná data.
- Volba mezi integrovaným prohlížečem Burp Suite nebo externím prohlížečem.
- Automatizované, rychlé a škálovatelné řešení pro skenování zranitelností, které umožňuje efektivnější a rychlejší testování webových aplikací a identifikaci širšího spektra zranitelností.
- Zobrazení jednotlivých zachycených HTTP požadavků a odpovědí.
- Možnost ruční kontroly zachyceného provozu.
Ettercap
Ettercap je open-source analyzátor síťového provozu a zachycovač paketů.
Tento komplexní nástroj pro útoky MITM umožňuje výzkumníkům rozkládat a analyzovat širokou škálu síťových protokolů a hostitelů. Je schopen zaznamenávat síťové pakety v LAN i v jiných prostředích. Dále dokáže detekovat a blokovat útoky typu man-in-the-middle.
Klíčové vlastnosti:
- Zachycování síťového provozu a přihlašovacích údajů, jako jsou hesla. Dokáže dešifrovat šifrovaná data a extrahovat přihlašovací údaje (uživatelská jména a hesla).
- Vhodný pro hloubkový sniffing paketů, testování, monitorování síťového provozu a filtrování obsahu v reálném čase.
- Podporuje aktivní i pasivní odposlech, analýzu síťových protokolů (včetně šifrovaných).
- Analyzuje topologii sítě a identifikuje nainstalované operační systémy.
- Uživatelsky přívětivé grafické rozhraní s interaktivními i neinteraktivními možnostmi ovládání.
- Využívá analytické techniky, jako je ARP spoofing, filtrování IP a MAC adres pro zachycení a analýzu provozu.
Prevence útoků MITM
Identifikace útoků MITM není jednoduchá, jelikož se odehrávají mimo uživatelskou kontrolu a jsou obtížně odhalitelné, protože se útočníci snaží budit dojem běžné komunikace. Existuje však několik bezpečnostních opatření, které mohou organizace využít k prevenci těchto útoků. Patří mezi ně:
- Zabezpečení internetového připojení v pracovních i domácích sítích, včetně použití efektivních bezpečnostních řešení a nástrojů na serverech a počítačích, spolehlivá ověřovací řešení.
- Vynucení silného šifrování WEP/WAP pro přístupové body.
- Zajištění toho, aby navštívené webové stránky byly zabezpečené a měly HTTPS v URL adrese.
- Neklikání na podezřelé e-mailové zprávy a odkazy.
- Vynucení HTTPS a deaktivace nezabezpečených protokolů TLS/SSL.
- Využívání virtuálních privátních sítí (VPN).
- Používání uvedených nástrojů a dalších řešení k identifikaci a řešení zranitelností MITM.