ZenHammer - phương pháp tấn công làm hỏng nội dung bộ nhớ trên nền tảng AMD Zen

Các nhà nghiên cứu tại ETH Zurich đã phát triển cuộc tấn công ZenHammer, một biến thể của lớp tấn công RowHammer nhằm thay đổi nội dung của từng bit riêng lẻ của bộ nhớ truy cập ngẫu nhiên động (DRAM), được điều chỉnh để sử dụng trên nền tảng có bộ xử lý AMD. Các phương thức tấn công RowHammer trước đây chỉ giới hạn ở các hệ thống dựa trên bộ xử lý Intel, nhưng nghiên cứu đã chỉ ra rằng hỏng bộ nhớ cũng có thể xảy ra trên các nền tảng có bộ điều khiển bộ nhớ AMD.

Phương pháp này đã được trình diễn trên hệ thống AMD Zen 2 và Zen 3 với bộ nhớ DDR4 của ba nhà sản xuất hàng đầu (Samsung, Micron và SK Hynix). Cuộc tấn công đã vượt qua thành công cơ chế TRR (Làm mới hàng mục tiêu) được triển khai trong chip bộ nhớ, nhằm mục đích bảo vệ chống hỏng các ô nhớ ở các hàng liền kề. Theo các nhà nghiên cứu, các hệ thống dựa trên CPU AMD Zen 3 dễ bị tấn công hơn các hệ thống có bộ xử lý Intel Coffee Lake, đồng thời chúng dễ bị tấn công hơn và hiệu quả hơn. Trên hệ thống AMD Zen 2, 7/10 chip DDR4 được thử nghiệm đã đạt được hiện tượng biến dạng tế bào đối với 3/6 chip DDR10 và trên hệ thống Zen 4 là 5/4. Các nhà nghiên cứu cũng phân tích khả năng xảy ra một cuộc tấn công vào hệ thống AMD Zen 1 với bộ nhớ DDR10, nhưng cuộc tấn công đã xảy ra. Phương pháp được phát triển cho DDR5 chỉ được sao chép thành công trên 5 trong số XNUMX chip nhớ DDRXNUMX được thử nghiệm, trong khi không loại trừ khả năng xảy ra một cuộc tấn công nhưng yêu cầu phát triển các kiểu đọc hiệu quả hơn phù hợp với các thiết bị DDRXNUMX.

Để hoạt động với chip AMD, họ có thể điều chỉnh các khai thác đã phát triển trước đó để thay đổi nội dung của các mục trong bảng trang bộ nhớ (PTE, mục nhập bảng trang) để giành được các đặc quyền của kernel, bỏ qua kiểm tra mật khẩu/quyền bằng cách sửa đổi bộ nhớ của quy trình sudo và làm hỏng khóa chung RSA-2048 được lưu trong bộ nhớ trong OpenSSH để tạo lại khóa riêng. Cuộc tấn công trang bộ nhớ được tái tạo trên 7 trong số 10 chip DDR4 được thử nghiệm, cuộc tấn công khóa RSA trên 6 chip và cuộc tấn công sudo trên 4 chip, với thời gian tấn công lần lượt là 164, 267 và 209 giây.

ZenHammer - phương pháp tấn công nhằm làm hỏng nội dung bộ nhớ trên nền tảng AMD Zen

Phương pháp này cũng có thể được sử dụng để tấn công hệ thống thông qua trình duyệt, thực hiện các thay đổi từ máy ảo hoặc để khởi động một cuộc tấn công qua mạng. Mã nguồn của bộ công cụ DARE để đảo ngược bố cục địa chỉ trong bộ nhớ DRAM được đăng trên GitHub theo giấy phép MIT, cũng như hai bộ tiện ích để kiểm tra lỗi mờ trong bộ nhớ - ddr4_zen2_zen3_pub cho chip DDR4 (Zen 2 và Zen 3) và ddr5_zen4_pub cho chip DDR5 ( Zen 4), có thể được sử dụng để kiểm tra khả năng dễ bị tấn công của hệ thống của họ.

ZenHammer - phương pháp tấn công nhằm làm hỏng nội dung bộ nhớ trên nền tảng AMD Zen

Phương pháp RowHammer được sử dụng để làm biến dạng các bit, dựa trên thực tế là trong bộ nhớ DRAM, là một mảng hai chiều gồm các ô bao gồm một tụ điện và một bóng bán dẫn, việc thực hiện việc đọc liên tục trên cùng một vùng bộ nhớ sẽ dẫn đến dao động điện áp và sự bất thường gây ra sự mất mát nhỏ điện tích của các tế bào lân cận. Nếu cường độ đọc cao thì ô lân cận có thể mất một lượng điện tích đủ lớn và chu kỳ tái tạo tiếp theo sẽ không có thời gian để khôi phục lại trạng thái ban đầu, điều này sẽ dẫn đến thay đổi giá trị của dữ liệu được lưu trong ô . Nhà nghiên cứu đã xác định các tính năng của ánh xạ và đồng bộ hóa bộ nhớ vật lý với các cơ chế cập nhật bộ nhớ được sử dụng trong bộ xử lý AMD, giúp tạo lại địa chỉ DRAM cấp thấp, xác định địa chỉ của các ô lân cận, phát triển các phương pháp bỏ qua bộ nhớ đệm cũng như tính toán các mẫu và tần số. các hoạt động dẫn đến mất phí.

Để bảo vệ chống lại RowHammer, các nhà sản xuất chip sử dụng cơ chế TRR (Làm mới hàng mục tiêu), cơ chế này ngăn chặn tình trạng hỏng tế bào trong các trường hợp đặc biệt nhưng không bảo vệ khỏi tất cả các tùy chọn tấn công có thể xảy ra. Phương pháp bảo vệ hiệu quả nhất vẫn là sử dụng bộ nhớ có mã sửa lỗi (ECC), điều này làm phức tạp đáng kể nhưng không loại bỏ hoàn toàn các cuộc tấn công RowHammer. Việc tăng tần suất tái tạo bộ nhớ cũng có thể làm giảm khả năng xảy ra một cuộc tấn công thành công.

AMD đã công bố một báo cáo về sự cố cho biết bộ xử lý AMD sử dụng bộ điều khiển bộ nhớ tuân thủ thông số kỹ thuật DDR và ​​do sự thành công của cuộc tấn công phụ thuộc chủ yếu vào cài đặt hệ thống và bộ nhớ DRAM nên các câu hỏi về cách giải quyết vấn đề phải được chuyển đến nhà sản xuất bộ nhớ. và hệ thống Các cách hiện có để khiến các cuộc tấn công lớp Rowhammer trở nên khó khăn hơn bao gồm sử dụng bộ nhớ ECC, tăng tần suất tái tạo bộ nhớ, vô hiệu hóa chế độ tái tạo trì hoãn và sử dụng bộ xử lý có bộ điều khiển hỗ trợ chế độ MAC (Số lượng kích hoạt tối đa) cho DDR4 (thứ 1, thứ 2 và thứ 3). thế hệ AMD EPYC "Naple ", "Rome" và "Milan") và RFM (Quản lý làm mới) cho DDR5 (AMD EPYC thế hệ thứ 4).

Nguồn: opennet.ru

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