it-swarm-eu.dev

Mohu detekovat útok MITM?

Na základě této otázky zde: Jsou útoky „muž uprostřed“ extrémně vzácné?

Je možné odhalit útoky typu „člověk uprostřed“, a pokud ano, jak by se o tom jednalo?

Co když navíc k útoku dochází připojením k místní síti, jako jsou telefonní linky? Existuje nějaký způsob, jak to zjistit?

41
TigerCoding

Při procházení můžete kdykoli zkontrolovat, zda je certifikát, který vám web poskytuje, legitimní certifikační autorita nebo její falešný certifikát vydaný některou certifikační autoritou, kterému váš prohlížeč důvěřuje. Samozřejmě to není možné udělat ručně. Existují tedy nástroje, které vám to pomohou.

Cert Patrol a Perspektiva jsou pluginy prohlížeče, které to v podstatě dělají. Uchovávají si poznámky o tom, které doménové názvy jsou problémy, kterými certifikační autority (např. Google => Thwate atd.) A mnoho dalších parametrů souvisejících s certifikáty, a budou uživatele varovat, pokud se změní CA OR = pokud se veřejný klíč v certifikátu změní.

Zjevně se nejedná o detekci MITM, jsou to spíše preventivní schémata tím, že zjistí, že něco o certifikátu předloženém webovou stránkou není divné.

Při připojení k serveru SSH také vyžaduje otisk prstu serveru. Byl bych zděšen, pokud mi klient ssh předloží nový otisk prstu poté, co jsem se dříve připojil k serveru. Hostitelský klíč serveru se po prvním připojení uloží do souboru známých_hostitelů. Jediným důvodem, proč mě klient požaduje znovu otestovat otisk prstu, je to, že buď se server SSH restartoval/aktualizoval OR Jsem MITMed.

Absolutní paranoia vyžaduje, abyste zavolali správci systému na telefon a potvrdili otisk prstu tak, aby ho vyslovil klíčem.

27
CodeExpress

Dokážete detekovat útok MitM? Závisí na typu útočného systému a typu útoku.

Řekněme, že nějaký sofistikovaný útočník získal kontrolu nad routerem mezi vámi a internetem obecně a přesměroval váš provoz na falešné servery pod jejich kontrolou pro MitM (např. Zachycuje požadavky DNS a dává falešné odpovědi jejich serverům nebo používá překlad síťových adres) (NAT)).

Nyní řekněme, že jdete na http://www.facebook.com A přejdete na přihlašovací stránku http pod kontrolou útočníků. Útočník by mohl předvídat stránku, která napodobuje přihlašovací stránku facebooku, zachycuje vaše autentizační informace a používá tyto informace k připojení ke skutečnému facebooku a poté přesměruje obsah ze skutečného facebooku do vašeho prohlížeče. To lze provést téměř zdánlivě, s tou výjimkou, že skrytá akce po odeslání formuláře není https na úvodní přihlašovací stránce. Řekněme, že místo toho budou vaše nastavení vždy používat https pro Facebook a šli jste na https://www.facebook.com. Útok MitM by do prohlížeče odeslal červené vlajky, protože útočník nebude mít důvěryhodný certifikát pro facebook.com. Je pravda, že mnoho uživatelů by tato varování prohlížeče ignorovalo (jako k nim někdy dochází z neškodných důvodů, jako je vypršel klíč nebo intranetová stránka, která nepoužívá klíč s vlastním podpisem). To vše předpokládalo, že útočníkovi se navíc nepodařilo proniknout na facebook a získat jeho soukromé certifikáty OR ohrožovat CA (certifikační autoritu), aby bylo možné generovat falešné certifikáty, kterým většina webových prohlížečů důvěřovala OR dříve změnit webový prohlížeč, aby věřil/nevaroval na neplatné certifikáty.

Obecně s http je téměř nemožné detekovat útoky MitM, ale s https by váš prohlížeč měl automaticky detekovat a varovat vás, pokud útočník již nenarušil váš systém nebo systém na druhém konec (včetně CA jako systému na druhém konci).

Další příklad: ssh. Opět používá k ověření počítačů klíčenky soukromého veřejného serveru. Pokud tedy do svého pracovního stroje často vrazím ze svého domácího počítače, můj domácí počítač zaznamenal a důvěřoval veřejnému klíči svého pracovního stroje (který je uložen v souboru ~/.ssh/known_hosts). Pokud byl pokus o útok MitM při připojení z domácího počítače, ssh by si okamžitě všiml, že stroj MitM nemá soukromý klíč mého pracovního stroje a nedovolí mi přihlásit se (pokud jsem výslovně neodstranil veřejný klíč z mého known_hosts seznamu; což bych udělal jen tehdy, když řeknu, že jsem upgradoval na nový počítač nebo změnil klíč serveru). Znovu jsou útoky MitM přes ssh velmi snadno detekovatelné, pokud útočník buď nepronikl do mého pracovního stroje jako root a nezkopíroval soukromý klíč do svého hostitele OR, který se již vloupal do mého domácího počítače a nezměnil veřejný klíč pro můj pracovní stroj zaznamenaný v ~/.ssh/known_hosts OR při prvním připojení k serveru (a nemám server v mém known_hosts ani nerozpoznávám jeho otisk prstu) .

11
dr jimbob

Detekce schématu MitM je základním cílem každého ověřovacího protokolu. Aby to fungovalo, potřebujete:

  • Bezpečný způsob, jak získat ověřovací informace (certifikát serveru, sdílený klíč, ...)
  • Ověřte pravost zprávy vyměněné se serverem.

Server by měl udělat totéž s klientem. Se symetrickým schématem by to mělo být provedeno snadno. Při použití asymetrických protokolů, jako je SSL, musíte:

  • Získat certifikát serveru a být schopen jej správně ověřit
  • Komunikujte se serverem pomocí veřejného klíče vloženého do tohoto certifikátu, aby nikdo nemohl zprávu dešifrovat
  • Server a vy se dohodnete na sdíleném jedinečném tajemství, abyste pro budoucí připojení použili symetrické šifrování.
4
M'vy

Ne, nemůžete, existuje mnoho způsobů, jak toho dosáhnout.

Mnoho odpovědí vám řekne, jak zkontrolujte konkrétní útoky MITM, což věřím není to smysl.

MITM neznamená, že se útočník pokusí dešifrovat váš datový tok a nabídne vám jiný klíč/otisk prstu. Je to jen uzel mezi vámi a vaším cílovým hostitelem.

Existuje mnoho způsobů, jak se dostat do situace MITM, každému z nich může zabránit správná správa sítě, všechny uzly mezi vámi a vaším cílovým hostitelem by měly být zabezpečeny. Každá síť by měla být navržena tak, aby odolávala všem možným MITM, včetně zneužití směrovacích protokolů, spoofingu ARP, spoofingu DNS, jednoduše nainstalováním fyzického mostu atd.

Abychom dosáhli bezpečnosti, nechat se chytit útokem MITM by neměl záležet, nemůžete se spolehnout na důvěru a štěstí a nemůžete ovládat internet, musíte předpokládat, že jste v nepřátelském prostředí, pokud se neprokáže bezpečným řádným auditem. Pomocí zabezpečených protokolů, jako je TLS, SSH a případně IPSec, může být vaše síť bezpečnější, autentizovat a šifrovat data. V každém okamžiku je však vždy zranitelný a většinou pochází z nesprávné konfigurace nebo z chyby v samotném protokolu/implementaci.

Stručně řečeno, nedetekujte MITM, ale místo toho:

  • Zabezpečte svou LAN nebo požádejte někoho, aby to udělal
  • Nastavte protokoly zabezpečeného tunelování pro přístup k zabezpečeným vzdáleným sítím a systémům

Detekce MITM je možná, ale souvisí to s tím, co používáte, se zabezpečením portu pro Cisco IOS nebo jen pomocí SNORT v jakémkoli Unixovém boxu. Nemůžete získat vyčerpávající seznam, jen se shoduje s daným a kromě toho jsou útočníci vždycky natolik kreativní, aby našli něco, na co jste nepřemýšleli, takže se podívejte na moje výše uvedené rady.

3
Aki

Můžete zkontrolovat svoji tabulku ARP. Nebo se můžete podívat na dobrý web MITM TUTORIALs [ https://toschprod.wordpress.com/2012/03/04/mitm-8-countermeasures/] což vysvětluje co je člověk uprostřed a jak se jim vyhnout. Myslím, že čtení jeho tutoriálu vám dá skvělou představu o tom, co se děje, jak tomu zabránit a jak je detekovat.

0
noktec