Hlavní navigace

Vlákno názorů k článku Heartbleed Bug: jak se k chybě v OpenSSL staví české i světové firmy od anonym - Dle https://www.openssl.org/news/secadv_20140407.txt může odposlouchávající útočník získat data nejen ze...

  • Článek je starý, nové názory již nelze přidávat.
  • 11. 4. 2014 13:56

    bez přezdívky

    Dle https://www.openssl.org/news/secadv_20140407.txt
    může odposlouchávající útočník získat data nejen ze serveru, ale i klienta.

    Stále mi není jasný princip chyby. Dle jednoho z výše uvedených komentářů nejde prvoplánově o rozšifrování odposlouchávaného spojení, ale o vyžádání si dat z paměti serveru i klienta - což může/nemusí vést (až následně) k získání priv. klíče a k rozkódování komunikace.

    Mám tomu rozumět tak, že útočník může zasáhnout do komunikace KTERÉ NEROZUMÍ - zasláním nějakého TLS "příkazu" - a získat data z paměti ?

    A teď k titulku: co když server bude záplatován a klient nikoli ?
    Co může útočník získat ? Nic ? Nebo data z paměti klienta - čili typicky datový blok z prohlížeče (který např. může obsahovat priv. klíče certifikátů, hesla, ... ?

  • 11. 4. 2014 16:21

    Jirka (neregistrovaný)

    Takto blbě:

    > A jelikož zprávy TLS heartbeat jsou přenášeny uvnitř šifr. kanálu, tak (snad ?!) padá riziko odposlechu (útok MITM).

    Ne, každé spojení k danému serveru může útočník odposlouchávat (i když to není 100%). S nějakým šifrovaným kanálem chyba nijak nesouvisí. Navíc, pokud se útočníkovi podaří ukrást ze serveru certifikát a klíče, může klidně udělat MITM.

    > Tedy útok na klienta může vést "jen" server v rámci navázaného spojení.

    Ano v úzkém smyslu, že paměť klienta si může přečíst jen server. Nicméně je otázka, co by tam asi hledal - jak poznamenal někdo v příspěvku nade mnou. Většinu klientova tajemství stejně najdete buď ve spojení, nebo rovnou na serveru.

    Pokud to berete v širším smyslu, že Eva útočí na Frantu Pepu Jedničku a chce si přečíst jeho maily, opět nemáte pravdu

  • 11. 4. 2014 17:09

    Filip Jirsák

    V paměti internetového prohlížeče, kde je na jedné záložce otevřený webmail, na druhé elektronické bankovnictví a na třetí stránka se vtipným videem by se ten server s vtipným videem mohl dozvědět zajímavé věci. Naštěstí žádný běžně používaný webový prohlížeč OpenSSL nepoužívá, moderní prohlížeče navíc používají systém jedna záložka - jeden proces.

  • 15. 4. 2014 6:54

    kapetr (neregistrovaný)

    ad 1 - co jste chtěl říci touto podivuhodně nesmyslnou replikou je ve hvězdách.

    ad 2 - viz reakce kolegy

    Takže sorry - vy nemáte pravdu ;-)

  • 11. 4. 2014 15:18

    Jirka (neregistrovaný)

    Ne, chápete to úplně blbě.

    Jen v rychlosti jak to všechno funguje: Někdo se spojí se serverem a pošle mu zprávu (zašifrovanou) "Ahoj, já jsem Franta Pepa Jednička a mám heslo Sisi." Někdo jiný se taky připojí a pošle zprávu "Ahoj, já jsem Mařka Terezka a mám heslo František." No a útočník se taky připojí, jako by chtěl poslat "Ahoj, já jsem Eva a mám heslo Adam," ale to je úplně nedůležité, útok proběhne i bez toho.

    Dúležitý je, že tihle tři se sejdou u jednoho serveru, v jednom procesu - z výkonnostních důvodů je prakticky vyloučeno aby každý měl proces pro sebe (i v případě, že je možno připojit se na více serverů, se v jednom procesu obsluhuje víc klientů). V paměti tohohle procesu budou aspoň po nějakou dobu zprávy od klientů v plaintextu, aby podle nich mohl server odpovědět (odpovědi tam budou samozřejmě také). No a v případě, že Eva má štěstí (kterému může jít hodně naproti), tak heartbleed útokem získá ze serveru právě tyto zprávy s hesly Franty Pepy Jedničky a Mařky Terezky (prostě proto, že ty zprávy můžou být v paměti hned vedle sebe). To znamená, že může částečně odposlouchávat cizí spojení tím, že se dívá serveru pod ruce.

    Jinak přemýšlet o této chybě v souvislosti s šifrovanými kanály, SSL a kryptografií je spíš zavádějící. Ve skutečnosti je to obyčejná (bezpečnostní) programátorská chyba, kterých bylo, je, a bude neurékom. Ta závažnost je daná tím, že k ssl serveru se připojit a chybu tak využít může každý. Ale v principu je to podobný, jako bezpečnostní chyby např. v Apachi, PHP, ....

  • 11. 4. 2014 14:09

    bez přezdívky

    ... no sorry - teď jsem si teprve přečetl též odkazovaný http://www.root.cz/clanky/heartbleed-bug-vazna-zranitelnost-v-openssl/ , jež je vice méně odpovědí. Moje chyba.

    A jelikož zprávy TLS heartbeat jsou přenášeny uvnitř šifr. kanálu, tak (snad ?!) padá riziko odposlechu (útok MITM).
    Tedy útok na klienta může vést "jen" server v rámci navázaného spojení.

    Right ?

  • 11. 4. 2014 14:57

    Filip Jirsák

    Útok lze vést jen v rámci spojení, ale je k tomu příležitost velmi brzy při navazování spojení, takže třeba (pokud vím) i když server vyžaduje přihlášení klientským certifikátem, k útoku může dojít dřív, než je to přihlášení vyžádáno. Útok na klienta tedy může přijít jen od serveru, ke kterému je klient připojen.

    Útok pak spočívá v tom, že je možné z druhé strany přenést kus paměti procesu, ve kterém je SSL spojení navázáno. V té paměti může být ledacos – třeba komunikace z jiných spojení, ve které mohou být citlivé údaje. Z tohoto pohledu je to horší, než MITM útok – při MITM musí být útočník na trase mezi vámi a serverem, v případě heartbleed může být úplně kdekoli a tu komunikaci si přečte z paměti serveru. Jediné štěstí je, že si oblast paměti nemůže vybírat, ale dostane ten kus paměti, který zrovna sousedí s místem, kam se do paměti zapíše útočníkův požadavek.

    Jinak Firefox, Chrome ani Internet Explorer OpenSSL nepoužívají, takže tam nebezpečí nehrozí. Z rozšířenějších protokolů pak připadá v úvahu útok na poštovního klienta nebo VPN klienta – pořád ale záleží na tom, zda ten program používá OpenSSL v postižené verzi. A další věc je, že případný útočící poštovní nebo VPN server se z klienta nejspíš nedozví nic, co by mu klient dříve neposlal dobrovolně. Riziko by bylo jen při používání většího množství účtů, kdy by se server mohl dozvědět něco patřícího pod ostatní účty.

Upozorníme vás na články, které by vám neměly uniknout (maximálně 2x týdně).