Tin tặc khai thác lỗ hổng tràn bộ nhớ đệm trong Nintendo Switch

Hai nhóm nghiên cứu bảo mật khác nhau đã công bố các hoạt động khai thác PoC cho lỗ hổng tràn bộ nhớ đệm không thể vá được trong dòng vi xử lý nhúng Tegra của Nvidia, có trên tất cả các bảng điều khiển Nintendo Switch hiện có của hãng.

Được gọi là Fusée Gelée và ShofEL2, những khai thác này sẽ dẫn đến việc thực hiện coldboot hack mà có thể được chủ sở hữu thiết bị sử dụng để cài đặt Linux, chạy trò chơi không chính thức, phần mềm tùy chỉnh và mã không dấu khác trên bảng điều khiển Nintendo Switch.

Cả hai khai thác tận dụng lỗ hổng tràn bộ nhớ đệm trong USB software stack của IROM/bootROM. Thông qua đó, cho phép kẻ tấn công thực thi mã tùy ý không được xác thực trên bảng điều khiển trò chơi trước khi bất kỳ hoạt động khóa nào (bảo vệ bootROM của chip) có hiệu lực.

Tin tặc khai thác lỗ hổng tràn bộ nhớ đệm trong Nintendo Switch
Tin tặc khai thác lỗ hổng tràn bộ nhớ đệm trong Nintendo Switch

Lỗ hổng tràn bộ nhớ đệm xảy ra khi chủ sở hữu thiết bị gửi một đối số “quá dài” tới thủ tục điều khiển USB được mã hóa không chính xác, dẫn đến việc tràn direct memory access (DMA) buffer trong bootROM. Thông qua đó cho những phép kẻ tấn công sao chép dữ liệu vào ngăn ứng dụng được bảo vệ và thực thi mã tùy ý.

Nói cách khác, người dùng có thể làm quá tải direct memory access (DMA) buffer trong bootROM và sau đó thực thi nó để có được quyền truy cập cao trên thiết bị trước khi phần bảo mật của quá trình khởi động đi vào hoạt động.

Hacker phần cứng Katherine Temkin của ReSwitched, người đã phát hành Fusée Gelée, nói: “Việc thực thi này có thể được sử dụng để exfiltrate các bí mật và tải mã tùy ý lên bộ xử lý ứng dụng phức tạp của CPU (CCPLEX) ở mức đặc quyền cao nhất có thể (đặc biệt là TrustZone Secure Monitor tại PL3/EL3)”.

Tuy nhiên, việc khai thác đòi hỏi người dùng phải có quyền truy cập vật lý vào giao diện điều khiển phần cứng để buộc chuyển sang chế độ khôi phục USB (RCM), điều này có thể được thực hiện đơn giản bằng cách nhấn và rút ngắn các pin nhất định trên đầu nối Joy-Con phù hợp mà không cần thực sự mở hệ thống.

Bằng cách này, fail0verflow cho biết một đoạn dây đơn giản từ cửa hàng phần cứng có thể được sử dụng để nối Pin 10 và Pin 7 trên đầu nối Joy-Con bên phải của bàn điều khiển, trong khi Temkin gợi ý rằng việc phơi bày và uốn các pin đang được đề cập cũng sẽ hoạt động.

Sau khi hoàn tất, bạn có thể kết nối Switch với máy tính của bạn bằng cáp (USB A → USB C) và sau đó chạy bất kỳ khai thác có sẵn nào.

Fusée Gelée, do Temkin phát hành, cho phép chủ sở hữu thiết bị chỉ hiển thị dữ liệu trên màn hình. Temkin hứa sẽ phát hành nhiều tập lệnh và chi tiết kỹ thuật hơn về khai thác Fusée Gelée vào ngày 15 tháng 6 năm 2018, nếu người khác chưa công khai chúng.

Temkin cũng đang làm việc trên phần mềm Nintendo Switch tùy chỉnh được gọi là Atmosphère, có thể được cài đặt thông qua Fusée Gelée.

Tin tặc khai thác lỗ hổng tràn bộ nhớ đệm trong Nintendo Switch
Phần mềm Nintendo Switch tùy chỉnh được gọi là Atmosphère

Mặt khác, khai thác ShofEL2 được đưa ra bởi nhóm fail0verflow nổi tiếng, cho phép người dùng cài đặt Linux trên Nintendo Switches.

Nhóm fail0verflow cảnh báo: “Chúng tôi đã gây ra thiệt hại tạm thời cho một bảng điều khiển LCD với mã trình tự. ”

Trong khi đó, một nhóm tin tặc phần cứng khác là Team Xecutor cũng đang chuẩn bị bán một phiên bản khai thác dễ sử dụng cho người tiêu dùng. Nhóm tin tặc tuyên bố khai thác này sẽ “làm việc trên mọi bảng điều khiển Nintendo Switch với bất kể loại firmware nào đang được cài đặt và điều đó sẽ được chứng minh trong tương lai.”

Nintendo không thể sửa chữa lỗ hổng tràn bộ nhớ đệm bằng cách sử dụng cập nhật firmware

Theo Temkin, lỗ hổng này không chỉ giới hạn ở Nintendo Switch mà còn ảnh hưởng đến toàn bộ dòng vi xử lý Tegra X1 của Nvidia.

Vì thành phần bootROM được tích hợp vào các thiết bị Tegra để kiểm soát thói quen khởi động thiết bị và tất cả xảy ra trong Read-Only memory, nên Nintendo không thể vá lỗ hổng với bản cập nhật firmware hoặc phần mềm đơn giản.

Vì vậy, công ty có thể giải quyết vấn đề này trong tương lai bằng cách sử dụng một số sửa đổi phần cứng, nhưng đừng mong đợi bất kỳ sửa chữa nào đối với các Switch mà bạn đã sở hữu.