Команда хакеров ReSwitched заявила, что ей удалось создать эксплойт к режиму Tegra Recovery Mode в линейке встроенных процессоров Nvidia. Уязвимость позволяет злоумышленникам скопировать код в защищенный стек приложений, что равнозначно запуску произвольного кода на устройстве.

Брешь обнаружила Кэтрин Темкин (Katherine Temkin), в своем посте она написала, что проблему невозможно закрыть патчем.

«Уязвимость возникла из-за ошибки в коде неизменяемой загрузочной памяти bootROM, которая встречается в большинстве устройств Tegra. В заводских условиях можно вносить небольшие исправления в bootROM, так называемые ipatches, но как только устройство покидает производство, исправить что-либо уже не получится», — написала Темкин в своем посте.

Она пояснила, что уязвимость холодной загрузки присутствует в режиме процессора Tegra Recovery Mode (RCM) — это программа, передающая код устройству Tegra в режиме восстановления.

Оплошность разработчиков открыла хакерам возможность обойти стандартные механизмы защиты чипа — bootROM. Он представляет собой небольшой, но критически важный элемент памяти Mask ROM в чипе процессора, содержащей код, который процессор исполняет в первую очередь после перезагрузки.

Для эксплуатации бага устройство на платформе Tegra изначально должно быть загружено в режиме восстановления с внешнего накопителя, то есть через подключение к компьютеру через USB-кабель.

Команда ReSwitched в отчете на GitHub описала различные приемы, позволяющие кодерам войти в режим RCM на консолях Switch — к примеру, замкнув определенные контакты контроллера Joy-Con и зажав кнопку повышения громкости во время загрузки устройства.

«Программный стек для работы с USB, находящийся в неизменяемой памяти с инструкциями (IROM/bootROM), имеет операцию копирования, длиной которой может манипулировать злоумышленник, — написано в отчете. — Если создать специальный запрос на управление USB, уязвимость позволит злоумышленнику скопировать содержимое подконтрольного буфера в активный стек вызовов и перехватить управление процессором Boot and Power Management Processor (BPMP) до срабатывания каких-либо защитных механизмов и ограничений в привилегиях».

Компания Nintendo серьезно относится к защите своей системы от хакеров, более того, именно в целях безопасности она отказалась включить возможность резервного копирования сохранений игр на другие устройства или карты памяти microSD.

С точки зрения геймеров, данный эксплойт открывает возможность резервного копирования сохранений, при этом повышается риск того, что хакеры смогут закинуть в консоли игроков произвольную полезную нагрузку через RCM или скопировать свои значения в стек вызовов.

Темкин уведомила о проблеме как представителей Nintendo, так и Nvidia. Последняя отказалась комментировать ситуацию.

Рэнди Коупленд (Randy Copeland), генеральный директор компании Velocity Micro, занимающейся сборкой флагманских систем на чипах Nvidia, заявил, что пока ничего не слышал от производителя о потенциальных проблемах с безопасностью.

«Для взлома нужно физически владеть устройством, а значит, взломать устройство могут либо ваши друзья, либо воры», — прокомментировал он для Threatpost.

Исследователи из ReSwitched рекомендуют проектировщикам исправить обработчик запросов на управление USB, чтобы он «всегда корректно ограничивал передаваемую длину» в зависимости от типа устройства.

Однако они предупреждают: «Если устройство уже попало к потребителю, решение отсутствует. К сожалению, после пережигания перемычки ODM_PRODUCTION доступ к перемычкам, нужным для конфигурации ipatch-заплаток устройства, утрачивается. Следовательно, обновить bootROM невозможно. Рекомендуется донести до потребителей эту информацию, чтобы у них была возможность перейти на другое устройство».

Категории: Уязвимости