Процедура взлома Nintendo Switch стала публично доступна
Группа хакеров ReSwitched публично выпустила proof of concept запуска неподписанного кода на Nintendo Switch, использующий неустранимую уязвимость в bootRom. Вы можете самостоятельно его выполнить на своей консоли.
Уязвимость Fusée Gelée позволяет выполнить произвольный код на консоли Nintendo Switch под управлением NVIDIA Tegra X1 на функции загрузки и контроля питания (Boot and Power Management Processor (BPMP) еще до того момента, как применяется какая-либо проверка на достоверность выполняемого кода. Данная уязвимость исполняется через Tegra Recovery Mode (RCM) и полностью компроментирует root-of-trust (как раз проверку на подлинность исполняемых инструкций).
Эксплоит выполняется путем передачи неверного аргумента "length" процедуры загрузки через USB в режиме Recovery. Это позволяет передавать до 65.535 байт за запрос и допускает прямой доступ (DMA) в буфер защищенной области памяти для исполнения любого произвольного кода на максимально доступном уровне контроля допуска (TrustZone Secure Monitor на PL3/EL3).
Proof of concept доступен публично на GitHub, и для его выполнения достаточно компьютера под управлением Linux или macOS, консоли и кабеля USB Type-C - USB-A. Консоль необходимо перевести в режим Tegra Recovery замыканием контактов правого JoyCon или снятия модуля памяти eMMC.
На отгруженных в магазины и доступных пользователям Nintendo Switch эта уязвимость является неустранимой, поскольку присутствует в bootRom. В связи с тем, что при выходе с конвейера на Switch принудительно срабатывает триггер ODM_PRODUCTION, bootRom блокируется для записи навсегда и становится доступным только для чтения.