Přetečení vyrovnávací paměti v OpenSSL zneužito při ověřování certifikátů X.509

Byla zveřejněna opravná verze kryptografické knihovny OpenSSL 3.0.7, která opravuje dvě zranitelnosti. Oba problémy jsou způsobeny přetečením vyrovnávací paměti v ověřovacím kódu pole e-mailu v certifikátech X.509 a mohou potenciálně vést ke spuštění kódu při zpracování speciálně vytvořeného certifikátu. V době zveřejnění opravy nezaznamenali vývojáři OpenSSL žádné důkazy o přítomnosti funkčního exploitu, který by mohl vést ke spuštění kódu útočníka.

Navzdory skutečnosti, že předběžná zpráva o nové verzi zmiňovala přítomnost kritického problému, ve skutečnosti byl ve vydané aktualizaci stav zranitelnosti snížen na úroveň nebezpečné, nikoli však kritické zranitelnosti. V souladu s pravidly přijatými v projektu je míra nebezpečí snížena, pokud se problém projeví v atypických konfiguracích nebo pokud je nízká pravděpodobnost zneužití zranitelnosti v praxi.

V tomto případě byla úroveň závažnosti snížena, protože podrobná analýza zranitelnosti několika organizací dospěla k závěru, že schopnost spouštět kód během zneužití byla blokována mechanismy ochrany proti přetečení zásobníku používanými na mnoha platformách. Navíc rozvržení mřížky používané v některých distribucích Linuxu vede k tomu, že 4 bajty, které překračují hranice, jsou superponovány na další vyrovnávací paměť v zásobníku, která se ještě nepoužívá. Je však možné, že existují platformy, které lze zneužít ke spouštění kódu.

Zjištěné problémy:

  • CVE-2022-3602 – zranitelnost, původně prezentovaná jako kritická, vede k přetečení 4bajtové vyrovnávací paměti při kontrole pole se speciálně navrženou e-mailovou adresou v certifikátu X.509. V klientovi TLS lze tuto chybu zabezpečení zneužít při připojování k serveru ovládanému útočníkem. Na serveru TLS lze tuto chybu zabezpečení zneužít, pokud se použije ověřování klienta pomocí certifikátů. V tomto případě se zranitelnost objevuje ve fázi po ověření řetězce důvěry spojeného s certifikátem, tzn. Útok vyžaduje, aby certifikační autorita ověřila škodlivý certifikát útočníka.
  • CVE-2022-3786 je další vektor pro zneužití zranitelnosti CVE-2022-3602, která byla zjištěna během analýzy problému. Rozdíly se scvrkají na možnost přetečení vyrovnávací paměti v zásobníku libovolným počtem bajtů obsahujících „.“ (tj. útočník nemůže kontrolovat obsah přetečení a problém lze použít pouze ke zhroucení aplikace).

Chyby zabezpečení se objevují pouze ve větvi OpenSSL 3.0.x (chyba byla zavedena v konverzním kódu Unicode (punycode) přidaném do větve 3.0.x). Vydání OpenSSL 1.1.1, stejně jako rozvětvené knihovny OpenSSL LibreSSL a BoringSSL, nejsou tímto problémem ovlivněny. Zároveň byla vydána aktualizace OpenSSL 1.1.1s, která obsahuje pouze opravy nesouvisejících s bezpečností.

Větev OpenSSL 3.0 se používá v distribucích, jako je Ubuntu 22.04, CentOS Stream 9, RHEL 9, OpenMandriva 4.2, Gentoo, Fedora 36, ​​Debian Testing/Ustable. Uživatelům těchto systémů se doporučuje instalovat aktualizace co nejdříve (Debian, Ubuntu, RHEL, SUSE/openSUSE, Fedora, Arch). V SUSE Linux Enterprise 15 SP4 a openSUSE Leap 15.4 jsou balíčky s OpenSSL 3.0 dostupné volitelně, systémové balíčky využívají větev 1.1.1. Na větvích OpenSSL 1.x zůstávají Debian 11, Arch Linux, Void Linux, Ubuntu 20.04, Slackware, ALT Linux, RHEL 8, OpenWrt, Alpine Linux 3.16 a FreeBSD.

Zdroj: opennet.ru

Přidat komentář