Các nhà nghiên cứu đã bẻ khóa thành công RSA 1024-bit trong GnuPG Crypto Library

Các nhà nghiên cứu an ninh đã phát hiện ra một lỗ hổng quan trọng trong thư viện mật mã GnuPG cho phép hoàn toàn phá vỡ RSA 1024-bit và lấy thành công khóa bí mật RSA để giải mã dữ liệu.

Thông tin thêm: RSA là một thuật toán mã hóa dữ liệu khóa công khai, khóa RSA càng dài thì mức độ an toàn càng lớn, và do đó, nó được sử dụng phổ biến trong thương mại điện tử với độ dài khóa đủ lớn. RSA với khóa có số bit càng cao thì thời gian, công sức cần để phá vỡ nó càng nhiều. Số khóa 256-bit có thể dễ dàng bị phá vỡ trong vài giờ, 512-bit sẽ cần đến vài trăm máy tính hoạt động cùng lúc để phân tích. Do đó, 1024-bit sẽ cần nhiều thời gian hơn nữa, nhưng gần đây nó đã bắt đầu xuất hiện những vấn đề và có thể bị bẻ khóa trong vài giờ. 2048-bit hiện nay được các nhà nghiên cứu bảo mật khuyến cáo sử dụng, vì nó đảm bảo an toàn hơn. Nếu có thể tạo khóa 4096-bit thì hoàn toàn yên tâm, vì gần như nó không thể bị bẻ khóa trong tương lai gần.

Gnu Privacy Guard (GnuPG hay GPG) là phần mềm mã nguồn mở phổ biến được nhiều hệ điều hành sử dụng từ Linux, FreeBSD đến Windows và macOS X. Nó khá giống với phần mềm được sử dụng bởi NSA (Cơ quan An ninh Quốc gia Hoa Kỳ) và Edward Snowden để giữ cho thông tin liên lạc của họ được an toàn trước các nhà thực thi pháp luật.

RSA-1024 bị bẻ khóa

Lỗ hổng, có tên CVE-2017-7526, nằm trong thư viện mã hoá Libgcrypt được sử dụng bởi GnuPG, dễ bị tấn công theo kiểu FLUSH+RELOAD side-channel.

Một nhóm các nhà nghiên cứu từ Đại học Kỹ thuật Eindhoven, Đại học Illinois, Đại học Pennsylvania, Đại học Maryland, và Đại học Adelaide - đã phát hiện ra rằng phương pháp "left-to-right window" được sử dụng bởi thư viện Libgcrypt để cung cấp thuật toán mã hóa, bị rò rỉ thông tin đáng kể về số bit của thừa số (exponent bit), nhiều hơn từ phải sang trái, cho phép khôi phục khóa RSA đầy đủ. Cụ thể những thông tin bị mô hình squarings và multiplications trong left-to-right sliding window tiết lộ có thể dùng thuật toán mở rộng Heninger-Shacham để khôi khục một phần khóa bí mật, từ đó phục hồi hoàn toàn khóa bí mật cho RSA-1024.

"Trong bài báo này, chúng tôi đã chứng minh được việc bẻ khóa hoàn toàn RSA-1024 như đã được thực hiện trong Libgcrypt. Với giả định là Libgcrypt sử dụng phương pháp từ trái sang phải để tính toán việc mở rộng sliding-window", các nhà nghiên cứu viết trong Bài báo nghiên cứu.

L3 Cache Side-Channel Attack yêu cầu hacker chạy phần mềm tùy ý trên phần cứng mà khoá RSA bí mật được sử dụng. Kiểu tấn công này cho phép hacker lấy được khóa giải mã bí mật từ hệ thống bằng cách phân tích mô hình sử dụng bộ nhớ hoặc các đầu ra điện từ của thiết bị được phát ra trong quá trình giải mã.

"Dù trong thực tế, có nhiều cách dễ dàng để lấy các khóa bí mật hơn là thực hiện Side-Channel Attack, nhưng trong trường hợp dùng máy ảo, kiểu tấn công này có thể được sử dụng bởi một máy ảo để lấy cắp các khoá bí mật từ một máy ảo khác", Libgcrypt khuyên.

Các nhà nghiên cứu còn cho biết, kiểu tấn công Side-Channel Attack này cũng làm việc với RSA 2048-bit, khóa có mức độ yêu cầu tính toán và phức tạp lớn hơn nhiều so với RSA 1024-bit.

Bài báo có tiêu đề: "Sliding right into disaster: Left-to-right sliding windows leak", được viết bởi các tác giả Daniel J. Bernstein, Joachim Breitner, Daniel Genkin, Leon Groot Bruinderink, Nadia Heninger, Christine van Vredendaal, Tanja Lange and Yuval Yarom.

Libgcrypt đã phát hành bản sửa vá cho Libgcrypt phiên bản 1.7.8. Debian và Ubuntu đã cập nhật thư viện của họ với phiên bản mới nhất của Libgcrypt.

Vì vậy, bạn nên kiểm tra xem phân phối Linux của bạn đang chạy phiên bản mới nhất của thư viện Libgcrypt hay không.

Thứ Tư, 05/07/2017 10:12
52 👨 888
0 Bình luận
Sắp xếp theo