Zranitelnost Openssl: Debian, související distribuce a každý (CVE-2008-0166)

V podstatě jde o nedostatečnou náhodnost při generování klíčů. Generované klíče jsou předvídatelné.

Použijí-li klienti CAcert openssl na zranitelné platformě ke generování svých privátních klíčů, které jsou pak použity ke generování CSR pro CAcert, projeví se tato zranitelnost:

Zranitelný klíč je použit

Následky

v serveru, např. HTTP(S), SMTP(TLS)

pasivní zachycení síťového provozu ze serveru lze dešifrovat

v kombinaci s přesměrováním provozu, jako je "falšování" (spoofing) DNS nebo přesměrování DNS, je možný útok typu "špion uprostřed" (man-in-the-middle)

jako klientský certifikát k identifikaci

pasivní zachycení síťového provozu od klienta lze dešifrovat

v kombinaci s přesměrováním provozu, jako je "falšování" (spoofing) DNS nebo přesměrování DNS, je možný útok typu "špion uprostřed" (man-in-the-middle)

Je-li dostupný klientův veřejný certifikát, například certifikáty S/MIME, pak může útočník (neoprávněně) vytvořit Váš privátní klíč a získat přístup ke službám, přístupným pomocí prokázání se klientským certifikátem.

Zašifrování S/MIME

lze dešifrovat bez privátního klíče

Podpisy pomocí S/MIME

libovolné dokumenty lze (neoprávněně podepsat

Máte-li jeden z těchto klíčů, postupujte podle instrukcí pro vygenerování certifikátu s cílem regenerovat klíč pro Vaši aplikaci (Debian Key-roller application guide nebo Debian Wiki SSLkeys). Jakmile je Vám vydán nový certifikát a stane se funkčním, odvolejte starý (zranitelný) certifikát.

Týká se to i mého klíče pro X509?

Dosud neexistuje automatizovaný soběstačný (self-contained) nástroj k určení, zda je Váš klíč zranitelný. Předložte svůj certifikát našemu serveru HashServer (který vyvíjíme). Podle výše Vašeho rizika vygenerujte nový klíč, máte-li podezření, že byl vygenerován na zranitelné platformě, čímž zabráníte potenciálnímu risku.

Pro správce systémů se zranitelnými klíči

Jestliže jste použili Linuxovou distribuci klonu Debian (která používá apt jako správce balíčků), přečtěte si zprávu o bezpečnosti Vámi instalované distribuce a hledejte tam radu (například DSA-1571, USN-612-1).

Řiďte se podle bezpečnostní rady z distribuce poslední vydané a Vámi instalované verze. Použijte nezranitelnou (imunní) verzi OpenSSL (nebo jiného produktu) k regeneraci certifikátů a odvolání všech certifikátů obsahujících zranitelné veřejné klíče a souvisejících zranitelných privátních klíčů.

Pro správce systémů nepoužívajících zranitelné klíče

Uvědomte si, že máte-li stále klíče z předchozí instalované zranitelné distribuce, pak jsou vaše klíče zranitelné.

Ověřujete-li klienta pomocí certifikátů odvozených ze zranitelných klíčů, můžete se stát podezřelými z neoprávněného vzdáleného přístupu. Akce, které budete potřebovat provést, jsou: nasazení mechanismu ke zmírnění účinku pokusů vedených hrubou silou, jako fail2ban. Serverové aplikace, které podporují OCSP, umožní této funkci zabránit neoprávněnému přístupu v případě, kdy uživatel odvolal svůj certifikát.

Pro uživatele, kteří si vygenerovali zranitelné klíče

Pro X.509: regenerujte své privátní klíče, znovu vytvořte žádost o podpis certifikátu (Certificate Signing Request - CSR), získejte nový certifikát, instalujte ho do aktivních služeb a odvolejte předešlé certifikáty. Nepoužijte pro aplikace funkci CAcert "renew" (obnovit), ta totiž obnoví pouze certifikát, nikoli klíč - ten zůstane beze změny! [Jiný klíč vygenerujete jen vytvořením nové žádosti (CSR).]

Pro všechny uživatele

Proti službám závislým na certifikátech je vedeno mnoho útoků typu "špion uprostřed" (man-in-the-middle), doporučujeme Vám aktivovat OCSP ve Vašem prohlížeči (Firefox, IE6 + XP) a v dalších klientských aplikacích pracujících na základě X.509.

Jak Vám CAcert pomáhá

Důsledky nenáhodnosti klíčů jsou značné. Protože všechny certifikační autority (CA) schraňují značné množství veřejných klíčů, potřebují zjistit, zda neexistují různí uživatelé, kteří mají identické veřejné klíče. CAcert vytvořil Hash Server jako veřejnou službu pro všechny uživatele a CA, aby bylo možno snáze detekovat nenáhodné klíče.

CAcert bude sledovat všechny záležitosti certifikátů, aby identifikoval slabé klíče a poradí uživatelům, mají-li klíče identické s jiným uživatelem.

Viz též...


DebianVulnerabilityHandling/CZ (last edited 2016-05-23 12:52:17 by AlesKastner)