0-click в Signal и Discord способна деанонимизировать пользователей

0-click в Signal и Discord способна деанонимизировать пользователей

0-click в Signal и Discord способна деанонимизировать пользователей

Исследователь под ником hackermondev сообщил о 0-click уязвимости, позволяющей без взаимодействия с пользователем определить его местоположение с достаточно большой точностью. Атака нацелена на софт Signal и Discord и задействует механизмы кеширования в инфраструктуре Cloudflare для определения геолокации пользователя в радиусе до 400 километров.

Брешь кроется в механизме кеширования систем доставки контента (CDN). Специалист так описывает проблему:

«Если устройство пользователя загружает контент на сайте, использующем Cloudflare, этот ресурс кешируется в локальном дата-центре. Затем можно идентифицировать конкретный ЦОД, закешировавший контент».

Signal и Discord автоматически скачивают кешированные файлы — например, аватары или вложения — которые сохраняются в ближайшем дата-центре Cloudflare. Используя прокси Cloudflare Teleport или похожие инструменты, злоумышленник может установить, какой именно дата-центр использовался, вычислив таким образом регион пользователя.

Исследователь продемонстрировал эксплуатацию вектора на платформе Signal, широко используемой журналистами и активистами. Он отправил вложение через CDN Signal и выяснил, в каком дата-центре был кеширован файл.

«В моем случае я нахожусь в Нью-Йорке, а ближайший ко мне дата-центр — в Ньюарке, штат Нью-Джерси. Последний располагается примерно в 150 милях (чуть больше 241 километра — прим. Anti-Malware.ru) от меня», — пояснил он.

Аналогичная уязвимость была обнаружена в Discord. Эксперт продемонстрировал атаку через пользовательские эмодзи или уведомления о запросах в друзья. Например, аватар отправителя в запросе автоматически загружается устройством получателя, что активирует 0-click.

Cloudflare устранила конкретную уязвимость, однако hackermondev нашел обходной путь через VPN.

«С помощью нового метода мне удалось снова вычислить около 54% всех дата-центров Cloudflare», — заявил он.

Реакция разработчиков Signal и Discord была довольно прохладной. В Signal заявили, что пользователи сами должны озадачиться сокрытием своей личности. Discord, в свою очередь, возложил ответственность на Cloudflare.

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