CacheWarp: lỗ hổng cho phép trốn tránh cơ chế bảo vệ SEV trên bộ xử lý AMD

dễ bị tổn thương

Nếu bị khai thác, những lỗ hổng này có thể cho phép kẻ tấn công truy cập trái phép vào thông tin nhạy cảm hoặc thường gây ra sự cố

Gần đây Tin tức được công bố bởi các nhà nghiên cứu CISPA, về một phương pháp tấn công mới CacheWarp xâm phạm cơ chế bảo mật AMD SEV được sử dụng trong các hệ thống ảo hóa để bảo vệ các máy ảo khỏi sự can thiệp của nhà ảo hóa hoặc quản trị viên hệ thống máy chủ.

Liên quan đến lỗ hổng (CacheWarp), các nhà nghiên cứu đề cập rằng dựa trên việc sử dụng một lỗ hổng (được liệt kê theo CVE-2023-20592) gây ra bởi sự cố bộ đệm trong quá trình thực thi lệnh của bộ xử lý INVD, với sự trợ giúp của nó, có thể đạt được sự khác biệt về dữ liệu trong bộ nhớ, bộ đệm và cơ chế bỏ qua để duy trì tính toàn vẹn của bộ nhớ máy ảo, được triển khai dựa trên các phần mở rộng SEV-ES và SEV-SNP.

Phương pháp đề xuất cho phép kẻ tấn công có quyền truy cập vào bộ ảo hóa để thực thi mã của bên thứ ba và nâng cấp đặc quyền trên máy ảo được bảo vệ bởi AMD SEV. Lỗ hổng này ảnh hưởng đến bộ xử lý AMD EPYC từ thế hệ thứ nhất đến thế hệ thứ ba.

Công nghệ AMD SEV được sử dụng để cách ly máy ảo bởi các nhà cung cấp đám mây. Bảo vệ AMD SEV Nó được thực hiện bằng mã hóa cấp độ phần cứng của bộ nhớ máy ảo, Ngoài ra, tiện ích mở rộng SEV-ES bảo vệ các thanh ghi CPU. Chỉ hệ thống khách hiện tại mới có quyền truy cập vào dữ liệu được giải mã và khi các máy ảo khác và trình ảo hóa cố gắng truy cập vào bộ nhớ này, chúng sẽ nhận được một tập hợp dữ liệu được mã hóa.

Giới thiệu cuộc tấn công nó được đề cập rằng Nó dựa trên việc sử dụng lệnh INVD để vô hiệu hóa các khối trong bộ đệm trang mà không đổ dữ liệu tích lũy trong bộ đệm vào bộ nhớ (writeback). Vì thế, Phương pháp này cho phép bạn xóa dữ liệu đã sửa đổi khỏi bộ đệm mà không thay đổi trạng thái bộ nhớ.

Để thực hiện một cuộc tấn công, đề xuất sử dụng ngoại lệ phần mềm để làm gián đoạn hoạt động của máy ảo ở hai nơi: thứ nhất, kẻ tấn công gọi lệnh “wbnoinvd” để đặt lại tất cả các hoạt động ghi bộ nhớ được tích lũy trong bộ đệm và thứ hai, hắn gọi lệnh “invd” để trả về các hoạt động ghi không được phản ánh trong bộ nhớ về trạng thái trước đó.

Để kiểm tra lỗ hổng, sMột nguyên mẫu khai thác đã được xuất bản cho phép chèn một ngoại lệ vào máy ảo được bảo vệ bởi AMD SEV và hoàn nguyên các thay đổi đối với VM chưa được đặt lại vào bộ nhớ.

Có thể sử dụng khôi phục thay đổi để thay đổi luồng chương trình bằng cách trả về địa chỉ trả về trước đó trên ngăn xếp hoặc sử dụng tham số đăng nhập từ phiên trước đó đã được xác thực trước đó bằng cách trả về giá trị thuộc tính xác thực.

Ví dụ, các nhà nghiên cứu đã chứng minh khả năng sử dụng phương pháp CacheWarp để thực hiện cuộc tấn công Bellcore vào việc thực hiện thuật toán RSA-CRT trong thư viện ipp-crypto, giúp có thể khôi phục khóa riêng bằng cách thay thế các lỗi khi tính toán khóa kỹ thuật số.

Cuối cùng, nó được đề cập rằng Bộ nhớ cacheWarp nói chung không ảnh hưởng đến tất cả mọi người Bộ xử lý AMD, ví dụ như dành cho bộ xử lý AMD EPYC thế hệ thứ XNUMX (Thiền 3), Sự cố được giải quyết trong bản cập nhật vi mã Tháng XNUMX do AMD công bố (bản sửa lỗi không gây ra bất kỳ sự suy giảm hiệu suất nào).

Trong khi dành cho thế hệ thứ nhất và thứ hai của AMD EPYC (Thiền 1 và Thiền 2), không có sự bảo vệ nào được cung cấp, vì những CPU này không hỗ trợ phần mở rộng SEV-SNP, phần mở rộng này cung cấp khả năng kiểm soát tính toàn vẹn cho các máy ảo. Thế hệ thứ tư của bộ xử lý AMD AMD EPYC “Genoa” dựa trên vi kiến ​​trúc “Zen 4” Nó không dễ bị tổn thương.

Bên cạnh đó, Thế hệ bộ xử lý AMD EPYC thứ ba đã giới thiệu một phần mở rộng bổ sung, SEV-SNP (Phân trang lồng nhau an toàn), đảm bảo hoạt động an toàn của các bảng trang bộ nhớ lồng nhau. Ngoài việc mã hóa bộ nhớ chung và cách ly nhật ký, SEV-SNP còn thực hiện các biện pháp bổ sung để bảo vệ tính toàn vẹn của bộ nhớ bằng cách ngăn chặn các thay đổi đối với VM của trình ảo hóa. Các khóa mã hóa được quản lý bên cạnh bộ xử lý PSP (Bộ xử lý bảo mật nền tảng) riêng biệt được tích hợp vào chip, được triển khai trên cơ sở kiến ​​trúc ARM.

Nếu bạn quan tâm muốn biết thêm về nó, bạn có thể tham khảo chi tiết Trong liên kết sau đây.


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