Minerva: vrsta ranljivosti pri izvedbah ECDSA / EdDSA

Minerva

Raziskovalci z univerze Masaryk so razkrili informacije Pomembno o ranljivosti v različni iIzvedbe algoritma za generiranje digitalnega podpisa ECDSA / EdDSA, ki omogoča obnovitev vrednosti zasebnega ključa na podlagi analize uhajanja informacij na posameznih bitih, ki se pojavijo pri uporabi analiznih metod po tujih kanalih. Ranljivosti imajo kodno ime Minerva.

Najbolj znani projekti ki vplivajo predlagane metode napada so OpenJDK, OracleJDK (CVE-2019-2894) in knjižnico libgcrypt (CVE-2019-13627), ki se uporablja v GnuPG. Težave so dovzetna tudi za knjižnice MatrixSSL, Crypto ++, wolfCrypt, eliptični, jsrsasign, Python-ECDSA, ruby_ecdsa, fastecdsa in tudi nekaj pametnih kartic Athena IDProtect, oklepna kartica TecSec, SafeNet eToken 4300, veljaven S / A IDflex V.

Poleg ranljivosti, ki so omenjene v tem trenutku, niso prizadete OpenSSL, Botan, mbedTLS in BoringSSL. Mozilla NSS, LibreSSL, Kopriva, BearSSL, cryptlib, OpenSSL v načinu FIPS. Microsoft .NET crypto, Linux jedro libkcapi, Sodium in GnuTLS še niso preizkušeni.

Ugotovili smo izvedbe, ki med množenjem skalarja v ECC izgubijo bitno dolžino skalarja. To puščanje se morda zdi majhno, saj ima bitna dolžina v skalarju zelo majhno količino informacij. Vendar pa je v primeru generiranja podpisov ECDSA / EdDSA filtriranje bitne dolžine naključnega nonceta dovolj za popolno obnovitev zasebnega ključa, uporabljenega po opazovanju nekaj sto do nekaj tisoč podpisov v znanih sporočilih, zaradi uporabi nekaterih tehnik.

Menimo, da to vpliva na vse prejšnje kartice, ker imajo skupno ECDSA komponento (modul FIPS 214), ki je opisana kot komponenta Athena OS2 ECDSA755 v Inside Secure AT90SC A1.0 (vdelana programska oprema). Ranljivost smo preizkusili samo na kartici Athena IDProtect s podatki CPLC in ATR

Težavo povzroča zmožnost določanja posameznih bitnih vrednosti med množenjem s skalarjem med trgovanjem z ECC. Za pridobivanje informacij iz bitov se uporabljajo posredne metode, na primer ocena zakasnitve pri izvajanju izračunov.

Za napad je potreben privilegiran dostop do gostitelja v katerem se ustvari digitalni podpis (oddaljeni napad ni izključen, vendar je zelo zapleten in za analizo zahteva veliko količino podatkov, zato ga lahko štejemo za malo verjetnega).

Kljub majhnosti puščanja je za ECDSA opredelitev celo nekaj bitov z informacijami o inicializacijskem vektorju (nonce) dovolj za izvedbo napada za zaporedno obnovo celotnega zasebnega ključa.

Po mnenju avtorjev metode za uspešno obnovo ključa zadostuje analiza več sto do nekaj tisoč ustvarjenih digitalnih podpisov za sporočila, ki jih napadalec pozna. Za določitev zasebnega ključa, ki se uporablja na pametni kartici Athena IDProtect na osnovi čipa Inside Secure AT90SC, je bila z uporabo eliptične krivulje secp256r1 analiziranih 11 tisoč digitalnih podpisov. Skupni čas napada je bil 30 minut.

Naša koda za napad in dokaz koncepta je navdihnjena z metodo Brumley & Tuveri.

Težava je bila že odpravljena v libgcrypt 1.8.5 in wolfCrypt 4.1.0, drugi projekti še niso ustvarili posodobitev. Popravku ranljivosti je mogoče slediti tudi v paketu libgcrypt v distribucijah na teh straneh: Debian, Ubuntu, RHEL, Fedora, openSUSE / SUSE, FreeBSD, Arch.

Raziskovalci so preizkusili tudi druge kartice in knjižnice, od katerih naslednje niso ranljive:

  • OpenSSL 1.1.1d
  • Poskočni grad 1.58
  • DolgočasenSSL 974f4dddf
  • libtomcrypt 1.18.2
  • Zagon 2.11.0
  • Microsoftov CNG
  • mbedTLS 2.16.0
  • Intel IPP-kripto

Kartice

  • STV ACOSJ 40K
  • Feitian A22CR
  • G&D SmartCafe 6.0
  • G&D SmartCafe 7.0
  • Infineon CJTOP 80K INF SLJ 52GLA080AL M8.4
  • Univerzalna JCard kartica Infineon SLE78
  • NXP JCOP31 v2.4.1
  • NXP JCOP CJ2A081
  • NXP JCOP v2.4.2 R2
  • NXP JCOP v2.4.2 R3
  • Trezor SIMOME TaiSYS

Če želite izvedeti več o uporabljenem napadu in odkritih ranljivostih, lahko to storite v naslednja povezava. Orodja za ponovitev napada so na voljo za prenos.


Pustite svoj komentar

Vaš e-naslov ne bo objavljen. Obvezna polja so označena z *

*

*

  1. Za podatke odgovoren: Miguel Ángel Gatón
  2. Namen podatkov: Nadzor neželene pošte, upravljanje komentarjev.
  3. Legitimacija: Vaše soglasje
  4. Sporočanje podatkov: Podatki se ne bodo posredovali tretjim osebam, razen po zakonski obveznosti.
  5. Shranjevanje podatkov: Zbirka podatkov, ki jo gosti Occentus Networks (EU)
  6. Pravice: Kadar koli lahko omejite, obnovite in izbrišete svoje podatke.