Уязвимость в Unity позволяет выполнить код в играх на Android и Windows

Уязвимость в Unity позволяет выполнить код в играх на Android и Windows

Уязвимость в Unity позволяет выполнить код в играх на Android и Windows

В Unity нашли серьёзную уязвимость (CVE-2025-59489), позволяющую запускать произвольный код в играх и приложениях — особенно опасно на Android, а на Windows даёт возможности для повышения привилегий. Да, речь о движке, на котором сделаны тысячи мобильных игр и куча инди проектов — так что проблема масштабная.

Исследователь RyotaK заметил баг ещё в мае (на конференции Meta Bug Bounty Researcher). Причина в том, как Unity обрабатывает аргумент командной строки -xrsdk-pre-init-library — он не проверяется и не очищается.

На Android это означает: если на устройстве есть вредоносное приложение, оно может подсунуть игре свою библиотеку через Intent и заставить игру её загрузить — то есть получить исполнение кода в контексте игры.

На Windows, macOS и Linux похожие пути (не только Intents) тоже возможны — можно менять пути поиска библиотек или подставлять аргументы, если есть соответствующий вектор ввода.

Что это даёт злоумышленнику

  • На Android — произвольное выполнение нативного кода в пределах прав уязвимого приложения.
  • На Windows — варианты для повышения привилегий и локального исполнения кода через модификацию путей загрузки библиотек или аргументов.
    Unity подчёркивает: исполнение кода ограничено правами самой игры, а утечка информации — тем, что доступно приложению.

Компания также утверждает, что уязвимость присутствует в рантайме для версий начиная с 2017.1 и далее, а патчи выпущены для версий с 2019.1 и новее, включая некоторые устаревшие ветки. Старые и уже не поддерживаемые версии патча не получат — так что часть билдов останется уязвимой до пересборки.

В списке уязвимых игр компании указывают : Hearthstone, The Elder Scrolls: Blades, Fallout Shelter, DOOM (2019), Wasteland 3, Forza Customs и другие популярные проекты — то есть и мобильные хиты, и некоторые десктопные версии.

 

Реакция платформ и компании:

  • Valve/Steam выпустила обновление клиента, которое блокирует запуск кастомных URI-схем через платформу, чтобы закрыть один из векторов.
  • Valve рекомендует издателям пересобрать игры на безопасной версии Unity или просто заменить у билда библиотеку UnityPlayer.dll на пропатченную.
  • Microsoft выпустила бюллетень с предупреждением и советом — пока нет патча у конкретной игры, лучше её удалить.
  • Unity выпустила бюллетень и рекомендует разработчикам обновить Unity Editor до свежей ветки, пересобрать и переопубликовать приложения либо заменить рантайм-бинарь на актуальный.

Что делать обычному игроку:

  • Если игра обновилась и в патче указан фикс — обновляйте и устанавливайте.
  • Если разработчик ещё не выпустил патч — по возможности удалите игру с устройства (Microsoft прямо рекомендует это для Windows-версий).
  • На Android следите за тем, какие приложения вы устанавливаете — не давайте лишних прав подозрительным приложениям, особенно если вы играете в популярные Unity-проекты.

Что делать разработчикам:

  • Немедленно обновить Unity Editor до ближайшей безопасной ветки, пересобрать игру и выпустить обновление.
  • Если пересборка невозможна, заменить рантайм-библиотеку (UnityPlayer.dll/аналог) в уже выпущенных билдах на пропатченную версию, как советует Valve.
  • Пересмотреть обработку входных аргументов, проверку путей и загрузку библиотек — и по возможности убрать ненужную функциональность, которая открывает такие векторы.

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

Проблема серьёзная, но исправима: игрокам — следить за обновлениями и по возможности временно удалять уязвимые приложения; разработчикам — быстро обновлять редактор и/или подставлять заплатки в рантайм и заново выкатывать сборки. Чем быстрее это сделают массовые издатели, тем быстрее риски снизятся.

В популярном WordPress-плагине для редиректов пять лет скрывался бэкдор

В плагине Quick Page/Post Redirect для WordPress обнаружили скрытый бэкдор. Плагин установлен более чем на 70 тыс. сайтов и используется для настройки редиректов на страницах, записях и пользовательских URL.

Проблему нашёл основатель хостинг-провайдера Anchor Остин Гиндер после того, как на его инфраструктуре сработали предупреждения сразу на 12 заражённых сайтах. WordPress.org временно убрал плагин из каталога на время проверки.

По данным исследователя, в официальных версиях 5.2.1 и 5.2.2, выпущенных в 2020-2021 годах, был скрытый механизм самообновления. Он обращался к стороннему домену anadnet[.]com и позволял подгружать код в обход контроля WordPress.org.

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

По оценке Гиндера, механизм использовали для скрытого SEO-спама: заражённые сайты фактически сдавали свои позиции в поисковой выдаче тем, кто управлял этой инфраструктурой.

Главная опасность при этом не только в самом SEO-спаме. Встроенный механизм обновления теоретически позволял выполнить произвольный код на сайте по команде. Сейчас он, по словам исследователя, неактивен, потому что управляющий поддомен не резолвится, но сам домен остаётся действующим.

Пользователям Quick Page/Post Redirect рекомендуют удалить плагин и заменить его чистой версией 5.2.4 из каталога WordPress.org, когда она снова станет доступна после проверки. Владельцам сайтов также стоит проверить следы подозрительных обновлений и сравнить хеши установленных файлов с официальными версиями.

RSS: Новости на портале Anti-Malware.ru