Исследователи из Технического университета Граца представили новый класс атак по побочному каналу. Они опираются на штатные механизмы уведомлений о файловых событиях в Linux, Windows, macOS и Android. Работа "File Notification Attacks: Templating and Exploiting Side-Channel Leakage from the File-Notification Systems on Linux, Windows, and macOS" прошла на конференции ACM CCS 2026. Под наблюдение попадают интервалы между нажатиями клавиш, запуск приложений, посещение сайтов, работа с USB, активность VPN и печать документов. Права администратора атакующему не требуются. Хватает учётной записи обычного пользователя и доступа на чтение к части системных каталогов.
Схема строится в два этапа. Сначала злоумышленник на своей машине выполняет заранее известные действия: запускает приложение, открывает сайт, печатает текст, подключает внешний накопитель, включает VPN. Параллельно он записывает, какие файлы при этом открывались, изменялись или удалялись. Так рождаются шаблоны. На втором этапе программа следит за теми же событиями на устройстве жертвы и по совпадениям восстанавливает её действия. Инструмент опирается на inotify (подсистема уведомлений о файловых событиях в Linux), ReadDirectoryChangesW (функция Windows для слежения за каталогом) и FSEvents (служба файловых событий в macOS). Шаблонирование охватывает широкий набор сценариев: команды в терминале, работу веб-сервера, печать, запуск виртуальных машин и контейнеров, смену настроек Bluetooth, сети и VPN, обращения к внешним накопителям. Разрешение по времени доходит до 0,2 миллисекунды. Накладные расходы не превышают 0,21 процента процессорного времени.
Сильнее всех утекает Linux. Результаты исследования, представленного на ACM CCS 2026, показывают высокую точность. Перехват интервалов между нажатиями клавиш на семи пользователях дал метрику F1 от 93,1 до 100 процентов. Следить достаточно за каталогом /dev/input, хотя сами файлы устройств закрыты на чтение. Одно нажатие обычно рождает два события - нажатие и отпускание. Сам символ распознать нельзя, зато восстанавливается ритм печати, а вместе с ним и набранный текст. Похожий сценарий работает удалённо: активность псевдотерминала в /dev/pts выдаёт набор текста в сессии SSH со 100-процентной метрикой F1 и отклонением 2,9 миллисекунды. Ограничение одно - ввод, который не отображается на экране, например пароль, не фиксируется. Отдельная атака касается браузера. Посещение сайтов в Firefox меняет картину обращений к системным шрифтам в /usr/share/fonts. Классификатор по 1448 файлам шрифтов распознал топ-100 сайтов с метрикой F1 87,9 процента. Авторы также показали подмену окна аутентификации в KDE Plasma 6 на Wayland. Программа замечает запуск pkexec и рисует поверх настоящего запроса пароля своё окно. От запуска pkexec до появления подделки проходит 374 миллисекунды.
На Windows последствия тяжелее. Непривилегированный пользователь, подписавшийся на изменения диска C:\, получает полные пути файлов в чужих профилях, в том числе закрытых на чтение. Имена каталогов приходят в уведомлении целиком, поэтому вредоносная программа в системе жертвы и перехват трафика не нужны. Браузеры хранят данные сайтов в каталогах, чьи имена содержат адрес ресурса. Firefox поэтому позволяет отслеживать посещение тысячи популярных сайтов в реальном времени с метрикой F1 97,8 процента и без ложных срабатываний. Microsoft назвала такое поведение намеренным и сослалась на то, что содержимое файлов не раскрывается. Одни лишь имена и пути уже дают точную картину занятости человека. Chromium-браузеры создают каталоги только под IndexedDB, и там метрика F1 падает до 48,5 процента. Дополнительный источник сведений - каталог C:\Windows\Prefetch, где имена файлов содержат названия запущенных программ.
macOS утекает меньше остальных. Служба FSEvents сообщает о запуске приложений, смене сетевых настроек, работе принтера и подключении внешних накопителей, но с разрешением около 11,48 миллисекунды. Приватные каталоги других пользователей остаются вне досягаемости. В Android картина снова меняется. Класс FileObserver (интерфейс наблюдения за файлами для приложений) обходит ограничения раздельного доступа к хранилищу и сообщает о появлении файлов в закрытых папках. По этим сигналам видно, когда WhatsApp получает медиафайлы, когда пользователь делает скриншот или скачивает документ, а также когда он удаляет переписку. Задержка отклика на двух проверенных устройствах не превысила 0,36 миллисекунды.
Linux выпустил частичные исправления в начале 2026 года и присвоил проблеме номер CVE-2025-68788. Патч закрыл слежку только за файлами устройств, остальные пути по-прежнему открыты. Авторы предлагают проверять права при подписке на события, а на Windows - запретить слежение за целыми дисками и включить проверки на уровне каталогов по умолчанию. Вопрос касается не только настольных машин. На общих серверах Linux, где приложения запускают от отдельных учётных записей, одна скомпрометированная служба видит чужую активность - похожий сценарий разворачивался вокруг утилиты XZ Utils. Пока производители медлят, заказчикам разумно относиться к именам файлов как к чувствительному активу. Модель разграничения доступа в популярных системах допускает больше, чем предполагают её пользователи.