Marvin Attack, một cuộc tấn công bẻ khóa RSA dựa trên thời gian

Tấn công Marvin

Marvin là sự trở lại của lỗ hổng 25 năm tuổi cho phép thực hiện các hoạt động ký và giải mã RSA

Trong thời gian ESORICS 2023 (Hội nghị chuyên đề châu Âu về nghiên cứu bảo mật máy tính) được tổ chức từ ngày 25 đến 29 tháng XNUMX tại Hà Lan, một nhà nghiên cứu bảo mật người làm việc cho Red Hat, trình bày "Cuộc tấn công của Marvin", một kỹ thuật tấn công cho phép xác định dữ liệu gốc bằng cách đo độ trễ trong quá trình vận hành giải mã dựa trên thuật toán RSA.

cuộc tấn công Marvin, Đây là một biến thể của phương pháp Bleichenbacher, được đề xuất vào năm 1998và tiếp tục phát triển các cuộc tấn công ROBOT và CAT mới được công bố vào năm 2017 và 2019.

Cuộc tấn công Marvin là sự trở lại của một lỗ hổng 25 năm tuổi cho phép thực hiện các hoạt động ký và giải mã RSA với tư cách là kẻ tấn công với khả năng chỉ quan sát thời gian của hoạt động giải mã được thực hiện bằng khóa riêng.

Năm 1998, Daniel Bleichenbacher phát hiện ra rằng các thông báo lỗi do máy chủ SSL cung cấp cho các lỗi trong phần đệm PKCS #1 v1.5 đã kích hoạt một cuộc tấn công bằng văn bản mã hóa được chọn thích ứng; Cuộc tấn công này phá vỡ hoàn toàn tính bảo mật của TLS khi được sử dụng với mã hóa RSA. Năm 2018, Hanno Böck, Juraj Somorovsky và Craig Young cho thấy 19 năm sau rằng nhiều máy chủ Internet vẫn dễ bị tổn thương trước những biến thể nhỏ của cuộc tấn công ban đầu.

Về cơ bản người ta đề cập rằng bản chất của phương pháp này là kẻ tấn công, dựa trên các phản ứng khác nhau của máy chủ và thời gian thực hiện khác nhau, có thể tách các khối oracle đúng và sai Đã thêm tiêu chuẩn PKCS #1 v1.5 để căn chỉnh dữ liệu được mã hóa dọc theo ranh giới khối. Bằng cách thao túng thông tin về tính chính xác của các khối đệm, kẻ tấn công có thể sử dụng vũ lực để tạo lại một bản mã phù hợp.

Trong trường hợp này, cuộc tấn công không trực tiếp khôi phục khóa riêng mà chỉ giải mã văn bản. mã hóa hoặc tạo ra một tin nhắn có chữ ký giả mạo. Để thực hiện một cuộc tấn công thành công, cần phải gửi một lượng lớn tin nhắn thử nghiệm để giải mã.

Sử dụng một cuộc tấn công chống lại máy chủ TLS sử dụng mã hóa dựa trên khóa RSA cho phép kẻ tấn công lưu trữ lưu lượng bị chặn một cách thụ động và sau đó giải mã nó. Đối với các máy chủ hỗ trợ PFS, việc thực hiện một cuộc tấn công trở nên khó khăn hơn nhiều và thành công phụ thuộc vào tốc độ thực hiện cuộc tấn công.

Bên cạnh đó, phương pháp cho phép tạo chữ ký số giả xác minh nội dung của các tin nhắn TLS 1.2 ServerKeyExchange hoặc các tin nhắn TLS 1.3 CertificationVerify được truyền trong giai đoạn trao đổi khóa, có thể được sử dụng để thực hiện các cuộc tấn công MITM nhằm chặn kết nối TLS giữa máy khách và máy chủ.

Nó được đề cập rằng sự khác biệt giữa phương pháp Marvin bị giảm xuống còn Công nghệ cải tiến để phân tách dữ liệu gia tăng chính xác và không chính xác, lọc các kết quả dương tính giả, xác định chính xác hơn độ trễ tính toán và sử dụng các kênh bổ sung của bên thứ ba trong quá trình đo.

Trong thực tế, phương pháp đề xuất cho phép giải mã lưu lượng hoặc tạo chữ ký số mà không cần biết khóa RSA riêng. Để kiểm tra khả năng ứng dụng của cuộc tấn công, một tập lệnh đặc biệt để kiểm tra máy chủ TLS và các công cụ xác định sự cố trong thư viện đã được xuất bản.

Vấn đề ảnh hưởng đến một số triển khai giao thức sử dụng RSA và PKCS. Mặc dù các thư viện mật mã hiện đại có một số biện pháp bảo vệ chống lại các cuộc tấn công dựa trên phương pháp Bleichenbacher, nghiên cứu tiết lộ rằng các thư viện có các kênh rò rỉ mở và không cung cấp thời gian xử lý liên tục cho các gói được điền chính xác và không chính xác. Ví dụ: việc triển khai cuộc tấn công GnuTLS của Marvin không bị ràng buộc với mã thực hiện trực tiếp các phép tính liên quan đến RSA mà sử dụng các thời gian chạy khác nhau cho mã quyết định xem có hiển thị một thông báo lỗi cụ thể hay không.

Tác giả của nghiên cứu cũng tin rằng loại lỗ hổng được xem xét không chỉ giới hạn ở RSA và có thể ảnh hưởng đến nhiều thuật toán mã hóa khác phụ thuộc vào các thư viện tiêu chuẩn để tính toán số nguyên.

Để xác nhận khả năng thực hiện cuộc tấn công Marvin trong thực tế, nhà nghiên cứu đã chứng minh khả năng áp dụng phương pháp này cho các ứng dụng dựa trên thư viện M2Crypto và pyca/mật mã, trong đó một vài giờ là đủ để xâm phạm mã hóa bằng cách tiến hành thử nghiệm trên một máy tính xách tay trung bình.

Cuối cùng, nếu bạn quan tâm có thể biết thêm về nó, bạn có thể tham khảo chi tiết tại mục liên kết theo dõi.


Để 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.