OpenSSH obsahuje chybu umožňující ukrást klientské klíče

Petr Krčmář 15. 1. 2016

V OpenSSH byla objevena vážná bezpečnostní chyba, která umožňuje serveru vylákat z klienta jeho privátní šifrovací klíče. S jejich pomocí se pak za klienta dokáže vydávat a přihlásit se tak k dalším zdrojům. Pikantní přitom je, že chyba zneužívá nedokumentovanou funkci roaming, kterou servery neumí.

Bezpečnostní tým společnosti Qualys objevil vážnou zranitelnost v klientech OpenSSH. Dovoluje zlému či napadenému SSH serveru získat privátní šifrovací klíče používané k přihlašování. Zneužívá se při tom nedokumentovaná funkce „roaming“, která slouží k opětovnému navázání rozpadlého SSH spojení. Pikantní na této funkci je, že ji server vůbec neimplementuje a není tedy možné ji použít. Přesto je ve výchozím stavu zapnutá a kvůli chybě ohrožuje bezpečnost klientů.

Problém se přitom týká všech verzí, které funkci roaming obsahují – tedy od verze 5.4 (březen 2010) až po 7.1. Chyba byla 11. ledna nahlášena vývojářům OpenSSH, kteří během tří dnů vydali patch a poté teprve byl popis chyby odhalen veřejnosti. Celkem se jedná o dvě chyby označené jako CVE-2016–0777 a CVE-2016–0778, první z nich může za samotný únik dat, druhá dovoluje buffer overflow.

Odpovídající kód pro serverovou část nebyl nikdy vydán, ale klientská část je ve výchozím stavu zapnutá a může být zákeřným serverem zneužita k vylákání paměti obsahující privátní klíče, píše se v oficiálním oznámení.

Analytici z Qualsys tvrdí, že se jim skutečně podařilo z paměti dešifrovaný privátní klíč získat. Přestože ani Qualsys ani vývojáři OpenSSH nezaznamenali konkrétní případ zneužití této chyby, není vyloučeno, že si za šest let někdo chyby už všiml. Zmíněný buffer overflow je teoreticky také zneužitelný, ale vyžaduje zapnutí dvou konfiguračních voleb, které jsou ve výchozím stavu vypnuté: ProxyCommand a ForwardAgent (-A) nebo ForwardX11 (-X). Praktická zneužitelnost této chyby je tedy malá.

Ochrana proti ukradení privátních klíčů je poměrně snadná – stačí vypnout funkci roaming. Do souboru /etc/ssh/ssh_config stačí připsat volbu:

UseRoaming no

Vývojáři také už uvolnili patch, který se postupně dostane do distribucí (Debian, Ubuntu, RHEL a další už záplatu vydaly). Protože může být exploit zneužívaný v praxi, doporučují vývojáři klientům klíče vyměnit.

Chyba připomíná dva roky starý Heartbleed bug, který kvůli chybě v OpenSSL vzdáleně vylákat ze serveru důvěrné informace včetně privátních klíčů nebo hesel uživatelů. Současná chyba v SSH je ovšem méně závažná v tom, že vyžaduje aktivní pokus o připojení klienta. Na druhou stranu je ale získání privátního klíče často fatální, neboť umožňuje plný přístup k administraci mnoha různých serverů.

Přihlašování pomocí SSH klíčů je obecně považováno za výrazně bezpečnější variantu než prosté použití hesla. Namísto zadávání (a možného hádání) hesla je použit elektronický podpis vygenerovaný pomocí privátního klíče. Server má k dispozici veřejný klíč, kterým dokáže podepsanou zprávu ověřit a tím potvrdit identitu uživatele. Díky tomuto principu je možné používat jeden pár klíčů k přihlášení na mnoho serverů. Podmínkou bezpečnosti je, aby privátní klíč nikdy uživateli neunikl.

Našli jste v článku chybu?
Vitalia.cz: Galerie: Strouhanka ze starých rohlíků? Kdepak

Galerie: Strouhanka ze starých rohlíků? Kdepak

Měšec.cz: Ceny PHM v Evropě. Finty na úspory

Ceny PHM v Evropě. Finty na úspory

Měšec.cz: Kurzy platebních karet: vyplatí se platit? (TEST)

Kurzy platebních karet: vyplatí se platit? (TEST)

Měšec.cz: Investiční pasti. Děláte to, co ostatní, ale proděláváte

Investiční pasti. Děláte to, co ostatní, ale proděláváte

Vitalia.cz: Očkování je nutné, říká homeopatka

Očkování je nutné, říká homeopatka

Podnikatel.cz: OSA zdraží, ale taky přidá nový poplatek

OSA zdraží, ale taky přidá nový poplatek

Podnikatel.cz: Česká pošta vycouvala ze služby ČP Cloud

Česká pošta vycouvala ze služby ČP Cloud

Vitalia.cz: Vakcína Cervarix je oficiálně i pro chlapce

Vakcína Cervarix je oficiálně i pro chlapce

Měšec.cz: TEST: Vyzkoušeli jsme pražské taxikáře

TEST: Vyzkoušeli jsme pražské taxikáře

DigiZone.cz: Jetelín končí. Prima ho vyřadila

Jetelín končí. Prima ho vyřadila

Lupa.cz: Měřičům síly hesla se nedá věřit. Víte proč?

Měřičům síly hesla se nedá věřit. Víte proč?

120na80.cz: Kam umístit silikony?

Kam umístit silikony?

DigiZone.cz: Hodlá Markíza skončit v DVB-T?

Hodlá Markíza skončit v DVB-T?

Lupa.cz: Kdo vykrádá LinkedIn? Zjistit to má soud

Kdo vykrádá LinkedIn? Zjistit to má soud

Vitalia.cz: Musí moudrák opravdu ven?

Musí moudrák opravdu ven?

Root.cz: Xiaomi má vlastní notebook podobný Macu

Xiaomi má vlastní notebook podobný Macu

DigiZone.cz: AXN u FreeSatu měsíc zdarma

AXN u FreeSatu měsíc zdarma

Lupa.cz: Nechcete datacentrum? Jsou na prodej

Nechcete datacentrum? Jsou na prodej

Lupa.cz: Hackujete? Můžete mít problém sehnat práci

Hackujete? Můžete mít problém sehnat práci

Vitalia.cz: Ženy, které milují příliš, jsou neštěstí

Ženy, které milují příliš, jsou neštěstí