Minerva: serangkaian kerentanan dalam implementasi ECDSA / EdDSA

Minerva

Peneliti Universitas Masaryk Mengungkap Informasi penting tentang kerentanan di berbagai iImplementasi algoritma pembuatan tanda tangan digital ECDSA / EdDSA, yang memungkinkan untuk memulihkan nilai kunci privat berdasarkan analisis kebocoran informasi pada setiap bit yang muncul saat menerapkan metode analisis melalui saluran pihak ketiga. Kerentanan tersebut diberi nama sandi Minerva.

Proyek paling terkenal pengaruh itu metode serangan yang diusulkan adalah OpenJDK, OracleJDK (CVE-2019-2894) dan perpustakaan Ligcrypt (CVE-2019-13627) digunakan di GnuPG. Masalahnya adalah juga rentan terhadap perpustakaan MatrixSSL, Crypto ++, wolfCrypt, elips, jsrsasign, Python-ECDSA, ruby_ecdsa, fastecdsa dan juga beberapa kartu pintar Athena IDProtect, TecSec Armored Card, SafeNet eToken 4300, S / A IDflex V. Valid

Selain kerentanan yang disebutkan saat ini, mereka tidak terpengaruh OpenSSL, Botan, mbedTLS, dan BoringSSL. Mozilla NSS, LibreSSL, Nettle, BearSSL, cryptlib, OpenSSL dalam mode FIPS. Microsoft .NET crypto, Linux kernel libkcapi, Sodium, dan GnuTLS belum diuji.

Kami telah menemukan implementasi yang kehilangan panjang bit skalar selama perkalian skalar di ECC. Kebocoran ini mungkin tampak kecil karena panjang bit memiliki sejumlah kecil informasi yang ada di skalar. Namun, dalam kasus pembuatan tanda tangan ECDSA / EdDSA, memfilter panjang bit nonce acak cukup untuk pemulihan penuh dari kunci pribadi yang digunakan setelah mengamati beberapa ratus hingga beberapa ribu tanda tangan dalam pesan yang dikenal, karena untuk penerapan beberapa teknik.

Kami yakin bahwa semua kartu sebelumnya terpengaruh karena memiliki komponen ECDSA yang sama (modul FIPS 214), yang dijelaskan sebagai Komponen Athena OS2 ECDSA755 di Inside Secure AT90SC A1.0 (Firmware). Kami telah menguji kerentanan hanya pada kartu IDProtect Athena dengan data CPLC dan ATR

Masalahnya disebabkan oleh kemampuan untuk menentukan nilai bit individu selama perkalian dengan skalar selama perdagangan ECC. Metode tidak langsung, seperti memperkirakan penundaan dalam melakukan perhitungan, digunakan untuk mengekstrak informasi bit.

Sebuah serangan membutuhkan akses tanpa hak istimewa ke host di mana tanda tangan digital dibuat (serangan jarak jauh tidak dikecualikan, tetapi sangat rumit dan membutuhkan sejumlah besar data untuk analisis, oleh karena itu dapat dianggap tidak mungkin).

Meskipun ukuran kebocorannya kecil, untuk ECDSA definisi bahkan beberapa bit dengan informasi tentang vektor inisialisasi (nonce) sudah cukup untuk melakukan serangan untuk mengembalikan kunci pribadi lengkap secara berurutan.

Menurut penulis metode, untuk pemulihan kunci yang sukses, analisis beberapa ratus hingga beberapa ribu tanda tangan digital yang dihasilkan sudah cukup untuk pesan yang diketahui penyerang. Misalnya, untuk menentukan private key yang digunakan di smart card Athena IDProtect berdasarkan chip Inside Secure AT90SC, menggunakan kurva elips secp256r1, 11 ribu tanda tangan digital dianalisis. Total waktu serangan adalah 30 menit.

Kode serangan dan bukti konsep kami terinspirasi oleh metode Brumley & Tuveri.

Masalahnya telah diperbaiki di libgcrypt 1.8.5 dan wolfCrypt 4.1.0, proyek lain belum menghasilkan pembaruan. Anda juga dapat melacak perbaikan kerentanan dalam paket libgcrypt dalam distribusi di halaman ini: Debian, Ubuntu, RHEL, Fedora, openSUSE / SUSE, FreeBSD, Arch.

Para peneliti juga menguji kartu dan pustaka lain, yang mana berikut ini tidak rentan:

  • OpenSSL 1.1.1d
  • Kastil Bouncy 1.58
  • MembosankanSSL 974f4dddf
  • libtomcrypt 1.18.2
  • Boot 2.11.0
  • Microsoft CNG
  • mbedTLS 2.16.0
  • Intel IPP-Kripto

Kartu

  • DHW 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
  • Vault TaiSYS SIMOME

Jika Anda ingin mengetahui lebih banyak tentang serangan yang digunakan dan kerentanan yang terdeteksi, Anda dapat melakukannya di link berikut. Alat yang digunakan untuk mereplikasi serangan tersedia untuk diunduh.


tinggalkan Komentar Anda

Alamat email Anda tidak akan dipublikasikan. Bidang yang harus diisi ditandai dengan *

*

*

  1. Penanggung jawab data: Miguel Ángel Gatón
  2. Tujuan data: Mengontrol SPAM, manajemen komentar.
  3. Legitimasi: Persetujuan Anda
  4. Komunikasi data: Data tidak akan dikomunikasikan kepada pihak ketiga kecuali dengan kewajiban hukum.
  5. Penyimpanan data: Basis data dihosting oleh Occentus Networks (UE)
  6. Hak: Anda dapat membatasi, memulihkan, dan menghapus informasi Anda kapan saja.