Nieuwe zijkanaalaanvaltechniek om ECDSA-sleutels te herstellen

Onderzoekers van de Universiteit. Masaryk onbedekt informatie over kwetsbaarheden in verschillende implementaties van het ECDSA/EdDSA-algoritme voor het maken van digitale handtekeningen, waarmee u de waarde van een privésleutel kunt herstellen op basis van een analyse van informatielekken over individuele bits die naar voren komen bij het gebruik van analysemethoden van derden. De kwetsbaarheden kregen de codenaam Minerva.

De bekendste projecten die getroffen worden door de voorgestelde aanvalsmethode zijn OpenJDK/OracleJDK (CVE-2019-2894) en de bibliotheek libgcrypt (CVE-2019-13627) gebruikt in GnuPG. Ook gevoelig voor het probleem MatrixSSL, Crypto ++, wolfCrypt, elliptisch, jsrsasign, python-ecdsa, ruby_ecdsa, fastecdsa, gemakkelijk-ecc en Athena IDProtect-smartcards. Niet getest, maar geldige S/A IDflex V-, SafeNet eToken 4300- en TecSec Armored Card-kaarten, die een standaard ECDSA-module gebruiken, worden ook als potentieel kwetsbaar verklaard.

Het probleem is al opgelost in de releases van libgcrypt 1.8.5 en wolfCrypt 4.1.0, de overige projecten hebben nog geen updates gegenereerd. U kunt de oplossing voor de kwetsbaarheid in het libgcrypt-pakket in distributies op deze pagina's volgen: Debian, Ubuntu, RHEL, Fedora, openSUSE / SUSE, FreeBSD, boog.

Kwetsbaarheden niet vatbaar OpenSSL, Botan, mbedTLS en BoringSSL. Nog niet getest Mozilla NSS, LibreSSL, Nettle, BearSSL, cryptlib, OpenSSL in FIPS-modus, Microsoft .NET crypto,
libkcapi uit de Linux-kernel, Sodium en GnuTLS.

Het probleem wordt veroorzaakt door de mogelijkheid om de waarden van individuele bits te bepalen tijdens scalaire vermenigvuldiging in elliptische curve-bewerkingen. Indirecte methoden, zoals het schatten van rekenvertragingen, worden gebruikt om bitinformatie te extraheren. Voor een aanval is onbevoorrechte toegang nodig tot de host waarop de digitale handtekening wordt gegenereerd (niet uitgesloten en een aanval op afstand, maar deze is erg ingewikkeld en vereist een grote hoeveelheid gegevens voor analyse, dus het kan als onwaarschijnlijk worden beschouwd). Voor laden is beschikbaar gereedschap dat voor de aanval wordt gebruikt.

Ondanks de onbeduidende omvang van het lek is voor ECDSA de detectie van zelfs maar een paar bits met informatie over de initialisatievector (nonce) voldoende om een ​​aanval uit te voeren om achtereenvolgens de volledige privésleutel te herstellen. Volgens de auteurs van de methode is, om met succes een sleutel te herstellen, een analyse van enkele honderden tot enkele duizenden digitale handtekeningen gegenereerd voor bij de aanvaller bekende berichten voldoende. Er werden bijvoorbeeld 90 digitale handtekeningen geanalyseerd met behulp van de elliptische curve secp256r1 om de privésleutel te bepalen die werd gebruikt op de Athena IDProtect-smartcard op basis van de Inside Secure AT11SC-chip. De totale aanvalstijd bedroeg 30 minuten.

Bron: opennet.ru

Voeg een reactie