Плагин Spotlight пересылает байты через системные уведомления.
Сотрудники Microsoft представили исследование Sploitlight, в котором показали практический путь обхода механизма защиты TCC на macOS через злоупотребление плагинами Spotlight — уязвимость позволяет извлекать данные из защищённых баз, в том числе те, которые питают функции Apple Intelligence.
Исследование опирается на старую, но работающую особенность — возможность плагинов Spotlight обращаться к файлам, защищённым TCC, для индексирования. Плагин запускается системой и работает в ограниченном окружении, но всё равно обладает правом читать те файлы, которые Spotlight поручил обработать.
Авторы демонстрируют, что ограничение передачи данных из песочницы обходится через системные уведомления Darwin — когда само уведомление не может нести полезную нагрузку, имя уведомления превращается в канал для передачи байтов. Плагин по очереди посылает уведомления с именами, кодирующими значения байтов (0–255), а внешний слушатель собирает эти события и реконструирует содержимое файла.
Практическая демонстрация выполнена под macOS Tahoe — PoC состоит из двух Xcode-проектов: плагина и «listener». В тестах целевой оказалась база knowledgeC.db, хранящая телеметрию и поведенческие данные. Плагин сумел прочитать и передать первые байты файла, хотя прямая работа с ним из обычного процесса была запрещена. Ранее похожие обходы уже фиксировались — в частности исправление CVE-2024-54533 и более свежее исправление CVE-2025-31199 .
Авторы отмечают ограничения метода: требуются локальные привилегии для установки плагина; канал крайне узкополосный и не годится для эксфильтрации гигабайтов данных в реальном времени; некоторые файлы не индексируются или уже имеют зарегистрированный обработчик, который нельзя переопределить. Также на современных системах пользователю показывается уведомление при установке плагина, но процесс, ответственный за показ этого предупреждения, может быть приостановлен злоумышленником.
Практический вывод — Spotlight остаётся полезной и при этом потенциально опасной частью macOS , поскольку его расширяемость даёт осмысленные преимущества и одновременно создаёт каналы утечек. Предложенные меры — ужесточить установку плагинов, обязать их подтверждение и вводить явное одобрение со стороны пользователя перед регистрацией, а также пересмотреть механизмы межпроцессного уведомления, чтобы имена событий не могли служить каналом для побочных данных. Та же идея уже обсуждалась в сообществе, и новые исследования, включая доклад на конференции, подстёгивают к более строгим изменениям в архитектуре индексатора.