Энди Нгуен (Andy Nguyen), исследователь безопасности, работающий в Google, объявил о портировании Linux для Sony PlayStation 5 и продемонстрировал превращение данной игровой консоли в полноценный игровой ПК с Ubuntu 24.04.4, способный выполнять Steam и запускать современные 3D-игры. Производительности подготовленного Linuх-окружения оказалось достаточно для запуска игры GTA5 с включённой трассировкой лучей (режим «High RT») при разрешении 1440p и частоте обновления 60 кадров в секунду.
В подготовленной системе на базе ядра Linux 6.19 полностью работает звук и видео с качеством 4K через HDMI, а также поддерживаются все USB-порты. Рабочая конфигурация запущена с выставлением для CPU частоты 3.2 GHz, а для GPU — 2.0 GHz. Отмечается, что частота может быть дополнительно разогнана до 3.5 GHz для CPU и 2.23 Ghz для GPU, но в этому случае игровая консоль PS5 Slim быстро перегревалась.
Для обхода верификации загрузчика и загрузки Linux-дистрибутива вместо штатной прошивки задействован эксплоит Byepervisor, работающий только с версиями прошивок двухгодичной давности (1.xx-2xx) и эксплуатирующий две уязвимости в гипервизоре. Для поддержки GPU AMD, специфичного для PlayStation 5, подготовлен патч для Mesa, который предложен для включения в основной состав Mesa.
В Sony Playstation 5 используется APU AMD со встроенным сопроцессором PSP (Platform Security Processor), обеспечивающим управление ключами. На первой стадии загрузки запускается доступный только на чтение код из BootROM, использующий корневые ключи для верификации загрузчика по цифровой подписи, жёстко прошитые на этапе производства чипа. Если верификация прошла успешно, на второй стадии запускается загрузчик (Bootloader), который отвечает за запуск и верификацию ядра ОС или гипервизора.
При использовании эксплоита Byepervisor вмешательство в работу для запуска Linux производится на стадии гипервизора. На первом этапе для запуска собственных исполняемых файлов в формате ELF на уровне основной прошивки применяется эксплоит UMTX, эксплуатирующий WebKit при обработке web-контента, или эксплоит, эксплуатирующий уязвимость в обработчике BD-J при вставке специально оформленного диска Blu-ray. На втором этапе через загрузчик запускается эксплоит byepervisor.elf, переводящий систему в состояние восстановления прошивки.



Источник: opennet.ru
