Minerva: en række sårbarheder i implementeringer af ECDSA / EdDSA

Minerva

Forskere fra Masaryk University afslørede information vigtigt om sårbarheder i forskellige iImplementeringer af ECDSA / EdDSA algoritme til generering af digital signatur, der gør det muligt at gendanne værdien af ​​den private nøgle baseret på analysen af ​​informationslækager på individuelle bits, der vises, når der anvendes analysemetoder gennem tredjepartskanaler. Sårbarhederne har kodenavnet Minerva.

De mest berømte projekter der påvirker den foreslåede angrebsmetode er OpenJDK, OracleJDK (CVE-2019-2894) og biblioteket libgcrypt (CVE-2019-13627) brugt i GnuPG. Problemerne er også modtagelig for biblioteker MatrixSSL, Crypto ++, wolfCrypt, elliptisk, jsrsasign, Python-ECDSA, ruby_ecdsa, fastecdsa og også nogle smartkort Athena IDProtect, TecSec Armored Card, SafeNet eToken 4300, Valid S / A IDflex V.

Ud over de sårbarheder, der er nævnt i øjeblikket, påvirkes de ikke OpenSSL, Botan, mbedTLS og BoringSSL. Mozilla NSS, LibreSSL, Nettle, BearSSL, cryptlib, OpenSSL i FIPS-tilstand. Microsoft .NET-krypto, Linux-kerne libkcapi, Sodium og GnuTLS er endnu ikke testet.

Vi har fundet implementeringer, der mister bitlængden af ​​skalar under skalarmultiplikation i ECC. Denne lækage kan virke minimal, da bitlængden har en meget lille mængde information til stede i skalaren. I tilfælde af ECDSA / EdDSA-signaturgenerering er filtrering af bitlængden af ​​den tilfældige nonce tilstrækkelig til fuld gendannelse af den private nøgle, der er brugt efter at have observeret et par hundrede til et par tusinde signaturer i kendte meddelelser på grund af til anvendelsen af ​​nogle teknikker.

Vi mener, at alle ovenstående kort påvirkes, fordi de deler en fælles ECDSA-komponent (FIPS 214-modul), der er beskrevet som Athena OS2 ECDSA755-komponent i Inside Secure AT90SC A1.0 (firmware). Vi har kun testet sårbarheden på Athena IDProtect-kortet med CPLC- og ATR-data

Problemet skyldes evnen til at bestemme individuelle bitværdier under multiplikation med en skalar under ECC-handel. Indirekte metoder, såsom estimering af forsinkelse i udførelse af beregninger, bruges til at udtrække bitinformation.

Et angreb kræver ubegrænset adgang til værten hvor den digitale signatur genereres (et fjernangreb er ikke ekskluderet, men det er meget kompliceret og kræver en stor mængde data til analyse, derfor kan det betragtes som usandsynligt).

På trods af lækagens lille størrelse er definitionen af ​​selv et par bits med information om initialiseringsvektoren (nonce) for ECDSA nok til at udføre et angreb for sekventielt at gendanne den komplette private nøgle.

Ifølge forfatterne af metoden, for en vellykket nøglegendannelse er analyse af flere hundrede til flere tusinde genererede digitale signaturer tilstrækkelig for meddelelser, som angriberen er kendt af. For at bestemme den private nøgle, der blev brugt i Athena IDProtect-chipkortet baseret på Inside Secure AT90SC-chippen, ved hjælp af secp256r1 elliptisk kurve, blev 11 digitale signaturer analyseret. Den samlede angrebstid var 30 minutter.

Vores angrebskode og bevis for koncept er inspireret af Brumley & Tuveri-metoden.

Problemet er allerede rettet i libgcrypt 1.8.5 og wolfCrypt 4.1.0, andre projekter har endnu ikke genereret opdateringer. Det er også muligt at spore sårbarhedsrettelsen i libgcrypt-pakken i distributioner på disse sider: Debian, Ubuntu, RHEL, Fedora, openSUSE / SUSE, FreeBSD, Arch.

Forskerne testede også andre kort og biblioteker, hvoraf følgende ikke er sårbare:

  • OpenSSL 1.1.1d
  • Hoppeborg 1.58
  • BoringSSL 974f4dddf
  • libtomcrypt 1.18.2
  • Boot 2.11.0
  • Microsoft CNG
  • mbedTLS 2.16.0
  • Intel IPP-Crypto

Cards

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

Hvis du vil vide mere om det anvendte angreb og de fundne sårbarheder, kan du gøre det i følgende link. De værktøjer, der bruges til at replikere angrebet, kan downloades.


Efterlad din kommentar

Din e-mailadresse vil ikke blive offentliggjort. Obligatoriske felter er markeret med *

*

*

  1. Ansvarlig for dataene: Miguel Ángel Gatón
  2. Formålet med dataene: Control SPAM, management af kommentarer.
  3. Legitimering: Dit samtykke
  4. Kommunikation af dataene: Dataene vil ikke blive kommunikeret til tredjemand, undtagen ved juridisk forpligtelse.
  5. Datalagring: Database hostet af Occentus Networks (EU)
  6. Rettigheder: Du kan til enhver tid begrænse, gendanne og slette dine oplysninger.