Исследователи из Граца припомнили старую истину — если система хоть что-то сообщает о п...
Исследователи из Граца припомнили старую истину — если система хоть что-то сообщает о происходящем, этим можно воспользоваться для слежки, даже если напрямую доступа у вас нет. Оказалось, что API вроде inotify в Linux, FileObserver в Android и вызовы файловых событий в Windows текут метаданными даже там, где у непривилегированного пользователя нет никаких прав. Код с реализацией методов атак опубликован под лицензией MIT. Самый красивый вектор провернули в Linux: обычный юзер не может напрямую читать сырые данные клавиатуры из /dev/input/event4, зато может подписаться на метаданные родительской папки /dev/input. Каждое нажатие клавиши микроскопически дергает каталог, а по задержкам между таймингами (пальцы тянутся к «Q» или «X» дольше, чем к соседним клавишам) статистика легко восстанавливает вводимый текст. В свежих ядрах лазейку уже прикрыли, запретив каталогам генерировать события на спецфайлах, но сам факт чтения ввода без рута впечатляет. Впрочем, Linux отделался малой кровью... В KDE Plasma исследователи настроили слежку за обращением к бинарнику /usr/bin/pkexec: как только система пытается спросить пароль суперпользователя, зловред мгновенно выкатывает поверх родного окна фейковую форму авторизации Polkit и уводит пароль. На Android через банальный FileObserver удалось без особых разрешений мониторить приватную папку WhatsApp, вытягивая имена пересылаемых файлов и фиксируя активность переписки. А на Windows всё оказалось совсем просто: подписка на события корневого диска C:\ сливает пути вообще ко всем файловым операциям в ОС в обход любых разграничений прав, позволяя в реальном времени вычислять открытые сайты в Firefox по именам создаваемых папок кэша. Кстати, в Microsoft заявили, что возможность подглядывать за файлами всех пользователей и процессов системы — это не уязвимость, а «недокументированная возможность». @linux0ids