Minerva: một loạt lỗ hổng trong triển khai ECDSA / EdDSA

Minerva

Các nhà nghiên cứu từ Đại học Masaryk tiết lộ thông tin quan trọng về các lỗ hổng trong tôi khác nhauTriển khai thuật toán tạo chữ ký số ECDSA / EdDSA, điều đó cho phép khôi phục giá trị của khóa riêng dựa trên phân tích rò rỉ thông tin trên các bit riêng lẻ xuất hiện khi áp dụng phương pháp phân tích thông qua các kênh của bên thứ ba. Các lỗ hổng có tên mã là Minerva.

Các dự án nổi tiếng nhất co ảnh hưởng đên phương pháp tấn công được đề xuất là OpenJDK, OracleJDK (CVE-2019-2894) và thư viện libgcrypt (CVE-2019-13627) được sử dụng trong GnuPG. Các vấn đề là cũng dễ bị ảnh hưởng cho các thư viện MatrixSSL, Crypto ++, wolfCrypt, elip, jsrsasign, Python-ECDSA, ruby_ecdsa, fastecdsa và một số thẻ thông minh Athena IDProtect, Thẻ bọc thép TecSec, SafeNet eToken 4300, S / A IDflex V hợp lệ.

Ngoài các lỗ hổng được đề cập tại thời điểm này, chúng không bị ảnh hưởng OpenSSL, Botan, mbedTLS và BoringSSL. Mozilla NSS, LibreSSL, Nettle, BearSSL, cryptlib, OpenSSL ở chế độ FIPS. Microsoft .NET crypto, Linux kernel libkcapi, Sodium và GnuTLS vẫn chưa được thử nghiệm.

Chúng tôi đã tìm thấy các triển khai làm mất độ dài bit của vô hướng trong quá trình nhân vô hướng trong ECC. Sự rò rỉ này có vẻ rất nhỏ vì độ dài bit có một lượng rất nhỏ thông tin hiện diện trong vô hướng. Tuy nhiên, trong trường hợp tạo chữ ký ECDSA / EdDSA, việc lọc độ dài bit của nonce ngẫu nhiên là đủ để khôi phục đầy đủ khóa cá nhân được sử dụng sau khi quan sát vài trăm đến vài nghìn chữ ký trong các thư đã biết, do ứng dụng của một số kỹ thuật.

Chúng tôi tin rằng tất cả các thẻ trước đó đều bị ảnh hưởng vì chúng chia sẻ một thành phần ECDSA chung (mô-đun FIPS 214), được mô tả là Thành phần Athena OS2 ECDSA755 trong Inside Secure AT90SC A1.0 (Phần mềm cơ sở). Chúng tôi đã kiểm tra lỗ hổng bảo mật chỉ trên thẻ Athena IDProtect với dữ liệu CPLC và ATR

Vấn đề là do khả năng xác định các giá trị bit riêng lẻ trong quá trình nhân với một đại lượng trong giao dịch ECC. Các phương pháp gián tiếp, chẳng hạn như ước tính độ trễ trong việc thực hiện các phép tính, được sử dụng để trích xuất thông tin về bit.

Một cuộc tấn công yêu cầu quyền truy cập không có đặc quyền vào máy chủ trong đó chữ ký điện tử được tạo ra (không loại trừ một cuộc tấn công từ xa, nhưng nó rất phức tạp và cần một lượng lớn dữ liệu để phân tích, do đó có thể coi là khó xảy ra).

Mặc dù kích thước rò rỉ nhỏ, đối với ECDSA, định nghĩa chỉ một vài bit với thông tin về vectơ khởi tạo (nonce) là đủ để thực hiện một cuộc tấn công nhằm khôi phục tuần tự khóa riêng tư hoàn chỉnh.

Theo các tác giả của phương pháp, để khôi phục khóa thành công, phân tích vài trăm đến vài nghìn chữ ký điện tử được tạo là đủ cho các tin nhắn mà kẻ tấn công biết. Ví dụ, để xác định khóa cá nhân được sử dụng trong thẻ thông minh Athena IDProtect dựa trên chip Inside Secure AT90SC, sử dụng đường cong elliptic secp256r1, 11 nghìn chữ ký số đã được phân tích. Tổng thời gian tấn công là 30 phút.

Mã tấn công và khái niệm bằng chứng của chúng tôi được lấy cảm hứng từ phương pháp Brumley & Tuveri.

Sự cố đã được khắc phục trong libgcrypt 1.8.5 và wolfCrypt 4.1.0, các dự án khác chưa tạo bản cập nhật. Cũng có thể theo dõi bản sửa lỗi lỗ hổng trong gói libgcrypt trong các bản phân phối trên các trang này: Debian, Ubuntu, RHEL, Fedora, openSUSE / SUSE, FreeBSD, Vòm.

Các nhà nghiên cứu cũng đã kiểm tra các thẻ và thư viện khác, trong đó những thẻ và thư viện sau đây không dễ bị tấn công:

  • OpenSSL 1.1.1d
  • Lâu đài Bouncy 1.58
  • BoringSSL 974f4dddf
  • libtomcrypt 1.18.2
  • Khởi động 2.11.0
  • Microsoft CNG
  • mbedTLS 2.16.0
  • Intel IPP-Crypto

Thẻ

  • DHW ACOSJ 40K
  • Phi Thiên A22CR
  • G&D SmartCafe 6.0
  • G&D SmartCafe 7.0
  • Infineon CJTOP 80K INF SLJ 52GLA080AL M8.4
  • Thẻ JCard đa năng Infineon SLE78
  • NXP JOP31 v2.4.1
  • NXP JOP CJ2A081
  • NXP JOP v2.4.2 R2
  • NXP JOP v2.4.2 R3
  • SIMOME TaiSYS Vault

Nếu bạn muốn biết thêm về cuộc tấn công được sử dụng và các lỗ hổng được phát hiện, bạn có thể làm như vậy trong liên kết theo dõi. Các công cụ được sử dụng để tái tạo cuộc tấn công có sẵn để tải xuống.


Hãy là người đầu tiên nhận xét

Để lại bình luận của bạn

địa chỉ email của bạn sẽ không được công bố. Các trường bắt buộc được đánh dấu bằng *

*

*

  1. Chịu trách nhiệm về dữ liệu: Miguel Ángel Gatón
  2. Mục đích của dữ liệu: Kiểm soát SPAM, quản lý bình luận.
  3. Hợp pháp: Sự đồng ý của bạn
  4. Truyền thông dữ liệu: Dữ liệu sẽ không được thông báo cho các bên thứ ba trừ khi có nghĩa vụ pháp lý.
  5. Lưu trữ dữ liệu: Cơ sở dữ liệu do Occentus Networks (EU) lưu trữ
  6. Quyền: Bất cứ lúc nào bạn có thể giới hạn, khôi phục và xóa thông tin của mình.