Kiểu tấn công RAMpage mới khai thác lỗ hổng RowHammer trên Android

0
489
RowHammer

Một nhóm các nhà nghiên cứu đã phát hiện ra kỹ thuật mới cho phép hacker qua mặt tất cả các biện pháp giảm thiểu nguy cơ tấn công Rowhammer dựa trên DMA (truy cập bộ nhớ trực tiếp), nhằm vào các thiết bị Android.

Kỹ thuật mới này được gọi là RAMpage (CVE-2018-9442) có thể kích hoạt lại ứng dụng trên Android không đặc quyền chạy trên thiết bị nạn nhân, tận dụng lợi thế từ cuộc tấn công Drammer, một biến thể trong lỗ hổng phần cứng DRAM Rowhammer cho các thiết bị Android, nhằm chiếm đặc quyền root trên thiết bị mục tiêu.

Google giảm thiểu nguy cơ tấn công Rowhammer dựa trên DMA giống như Drammer bằng cách nào?

Vào năm 2016 sau khi chi tiết về cuộc tấn công Drammer được công bố, Google đã đưa ra một bản cập nhật cho thiết bị Android, vô hiệu hóa một trong những thành phần của ION (kmalloc heap) chịu trách nhiệm phân vùng bộ nhớ tiếp giáp nhằm giảm các nguy cơ khai thác lỗ hổng Rowhammer.

Sau khi vô hiệu hóa vùng nhớ heap tiếp giáp, các quá trình của ứng dụng và hệ thống chạy trên các thiết bị Android sẽ dựa vào vùng heap trong nhân của trình quản lý bộ nhớ ION, chẳng hạn như vùng heap hệ thống, được thiết kế để phân vùng bộ nhớ ở các vị trí vật lý ngẫu nhiên trên DRAM.

Bên cạnh việc phân vùng bộ nhớ không tiếp giáp, vùng heap hệ thống cũng tách bộ nhớ trong nhân và bô nhớ người dùng bằng cách phân tách chúng đến vùng lowmem và highmem tương ứng vì lý do an ninh sau này.

Tấn công RAMpage là gì và kẻ tấn công có thể qua mặt biện pháp giảm thiểu tấn công Rowhammer như thế nào?

Đội ngũ các nhà nghiên cứu đã phát hiện ra 4 biến thể của cuộc tấn công rowhammer mới cho phép ứng dụng độc hại được cài đặt trên thiết bị mục tiêu chiếm quyền truy cập root và đánh cắp dữ liệu nhạy cảm từ các ứng dụng khác trong khi qua mặt được tất cả các biện pháp giảm nhẹ hiện có.

Biến thể RAMpage đầu tiên (r0) là “một cách tấn công Drammer, vô hiệu hóa việc phân vùng bộ nhớ tiếp giáp, không ngăn chặn các cuộc tấn công leo thang đặc quyền dựa trên Rowhammer.

Các nhà nghiên cứu giải thích ba bước để khai thác thành công giống như Drammer sử dụng biến thể RAMpage r0:

  1. Làm cạn kiệt vùng heap hệ thống
  2. Làm co hẹp vùng cache pool
  3. Chiếm quyền root trên thiết bị mobile

Các nhà nghiên cứu đã thử nghiệm thành công PoC trên LG G4 chạy phiên bản Android mới nhất (7.1.1). Việc khai thác này sẽ giúp chiếm toàn quyền kiểm soát và truy cập mọi thứ trên thiết bị, bao gồm cả mật khẩu, dữ liệu nhạy cảm được lưu trên hệ thống.
Ngoài ra còn có ba biến thể khác của tấn công RAMpage cũng cho phép kẻ tấn công qua mặt các biện pháp mà chỉ bảo vệ được một số phần đặc biệt trong vùng nhớ hệ thống, nhưng hiếm khi xảy ra trên thực tế và đòi hỏi cần phải nghiên cứu thêm đó là.

  • Tấn công ION-to-ION (Varint r1)
  • Tấn công CMA-to-CMA (Varint r2)
  • Tấn công CMA-to-system (Varint r3)

Các chuyên gia nhận định rằng tất cả các kỹ thuật giảm thiểu tấn công hiện tại không còn hiệu quả trong việc ngăn chặn các biến thể RAMpage của các cuộc tấn công rowhammer dựa trên DMA và cũng giới thiệu một giải pháp mới gọi là GuardION kèm theo mã code của nó trong mã nguồn mở.

GuardION là phần mềm bảo vệ nhằm ngăn chặn các cuộc tấn công rowhammer bằng cách cô lập bộ đệm DMA qua các dòng bảo vệ và cần được cài đặt như là bản vá cho hệ điều hành Android.

Tuy nhiên theo các chuyên gia, nếu người dùng cài đặt các ứng dụng từ các nguồn đáng tin cậy thì không cần phải lo lằng về các cuộc tấn công RAMpage.
Các nhà nghiên cứu cũng đã thông báo cho Google về kiểu tấn công DRAMpage này nên có thể các ứng dụng độc hại xuất hiện sẽ không được phép xuất hiện trên Google Play Store.

Theo The Hacker News​