Minerva: řada zranitelných míst v implementacích ECDSA / EdDSA

Minerva

Vědci z Masarykovy univerzity odhalili informace důležitý o zranitelnosti v různé iImplementace algoritmu generování digitálních podpisů ECDSA / EdDSA, který umožňuje obnovit hodnotu soukromého klíče na základě analýzy úniků informací o jednotlivých bitech, které se objevují při použití analytických metod prostřednictvím kanálů třetích stran. Zranitelnosti mají kódové označení Minerva.

Nejslavnější projekty které ovlivňují navrhovaná metoda útoku je OpenJDK, OracleJDK (CVE-2019-2894) a knihovna libgcrypt (CVE-2019-13627) použitý v GnuPG. Problémy jsou také vhodné pro knihovny MatrixSSL, Crypto ++, wolfCrypt, eliptické, jsrsasign, Python-ECDSA, ruby_ecdsa, fastecdsa a také některé čipové karty Athena IDProtect, obrněná karta TecSec, SafeNet eToken 4300, platný S / A IDflex V.

Kromě zranitelných míst zmíněných v tuto chvíli nejsou ovlivněny OpenSSL, Botan, mbedTLS a BoringSSL. Mozilla NSS, LibreSSL, Nettle, BearSSL, cryptlib, OpenSSL v režimu FIPS. Kryptoměna Microsoft .NET, linuxové jádro libkcapi, Sodium a GnuTLS se teprve testují.

Našli jsme implementace, které během skalárního násobení v ECC ztrácejí bitovou délku skaláru. Tento únik se může zdát nepatrný, protože bitová délka obsahuje ve skaláru velmi malé množství informací. V případě generování podpisu ECDSA / EdDSA je však filtrování bitové délky náhodné nonce dostatečné pro úplné zotavení použitého soukromého klíče po pozorování několika stovek až několika tisíc podpisů ve známých zprávách, kvůli k aplikaci některých technik.

Věříme, že jsou ovlivněny všechny předchozí karty, protože sdílejí společnou komponentu ECDSA (modul FIPS 214), která je popsána jako komponenta Athena OS2 ECDSA755 ve Inside Secure AT90SC A1.0 (Firmware). Zranitelnost jsme otestovali pouze na kartě Athena IDProtect s daty CPLC a ATR

Problém je způsoben schopností určit jednotlivé bitové hodnoty během násobení skalárem během obchodování ECC. Nepřímé metody, jako je odhad zpoždění při provádění výpočtů, se používají k extrakci informací z bitů.

Útok vyžaduje neprivilegovaný přístup k hostiteli ve kterém je generován digitální podpis (vzdálený útok není vyloučen, ale je velmi komplikovaný a vyžaduje pro analýzu velké množství dat, proto jej lze považovat za nepravděpodobný).

Navzdory malé velikosti úniku je pro ECDSA definice dokonce několika bitů s informacemi o inicializačním vektoru (nonce) dostatečná k provedení útoku na postupné obnovení úplného soukromého klíče.

Podle autorů metody pro úspěšné obnovení klíče stačí analýza několika stovek až několika tisíc vygenerovaných digitálních podpisů pro zprávy známé útočníkovi. Například k určení soukromého klíče použitého na čipové kartě Athena IDProtect na základě čipu Inside Secure AT90SC bylo pomocí eliptické křivky secp256r1 analyzováno 11 tisíc digitálních podpisů. Celková doba útoku byla 30 minut.

Náš útočný kód a důkaz koncepce jsou inspirovány metodou Brumley & Tuveri.

Problém již byl vyřešen v libgcrypt 1.8.5 a wolfCrypt 4.1.0, jiné projekty dosud nevygenerovaly aktualizace. Opravu chyby zabezpečení v balíčku libgcrypt je také možné vysledovat v distribucích na těchto stránkách: Debian, ubuntu, RHEL, Fedora, openSUSE / SUSE, FreeBSD, Arch.

Vědci také testovali další karty a knihovny, z nichž následující nejsou zranitelné:

  • OpenSSL 1.1.1d
  • Skákací hrad 1.58
  • VyvrtáváníSSL 974f4dddf
  • libtomcrypt 1.18.2
  • Boot 2.11.0
  • Microsoft CNG
  • mbedTLS 2.16.0
  • Intel IPP-krypto

Karty

  • TUV ACOSJ 40K
  • Feitian A22CR
  • G&D SmartCafe 6.0
  • G&D SmartCafe 7.0
  • Infineon CJTOP 80K INF SLJ 52GLA080AL M8.4
  • Univerzální JCard Infineon SLE78
  • NXP JCOP31 v2.4.1
  • NXP JCOP CJ2A081
  • NXP JCOP v2.4.2 R2
  • NXP JCOP v2.4.2 R3
  • SIMOME TaiSYS Vault

Pokud se chcete dozvědět více o použitém útoku a zjištěných zranitelnostech, můžete tak učinit v následující odkaz. Nástroje použité k replikaci útoku jsou k dispozici ke stažení.


Zanechte svůj komentář

Vaše e-mailová adresa nebude zveřejněna. Povinné položky jsou označeny *

*

*

  1. Odpovědný za údaje: Miguel Ángel Gatón
  2. Účel údajů: Ovládací SPAM, správa komentářů.
  3. Legitimace: Váš souhlas
  4. Sdělování údajů: Údaje nebudou sděleny třetím osobám, s výjimkou zákonných povinností.
  5. Úložiště dat: Databáze hostovaná společností Occentus Networks (EU)
  6. Práva: Vaše údaje můžete kdykoli omezit, obnovit a odstranit.