Kỹ sư Google đề xuất bảo vệ phần mềm bộ xử lý khỏi các cuộc tấn công LVI

Cách đây một thời gian, người ta đã biết về một lỗ hổng mới trong kiến ​​trúc suy đoán của bộ xử lý Intel, được gọi là Tải giá trị tiêm (LVI). Intel có quan điểm riêng về sự nguy hiểm của LVI và các khuyến nghị để giảm thiểu nó. Phiên bản bảo vệ của riêng bạn chống lại các cuộc tấn công như vậy đề nghị kỹ sư tại Google. Nhưng bạn sẽ phải trả tiền cho sự bảo mật bằng cách giảm hiệu suất của bộ xử lý trung bình 7%.

Kỹ sư Google đề xuất bảo vệ phần mềm bộ xử lý khỏi các cuộc tấn công LVI

Chúng tôi đã lưu ý trước đó rằng mối nguy hiểm của LVI không nằm ở cơ chế cụ thể được các nhà nghiên cứu phát hiện mà nằm ở chính nguyên tắc của cuộc tấn công kênh bên LVI, lần đầu tiên được thể hiện. Do đó, một hướng đi mới đã được mở ra cho những mối đe dọa mà trước đây chưa ai nghi ngờ (ít nhất, điều này chưa được thảo luận rộng rãi). Do đó, giá trị của sự phát triển của chuyên gia Google Zola Bridges nằm ở chỗ bản vá của anh ấy giảm thiểu nguy cơ xảy ra các cuộc tấn công mới chưa được biết đến dựa trên nguyên tắc LVI.

Trước đây trong Trình biên dịch dự án GNU (Trình biên dịch GNU) những thay đổi đã được thực hiện nhằm giảm nguy cơ xảy ra lỗ hổng LVI. Những thay đổi này bao gồm việc thêm hướng dẫn rào cản LFENCE, thiết lập một trình tự nghiêm ngặt giữa các lần truy cập bộ nhớ trước và sau rào cản. Thử nghiệm bản vá trên một trong các bộ xử lý thế hệ Kaby Lake của Intel cho thấy hiệu suất giảm tới 22%.

Nhà phát triển Google đã đề xuất bản vá của mình với việc bổ sung các hướng dẫn LFENCE vào bộ trình biên dịch LLVM và gọi là biện pháp bảo vệ SESES (Ngăn chặn hiệu ứng phụ thực thi suy đoán). Tùy chọn bảo vệ mà ông đề xuất giúp giảm thiểu cả mối đe dọa LVI và các mối đe dọa tương tự khác, chẳng hạn như Spectre V1/V4. Việc triển khai SESES cho phép trình biên dịch thêm các lệnh LFENCE vào các vị trí thích hợp trong quá trình tạo mã máy. Ví dụ: chèn chúng trước mỗi lệnh đọc từ bộ nhớ hoặc ghi vào bộ nhớ.

Các lệnh LFENCE ngăn chặn việc ưu tiên tất cả các lệnh tiếp theo cho đến khi quá trình đọc bộ nhớ trước đó hoàn tất. Rõ ràng, điều này ảnh hưởng đến hiệu suất của bộ xử lý. Nhà nghiên cứu nhận thấy rằng trung bình, tính năng bảo vệ SESES làm giảm tốc độ hoàn thành các tác vụ bằng thư viện được bảo vệ xuống 7,1%. Phạm vi giảm năng suất trong trường hợp này dao động từ 4 đến 23%. Dự báo ban đầu của các nhà nghiên cứu bi quan hơn, cho rằng hiệu suất sẽ giảm tới 19 lần.



Nguồn: 3dnews.ru

Thêm một lời nhận xét