it-swarm-eu.dev

Zabraňuje https člověku uprostřed útoků proxy serverem?

Existuje desktopový klient A připojující se k webové stránce W pomocí připojení https

A --> W

Nějak mezi A a W, je proxy G.

A --> G --> W
  • V takovém případě bude G schopen získat certifikát, který A dříve získal od W?
  • Pokud G může získat certifikát, znamená to, že G bude schopen dešifrovat data?
183
jojo

Jak funguje HTTPS?

HTTPS je založen na kryptografie veřejného/soukromého klíče. V zásadě to znamená, že existuje pár klíčů: Veřejný klíč se používá pro šifrování a tajný soukromý klíč je vyžadován pro dešifrování.

certifikát je v podstatě veřejný klíč se štítkem identifikujícím vlastníka.

Když se váš prohlížeč připojí k serveru HTTPS, server odpoví svým certifikátem. Prohlížeč zkontroluje, zda je certifikát platný:

  • informace o vlastníkovi musí odpovídat názvu serveru, který uživatel požadoval.
  • certifikát musí být podepsán důvěryhodnou certifikační autoritou.

Pokud není jedna z těchto podmínek splněna, je uživatel informován o problému.

Po ověření prohlížeč extrahuje veřejný klíč a použije jej k zašifrování některých informací před jejich odesláním na server. Server ji může dešifrovat, protože server má odpovídající soukromý klíč.

Jak HTTPS brání člověku uprostřed útoků?

V takovém případě bude G schopen získat certifikát, který A dříve získal od W?

Ano, certifikát je veřejný klíč se štítkem. Webový server ji odešle každému, kdo se k ní připojí.

Pokud G může získat certifikát, znamená to, že G bude schopen dešifrovat data?

Ne. Certifikát obsahuje veřejný klíč webového server. Škodlivý proxy server nevlastní odpovídající soukromý klíč. Pokud tedy proxy předá skutečný certifikát klientovi, nemůže dešifrovat informace, které klient odešle webovému serveru.

Proxy server se může pokusit falšovat certifikát a namísto toho poskytnout svůj vlastní veřejný klíč. To však zničí podpis certifikačních autorit. Prohlížeč upozorní na neplatný certifikát.

Existuje způsob, jak může proxy server číst HTTPS?

Pokud správce počítače spolupracuje, je možné, aby proxy server čichal https připojení. To je používáno v některých společnostech za účelem vyhledávání virů a vynucení pokynů přijatelného použití.

místní certifikační autorita je nastavena a správce sdělí vašemu prohlížeči, že tento CA je důvěryhodný. Proxy server používá tuto certifikační autoritu k podpisu svých padělaných certifikátů.

A samozřejmě, uživatel má sklon kliknout na bezpečnostní varování pryč.

209

Za předpokladu, že uživatelé neklikají prostřednictvím certifikačních upozornění (a za předpokladu, že používáte nemodifikovaného klienta), je odpověď: Ne, proxy nemůže dešifrovat data .

Podrobné vysvětlení toho, jak protokol HTTPS zabraňuje člověku ve středu dešifrovat váš provoz, naleznete v jakémkoli standardním prostředku na SSL/TLS, např.

P.S. Certifikát je veřejná data. Obsahuje veřejný klíč a název domény serveru, z nichž žádný není tajný. Pozorování certifikátu útočníkovi nepomůže dešifrovat data. (Ano, proxy může certifikát dodržovat, ale to je neškodné.)

20
D.W.

Z technologický blog Philipp C. Heckel s několika lehkými úpravami:

I když útočí na nešifrovaný přenos HTTP, lze provádět, aniž byste museli řešit certifikáty X.509 a certifikační autority (CA), připojení HTTPS šifrovaná SSL šifrují každý požadavek a odpověď mezi klientem a serverem end-to-end. A protože přenášená data jsou šifrována sdíleným tajemstvím, nemůže prostředník (nebo proxy) dešifrovat vyměněné datové pakety. Když klient otevře připojení SSL/TLS k zabezpečenému webovému serveru, ověří totožnost serveru kontrolou dvou podmínek: Nejprve zkontroluje, zda byl jeho certifikát podepsán certifikační autoritou známou klientovi. A za druhé, zajišťuje, aby se běžný název serveru (CN, také: Název hostitele) shodoval s názvem, ke kterému se připojuje. Pokud jsou splněny obě podmínky, klient předpokládá, že připojení je zabezpečené.

Aby server proxy mohl čichat do připojení, může fungovat jako certifikační autorita, ne však příliš důvěryhodná: Namísto vydávání certifikátů skutečným osobám nebo organizací proxy generuje certifikáty dynamicky na libovolné jméno hostitele, které je pro připojení potřeba. . Pokud se například klient chce připojit k https://www.facebook.com , proxy vygeneruje certifikát pro „www.facebook.com“ a podepíše jej vlastním CA. Za předpokladu, že klient důvěřuje této certifikační autoritě, jsou obě výše uvedené podmínky pravdivé (důvěryhodná certifikační autorita, stejná CN) - to znamená, že se klient domnívá, že proxy server je ve skutečnosti „www.facebook.com“. Následující obrázek ukazuje tok požadavků/odpovědí pro tento scénář. Tento mechanismus se nazývá transparentní HTTPS proxy.

enter image description here

Aby tento útok fungoval, musí být splněno několik podmínek:

  • Proxy server jako standardní brána (HTTP a HTTPS) : Pro proxy HTTP i HTTPS musí proxy server samozřejmě zachytit IP pakety - což znamená, že musí být někde podél cesty paketu. Nejjednodušší způsob, jak toho dosáhnout, je změnit výchozí bránu v klientském zařízení na adresu serveru proxy.
  • Trusted Proxy CA (pouze HTTPS) : Aby HTTPS proxy fungovalo, musí klient znát (a důvěřovat!) Proxy CA, tj. Klíč CA soubor musí být přidán do úložiště důvěryhodnosti klienta.

enter image description here

Pokud máte zájem o transparentní čichání obyčejných SSL soketů, můžete zkusit SSLsplit, průhledný proxy server TLS/SSL uprostřed. Existuje mnoho způsobů, jak zaútočit na SSL, ale nepotřebujete falešné SSL certifikáty, nepoctiví Certifikační autoritu (CA) nebo variace na bezpečnostní útoky Moxie Marlinspike, které jsou prostředníkem SSL útoků. Proč jít na všechny tyto problémy, když si právě můžete koupit proxy zachytávání SSL, jako je ProxySG společnosti Blue Coat Systems nebo jejich nedávno získané zařízení Netronome SSL, aby pro vás tuto práci provedlo?


Od Steven J. Vaughan-Nichols na ZDNet (výňatek):

Blue Coat, největší název v oblasti zachycování SSL, není zdaleka jediný, který nabízí zachycování SSL a prolomení v krabici. Až donedávna vám například společnost Microsoft prodala program Forefront Threat Management Gateway 2010, který by mohl tuto práci udělat také vám. S nasazeným proxy programem nebo zařízením pro zachycování SSL je to, co se skutečně děje:

enter image description here

Pokud vaše společnost správně nastavila server proxy, nebudete vědět, že je nic vypnuto, protože se dohodli na tom, aby interní certifikát SSL serveru proxy byl ve vašem počítači zaregistrován jako platný certifikát. Pokud ne, zobrazí se chybová zpráva, která, pokud kliknete na pro pokračování, přijme „falešný“ digitální certifikát. V obou případech získáte zabezpečené připojení k serveru proxy, získáte bezpečné připojení k vnějšímu serveru - a vše, co bylo odesláno prostřednictvím serveru proxy, lze číst jako prostý text. Jejda.

19
manav m-n

V závislosti na konfiguraci sítě, ve které se právě nacházíte, mohou správci moci zobrazit obsah připojení HTTPS (a možná VPN).

Je samozřejmě možné zachytit provoz v síti, ale obvyklým problémem je, že nemohou vydat platné certifikáty pro všechny weby, které navštěvujete, takže byste při každém přístupu na web HTTPS viděli mnoho upozornění na certifikát, pokud snaží se dešifrovat provoz a podívat se na něj.

Pokud však používáte stroj poskytovaný společností, mohli nainstalovat novou certifikační autoritu a poté ji použít k vytvoření certifikátů SSL pro weby, které navštěvujete, takže by se to nezobrazilo jako problém.

S věcí VPN by to mohlo být složitější, pokud VPN nepoužívá SSL, ale platí stejná teorie. Pokud přistupujete k internetu z počítače ve vlastnictví někoho jiného v síti, kterou ovládají, pravděpodobně budou mít přístup ke všem zadaným obsahům.

Pokud se chcete tomuto problému vyhnout, používal bych k přístupu k internetu zařízení, které vlastníte/ovládáte, takže byste měli být upozorněni, pokud dojde k zachycení SSL.

8
Rory McCune

Správci podnikových sítí správně implementují útok typu člověk-uprostřed uprostřed proti klientovi TLS pomocí své vlastní CA, aby mohli vidět, co opouští jejich síť. Pravděpodobně budou mít zařízení, které vytvoří certifikát za chodu, který je platný pro gmail.com, když navštívíte gmail.com. Důvodem, proč tak nečiní, je to, že nehrají Dr. Evil, takže mohou chránit před obchodním tajemstvím, která je z jejich budovy uvolněna prostřednictvím internetového připojení. Vážně, nedělejte své soukromé bankovnictví na pracovním počítači.

Pokud používáte softwarový produkt, který nepoužívá úložiště systémových certifikátů (například instanci OpenVPN), nemohou ne zachytit a dekódovat váš provoz, protože nedůvěřujete jejich CA. Stejného výsledku můžete dosáhnout například pomocí přenosné aplikace Firefox. A ve většině prohlížečů můžete zkontrolovat podrobnosti svého zabezpečeného připojení a zjistit, kdo je CA, abyste si byli jisti, kdo poslouchá nebo ne.

7
Bill McGonigle

Proxy může blokovat https a povolit pouze http z prohlížeče. Poté může zahájit vlastní https připojení a předat požadavky serveru.

Většina uživatelů si toho nevšimne.

HSTS má zastavit toto, ale to není široce používané.

4
Erik van Velzen

Terminace SSL nebo produkty proxy proxy SSL, jako je Bluecoat, musí být ve vaší síti a musí brát v úvahu náklady, zapojené instalační postupy a normální bezpečnostní zásady, které by měla mít každá organizace, která tyto produkty instaluje - hrozby škodlivého útočníka, který používá komerční koncový produkt SSL, je téměř nula. OTOH - důvěryhodný zasvěcenec s přístupem k NOC (síťové operační středisko) by ve skutečnosti mohl sledovat přenos ukončený SSL a zveřejňovat citlivé informace.

Jedná se o společný problém (opodstatněný nebo ne) pro společnosti implementující systémy DLP.

JAK SE ŘÍDIL VŠE TO, ŽE - v prostoru domácího bankovnictví je jiný vektor útoku, který nevyžaduje síťový proxy a je útokem piggback/shim v prohlížeči - protože DOM má přístup k čistému textovému provozu před tím, než zasáhne Trubka SSL - jedná se o vhodný útočný vektor a často se instaluje prostřednictvím rozšíření prohlížeče. Existuje vynikající Stackexchange článek o podložky - Může být vložka (aka polyfill) instalována v IE, FF nebo Chrome bez vědomí uživatele) a umí číst hesla zadaná uživatelem na přihlašovací stránce?

2
Danny Lieberman