Často se říká, že připojení HTTPS SSL/TLS jsou šifrována a říká se, že je bezpečná, protože komunikace mezi serverem a mnou je šifrovaná (také zajišťuje ověřování serveru), takže pokud někdo čichá moje pakety, bude potřebovat ziliony let, aby se dešifrovaly, pokud použijí hrubou teorie teoreticky.
Předpokládejme, že jsem na veřejné wifi a existuje škodlivý uživatel na stejné wifi, který čichá každý paket. Nyní předpokládejme, že se pokouším získat přístup k účtu gmail pomocí této wifi. Můj prohlížeč provádí se serverem SSL/TLS handshake a získává klíče pro šifrování a dešifrování.
Pokud tento škodlivý uživatel čichal všechny mé příchozí a odchozí pakety. Může vypočítat stejné klíče a číst také můj šifrovaný provoz, nebo dokonce posílat šifrované zprávy na server v mém jménu?
HTTPS je zabezpečen před veřejnými hotspoty. Během nastavení TLS , bezpečnostní vrstvy používané HTTPS, se přenášejí pouze veřejný klíč a šifrované zprávy (a také ty jsou podepsány kořenovými certifikáty). Klient používá veřejný klíč k šifrování hlavního tajemství, které server poté dešifruje svým soukromým klíčem. Všechna data jsou šifrována funkcí, která používá hlavní tajná a pseudonáhodná čísla generovaná každou stranou.
Tím pádem,
Vaše připojení a data HTTPS jsou tedy bezpečná, pokud:
Krátká odpověď: záleží.
Samotný SSL/TLS není zranitelnější při veřejném wifi připojení, než při „běžném“ internetu. Byl navržen pro použití v otevřených kanálech.
Je však třeba zvážit několik dalších aspektů:
http://example.org/
a klikněte na odkaz Email
, který vás přesměruje na https://mail.example.org/
. Protože původní stránka HTTP není šifrována, může tento uživatel se zlými úmysly upravit váš provoz, což způsobí, že odkaz Email
nebude přesměrován na HTTPS, ale možná někde jinde. Pokud jste například klikli na odkaz Email
na domovské stránce example.org, všimli byste si, že se dostanete na stránku http://mail.exxxample.org/
? (jako příklad). Vy můžete, někdo jiný nemusí.Relace, která je zcela přes HTTPS, je poměrně bezpečná, protože všechny požadavky prohlížeče a stránky přenášené serverem jsou šifrovány.
Při přístupu přes HTTPS však mnoho webů provede pouze ověřovací krok přes HTTPS a poté po zbytek relace klesne zpět na HTTP. Vaše heslo je samo o sobě bezpečné, ale ID relace, které server používá k vaší identifikaci pro danou relaci, váš prohlížeč přenáší v jasné podobě. Tím se sníží zatížení webového serveru (protože šifrování/dešifrování je náročné na CPU), ale web je mnohem méně bezpečný. Gmail je bezpečný, protože používá HTTPS pro celou relaci, ale Facebook a mnoho dalších webů to ne.
Tímto způsobem jsou nástroje jako Firesheep schopny ukrást účty uživatelů, když útočník sdílí nešifrovanou bezdrátovou síť.
Můžete se před tímto útokem chránit buď pomocí VPN k šifrování všech dat relace, nebo pouze pomocí sítí, které mají silné šifrování pro každého uživatele, jako je WPA-PSK (WEP používá stejný klíč pro každého uživatele, a tak poskytnout ochranu před tímto útokem).
Protože se zdá, že odpovědi jsou všude (ano, ne, možná by měly být), dovolte mi nejprve zopakovat odpověď @ waiwai933: je bezpečná.
Konkrétně jste se zeptali: „Pokud tento nebezpečný uživatel čichal všechny mé příchozí a odchozí pakety. Může vypočítat stejné klíče a číst také můj šifrovaný provoz, nebo dokonce posílat šifrované zprávy na server svým jménem?“ Odpověď zní ne a ne. S poznámkou pod čarou.
Důvod, proč nedokáže vypočítat stejné klíče, se jeví paradoxně a ve skutečnosti to byl hlavní průlom v kryptografii, když byl poprvé publikován Diffie a Hellmanem. TLS používá protokol výměny klíčů, jako je Diffie-Hellman, ale sofistikovanější pro ochranu před útoky typu člověk-uprostřed. Protokol umožňuje dvěma lidem, kteří si nikdy nevyměnili informace, předtím, než vypočítají tajný klíč, který nikdo, kdo vidí všechny zprávy, nemůže spočítat.
Jakmile budete mít sdílený tajný klíč, můžete jej použít k šifrování provozu. Protože uživatel se zlými úmysly nezná klíč, nemůže šifrovat provoz, který vypadá, jako by pochází od vás.
Teď ty poznámky pod čarou.
Pokud se obáváte o bezpečné procházení některého webu přes nezabezpečenou síť, nejlepší kroky, které můžete podniknout k zajištění bezpečnosti, jsou:
Ujistěte se, že web používá protokol HTTPS, nikoli HTTP.
Ujistěte se, že web má platný certifikát. Neklikejte na varování. Nepřijímejte neplatné certifikáty.
Použijte HTTPS Everywhere nebo Force-TLS , abyste se ujistili, že používáte připojení HTTPS (tj. Šifrované SSL) pro vše, co souvisí s daným webem.
HTTPS je docela odolný vůči dešifrování z čichání paketů. Strana ověřování serveru však závisí na poněkud slabé metodě distribuce certifikátů CA a certifikační autority nedělají příliš mnoho, pokud jde o ověřování totožnosti. Před několika lety byl certifikát společnosti Microsoft vydán podvodníkovi . Viz Bruce Schneierův článek na toto téma - v praxi u obecných veřejných webů nemáme nic lepšího.
V praxi mají SSL i TLS problémy, ale vyskytují se kolem útoku typu Člověk ve středu. Příklad opětovného vyjednávání TLS MITM viz zde
Tento útok samozřejmě vyžaduje, aby byl útočník uprostřed komunikační cesty, což trochu omezuje hrozbu :-)
Úplně v praxi. Šifrování začíná u lidí root root (Verisign, Thawte atd.), A proto je vhodné pro nezabezpečené linky. AFAIK TLS nemá problém s člověkem uprostřed útoků, pouze jeho slabší/starší handshake, které mají tento problém.
Většina z nich zapomíná na aspekt uživatele a na to, jak by mohli tento počítač používat také na hotspotu. Většina lidí používá podobná hesla na jiných webech, může blog, ... atd. ty nemusí být stejně bezpečné jako HTTPS/SSL gmail, ke kterému se možná připojujete. Problém, který vidím ze bezpečnosti, většina lidí navštíví jiné weby a odhalí program pro odposlouchávání paketů s dostatkem informací, aby se dostal na některé z vašich účtů. Nejlepší je, jak je uvedeno, pokud používáte nešifrované bezdrátové připojení, doufejme, že máte vpn, ke kterému se můžete připojit poté, co přidá další vrstvu zabezpečení.
Pokud jde o zabezpečená připojení (ssl), je spojení zcela bezpečné. Pokud se používá s vědomím: