Уязвимость в 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 в индустрии, лучше не рассчитывать на удачу — обновления и осторожность сейчас важнее.

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

Пользователи Android чаще всего блокируют рекламу через Private DNS

Пользователи Android всё чаще отказываются от приложений и VPN для блокировки рекламы, выбирая Private DNS как самый простой и эффективный способ защиты. Опрос показал, что DNS-сервисы вроде AdGuard и Cloudflare позволяют убрать рекламу, снизить риск мошенничества и не замедлять работу смартфона.

Как выяснили исследователи, самым популярным способом блокировки рекламы стал Private DNS. Этот вариант заметно опередил все остальные.

Около 65% респондентов сообщили, что используют Private DNS, например Cloudflare 1.1.1.1 или специализированные решения вроде AdGuard DNS. Такие сервисы легко настраиваются, не требуют установки сторонних приложений и позволяют отсеивать рекламные и потенциально опасные домены на уровне запросов.

Для сравнения: менее 19% пользователей предпочитают сторонние приложения для блокировки рекламы, такие как Blokada. Совсем небольшая доля респондентов призналась, что вообще не использует никакие инструменты для защиты от рекламы.

 

Пользователи отмечают сразу несколько преимуществ DNS-подхода:

  • он не нагружает систему и не замедляет интернет, как это иногда бывает с VPN;
  • не конфликтует с сервисами вроде Android Auto;
  • помогает фильтровать не только рекламу, но и фишинговые или сомнительные сайты;
  • настраивается за пару минут прямо в системных параметрах Android.

При этом Private DNS не ограничивает доступ к сервисам и не ломает работу приложений, что для многих оказалось решающим фактором.

Помимо DNS-сервисов, пользователи активно рекомендуют браузеры с встроенной блокировкой рекламы. Среди популярных вариантов — Firefox с расширением uBlock Origin и фирменный браузер Samsung, который поддерживает контент-блокеры из коробки.

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

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