Обнаружен баг в Electron: Signal, Slack и 1Password оказались уязвимы

Обнаружен баг в Electron: Signal, Slack и 1Password оказались уязвимы

Обнаружен баг в Electron: Signal, Slack и 1Password оказались уязвимы

Исследователи обнаружили опасную уязвимость в популярном фреймворке Electron, на котором работают такие приложения, как Signal, 1Password, Slack и даже Google Chrome. Баг получил идентификатор CVE-2025-55305 и позволяет внедрять вредоносный код в приложения, обходя встроенные проверки целостности.

Как выяснили в Trail of Bits, проблема связана с так называемыми V8 heap snapshots — это механизм оптимизации, унаследованный из Chromium.

Он хранит заранее подготовленное состояние JavaScript, чтобы приложения запускались быстрее. Но именно эти «снимки» оказались за пределами стандартных проверок целостности.

Получается, что если злоумышленник получил доступ к папке установки программы (а на Windows это часто %AppData%\Local, доступный для записи, на macOS — /Applications), он может подменить снапшот-файл. После этого при запуске приложение проглотит вредоносный код ещё до того, как включатся защитные механизмы.

 

Исследователь под псевдонимом Shadow показал, что можно заменить даже встроенные функции, например Array.isArray, и вставить туда выполнение произвольного кода. В тестах Slack просто падал, но для доказательства работоспособности были собраны и полноценные бэкдоры.

  • В Slack внедрили кейлоггер в окна чата.
  • В Signal и 1Password атака позволяла воровать переписку и данные из хранилища.

Хорошая новость: разработчики отреагировали быстро. В 1Password уязвимость закрыли в версии 8.11.8-40, Slack и Signal тоже выпустили обновления.

Однако исследователи предупреждают: уязвимость касается не только Electron-приложений. Похожие техники можно применить к Chromium-браузерам, включая Chrome, если они установлены в папку, куда есть запись у обычного пользователя. И это особенно опасно — ведь такие бэкдоры проходят даже проверку цифровой подписи.

Что делать? Пользователям — обновить Signal, Slack, 1Password и все прочие Electron-программы как можно скорее. Разработчикам — расширить проверки целостности на снапшот-файлы или перенести их в каталоги, недоступные для записи.

Этот случай ещё раз показывает: в защите приложений важно учитывать даже «скрытые» механизмы ускорения работы, иначе они могут стать лазейкой для атак.

Android запретит доступ к экрану «лишним» приложениям

Google, похоже, готовит ещё одно нововведение по части безопасности Android. В тестовой сборке Android Canary 2602 обнаружена новая функция для Advanced Protection Mode — режима «максимальной защиты», который компания представила в Android 16.

Теперь Advanced Protection Mode может ограничивать работу приложений, использующих AccessibilityService API, если они не классифицированы как инструменты для доступности.

AccessibilityService API — это мощный механизм Android, изначально созданный для помощи людям с ограниченными физическими возможностями. С его помощью приложения могут читать содержимое экрана, отслеживать действия пользователя и даже выполнять жесты от его имени.

Именно поэтому этот API часто становился инструментом атакующих. За последние годы многие приложения — от автоматизаторов и лаунчеров до «оптимизаторов» и антивирусов — использовали его для обхода системных ограничений. Формально ради удобства, однако на деле получая очень широкие права.

Google постепенно ужесточала политику. Приложения, действительно предназначенные для помощи людям с ограниченными возможностями, должны указывать специальный атрибут isAccessibilityTool. К ним относятся экранные дикторы, системы управления жестами, голосовой ввод, брайлевские интерфейсы и другие специализированные инструменты.

По данным аналитиков, в новой версии Android Canary  при включении Advanced Protection Mode система:

  • запрещает выдавать разрешение Accessibility Service приложениям, не признанным Accessibility Tools;
  • автоматически отзывает уже выданные разрешения у таких приложений.

Если приложение сильно зависит от этого API, оно просто перестанет работать.

В тестах, например, приложение dynamicSpot (эмулирующее Dynamic Island на Android) становилось недоступным: пункт был с пометкой «Restricted by Advanced Protection». Причина простая: оно использует AccessibilityService для чтения уведомлений и отображения поверх других приложений.

Инструменты, официально классифицированные как средства доступности, под ограничения не попадают.

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