Họ đã tìm thấy một lỗ hổng thực thi đầu cơ ảnh hưởng đến AMD

Dự án gần đây Grsecurity được biết đến qua một ấn phẩm chi tiết và một bản demo một phương pháp tấn công cho một lỗ hổng mới (đã được liệt kê là CVE-2021-26341) trong bộ xử lý AMD liên quan đến việc thực hiện các lệnh suy đoán sau các hoạt động chuyển tiếp vô điều kiện.

Lỗ hổng cho phép bộ xử lý xử lý theo suy đoán lệnh ngay sau lệnh nhảy (SLS) trong bộ nhớ trong quá trình thực thi suy đoán. Đồng thời, việc tối ưu hóa như vậy không chỉ hoạt động đối với các toán tử nhảy có điều kiện, mà còn đối với các lệnh liên quan đến bước nhảy không điều kiện trực tiếp, chẳng hạn như JMP, RET và CALL.

Các lệnh rẽ nhánh không điều kiện có thể được theo sau bởi dữ liệu tùy ý không nhằm mục đích thực thi. Sau khi xác định rằng nhánh không liên quan đến việc thực hiện câu lệnh tiếp theo, bộ xử lý chỉ cần khôi phục trạng thái và bỏ qua việc thực thi suy đoán, nhưng dấu vết thực thi lệnh vẫn còn trong bộ đệm chung và có sẵn để phân tích bằng cách sử dụng các phương pháp truy xuất kênh bên.

AMD cung cấp bản cập nhật cho biện pháp giảm nhẹ được khuyến nghị, giảm nhẹ G-5, trong sách trắng "Kỹ thuật phần mềm để quản lý đầu cơ trong bộ xử lý AMD". Việc giảm thiểu G-5 giúp giải quyết các lỗ hổng tiềm ẩn liên quan đến hành vi đầu cơ của các lệnh rẽ nhánh.

Bộ xử lý AMD có thể thực thi tạm thời các lệnh sau một nhánh chuyển tiếp vô điều kiện, điều này có thể dẫn đến hoạt động của bộ nhớ cache

Như với việc khai thác Spectre-v1, một cuộc tấn công yêu cầu sự hiện diện của các chuỗi nhất định hướng dẫn (tiện ích) trong hạt nhân, dẫn đến việc thực thi suy đoán.

Trong trường hợp này, việc chặn một lỗ hổng bảo mật chỉ cần xác định các thiết bị như vậy trong mã và thêm các hướng dẫn bổ sung cho chúng để chặn việc thực thi suy đoán. Các điều kiện để thực thi suy đoán cũng có thể được tạo bằng cách sử dụng các chương trình không đặc quyền chạy trên máy ảo eBPF.

Cuộc điều tra này dẫn đến việc phát hiện ra một lỗ hổng mới, CVE-2021-26341 [1] , mà chúng tôi sẽ thảo luận chi tiết trong bài viết này. Như thường lệ, chúng tôi sẽ tập trung vào các khía cạnh kỹ thuật của lỗ hổng, các biện pháp giảm thiểu do AMD đề xuất và các khía cạnh khai thác.

Để chặn khả năng tạo thiết bị bằng eBPF, bạn nên tắt quyền truy cập không đặc quyền vào eBPF trong hệ thống ("sysctl -w kernel.unprivileged_bpf_disabled = 1").

Lỗ hổng bảo mật ảnh hưởng đến bộ vi xử lý dựa trên vi kiến ​​trúc Zen1 và Zen2:

Bàn

  • Bộ xử lý AMD Athlon ™ X4
  • Bộ xử lý AMD Ryzen ™ Threadripper ™ PRO
  • Bộ xử lý AMD Ryzen ™ Threadripper ™ thế hệ thứ XNUMX
  • Bộ xử lý AMD Ryzen ™ Threadripper ™ thế hệ thứ XNUMX
  • APU AMD A-series thế hệ thứ XNUMX
  • Bộ xử lý máy tính để bàn AMD Ryzen ™ 2000 Series
  • Bộ xử lý máy tính để bàn AMD Ryzen ™ 3000 Series
  • Bộ xử lý máy tính để bàn AMD Ryzen ™ 4000 Series với đồ họa Radeon ™

Di động

  • Bộ xử lý di động AMD Ryzen ™ 2000 Series
  • Bộ xử lý di động AMD Athlon ™ 3000 Series với đồ họa Radeon ™
  • Bộ xử lý di động AMD Ryzen ™ 3000 Series hoặc Bộ xử lý di động AMD Ryzen ™ thế hệ thứ XNUMX với đồ họa Radeon ™
  • Bộ xử lý di động AMD Ryzen ™ 4000 Series với đồ họa Radeon ™
  • Bộ xử lý di động AMD Ryzen ™ 5000 Series với đồ họa Radeon ™

Chromebook

  • Bộ xử lý di động AMD Athlon ™ với đồ họa Radeon ™

Máy chủ

  • Bộ xử lý AMD EPYC ™ thế hệ đầu tiên
  • Bộ xử lý AMD EPYC ™ thế hệ thứ XNUMX

Người ta đề cập rằng nếu cuộc tấn công thành công, lỗ hổng cho phép xác định nội dung của các vùng bộ nhớ tùy ý.

Do lỗ hổng này, có thể xác định cấu trúc mã lành tính hình thành các thiết bị SLS hạn chế nhưng có khả năng khai thác trên các CPU bị ảnh hưởng. Như đã chứng minh với ví dụ eBPF, cũng có thể khai thác lỗ hổng bằng các thiết bị tự tiêm, chế tạo bằng tay. Ví dụ, phương pháp đã trình bày có thể được sử dụng để phá vỡ việc giảm thiểu KASLR của nhân Linux.

Ví dụ: các nhà nghiên cứu đã chuẩn bị một cách khai thác cho phép bạn xác định bố cục của địa chỉ và bỏ qua cơ chế bảo vệ KASLR (ngẫu nhiên hóa bộ nhớ nhân) bằng cách thực thi mã mà không có đặc quyền trong hệ thống con nhân eBPF, ngoài các tình huống tấn công khác có thể làm rò rỉ nội dung của bộ nhớ nhân không bị loại trừ.

Cuối cùng nếu bạn muốn biết thêm một chút về nó, bạn có thể kiểm tra các 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.