Chyba zabezpečení v AMD SEV, která umožňuje určit šifrovací klíče

Vývojáři z týmu Google Cloud identifikován zranitelnost (CVE-2019-9836) v implementaci technologie AMD SEV (Secure Encrypted Virtualization), která umožňuje kompromitovat data chráněná pomocí této technologie. AMD SEV na hardwarové úrovni poskytuje transparentní šifrování paměti virtuálního stroje, ve kterém má k dešifrovaným datům přístup pouze aktuální hostující systém a ostatní virtuální stroje a hypervizor při pokusu o přístup k této paměti obdrží zašifrovanou sadu dat.

Zjištěný problém umožňuje zcela obnovit obsah soukromého klíče PDH, který je zpracováván na úrovni samostatného chráněného procesoru PSP (AMD Security Processor), který je pro hlavní OS nepřístupný.
S klíčem PDH může útočník obnovit klíč relace a tajnou sekvenci zadanou při vytváření virtuálního počítače a získat přístup k zašifrovaným datům.

Tato zranitelnost je způsobena chybami v implementaci šifrování eliptických křivek (ECC), které umožňuje Záchvat pro obnovení parametrů křivky. Během provádění příkazu pro spuštění chráněného virtuálního počítače by útočník mohl odeslat parametry křivky, které nevyhovují parametrům doporučeným NIST, což by vedlo k použití bodových hodnot nízkého řádu při operacích násobení s daty soukromého klíče.

Zabezpečení protokolu ECDH přímo záleží z objednávka vygenerovaný počáteční bod křivky, jejíž diskrétní logaritmus je velmi obtížný úkol. Během jednoho z inicializačních kroků prostředí AMD SEV používají výpočty soukromého klíče parametry přijaté od uživatele. Operace je v podstatě násobením dvou bodů, z nichž jeden odpovídá soukromému klíči. Pokud druhý bod odkazuje na prvočísla nižšího řádu, pak útočník může určit parametry prvního bodu (bity modulu použitého v operaci modulo) prohledáním všech možných hodnot. K určení soukromého klíče lze pak vybrané fragmenty prvočísel seskládat pomocí Čínská věta o zbytku.

Problém se týká serverových platforem AMD EPYC používajících firmware SEV až do verze 0.17 sestavení 11. AMD již publikováno Aktualizace firmwaru, která přidává blokování bodů, které nevyhovují křivce NIST. Současně zůstávají platné dříve vygenerované certifikáty pro klíče PDH, což umožňuje útočníkovi provést útok na migraci virtuálních strojů z prostředí chráněných před zranitelností do prostředí náchylných k problému. Zmíněna je také možnost provedení útoku pro vrácení verze firmwaru na staré zranitelné vydání, ale tato možnost zatím nebyla potvrzena.

Zdroj: opennet.ru

Přidat komentář