Новая техника обхода антивирусов прячет вирусы через штатные ссылки NTFS
В Windows нашли необычный способ спрятать вредоносные файлы от проверки антивирусами и EDR-системами. Техника получила название GhostTree и использует не уязвимость в классическом смысле, а штатную особенность NTFS: специальные ссылки на папки, которые могут зациклить путь и заставить защитный продукт бесконечно обходить один и тот же каталог.
Метод описали исследователи Varonis Threat Labs. Проблема связана с NTFS junctions и символическими ссылками. Такие механизмы позволяют одной папке указывать на другую, а операционная система воспринимает переход как обычный путь к каталогу. В нормальной работе junctions помогают сохранять совместимость со старыми программами, переносить папки и управлять хранилищем без физического перемещения файлов.
Опасная деталь кроется в правах доступа. Создать junction может обычный пользователь, если у пользователя есть право записи в нужную папку. Администраторские привилегии и специальные разрешения не требуются. Этого достаточно, чтобы построить зацикленную структуру каталогов.
В базовом варианте, который исследователи назвали GhostBranch, дочерняя папка указывает обратно на родительский каталог. После создания такой связи один и тот же файл получает бесконечное количество допустимых путей. Например, программа может лежать в родительской папке, но Windows будет находить тот же файл через цепочку вида <code>C:\Parent\Child\Child\Child\Program.exe</code>.
GhostTree развивает этот приём. Вместо одной дочерней папки злоумышленник создаёт несколько, и каждая снова возвращает систему к родительскому каталогу. На каждом уровне путь может пойти по разной ветке, поэтому количество вариантов быстро растёт. При традиционном ограничении Windows в 260 символов глубина остаётся примерно на уровне 126 папок, но две ветки уже дают около 2<sup>126</sup> возможных путей, то есть примерно 8,5 × 10<sup>37</sup>.
NTFS технически поддерживает более длинные пути, вплоть до 32 767 символов при включении соответствующей настройки в реестре, но многие программы и утилиты по-прежнему плохо работают с путями длиннее 260 символов. Поэтому реальный эффект GhostTree зависит не только от файловой системы, но и от поведения конкретных приложений.
Для защитных продуктов проблема выглядит неприятно. Сканер, который рекурсивно проверяет папку, может начать ходить по зацикленному дереву и не завершить обход. Если вредоносный файл лежит в родительском каталоге рядом с такими junctions, защитный продукт рискует не добраться до файла и оставить содержимое папки без проверки.
Исследователи проверили технику на Windows Defender и подтвердили, что GhostTree можно использовать для обхода сканирования папок. Varonis передала проблему Microsoft, но тикет закрыли с объяснением, что обход Defender не считается пересечением границы безопасности. Позже, по данным Varonis, проблему всё же исправили.
В Windows нашли необычный способ спрятать вредоносные файлы от проверки антивирусами и EDR-системами. Техника получила название GhostTree и использует не уязвимость в классическом смысле, а штатную особенность NTFS: специальные ссылки на папки, которые могут зациклить путь и заставить защитный продукт бесконечно обходить один и тот же каталог.
Метод описали исследователи Varonis Threat Labs. Проблема связана с NTFS junctions и символическими ссылками. Такие механизмы позволяют одной папке указывать на другую, а операционная система воспринимает переход как обычный путь к каталогу. В нормальной работе junctions помогают сохранять совместимость со старыми программами, переносить папки и управлять хранилищем без физического перемещения файлов.
Опасная деталь кроется в правах доступа. Создать junction может обычный пользователь, если у пользователя есть право записи в нужную папку. Администраторские привилегии и специальные разрешения не требуются. Этого достаточно, чтобы построить зацикленную структуру каталогов.
В базовом варианте, который исследователи назвали GhostBranch, дочерняя папка указывает обратно на родительский каталог. После создания такой связи один и тот же файл получает бесконечное количество допустимых путей. Например, программа может лежать в родительской папке, но Windows будет находить тот же файл через цепочку вида <code>C:\Parent\Child\Child\Child\Program.exe</code>.
GhostTree развивает этот приём. Вместо одной дочерней папки злоумышленник создаёт несколько, и каждая снова возвращает систему к родительскому каталогу. На каждом уровне путь может пойти по разной ветке, поэтому количество вариантов быстро растёт. При традиционном ограничении Windows в 260 символов глубина остаётся примерно на уровне 126 папок, но две ветки уже дают около 2<sup>126</sup> возможных путей, то есть примерно 8,5 × 10<sup>37</sup>.
NTFS технически поддерживает более длинные пути, вплоть до 32 767 символов при включении соответствующей настройки в реестре, но многие программы и утилиты по-прежнему плохо работают с путями длиннее 260 символов. Поэтому реальный эффект GhostTree зависит не только от файловой системы, но и от поведения конкретных приложений.
Для защитных продуктов проблема выглядит неприятно. Сканер, который рекурсивно проверяет папку, может начать ходить по зацикленному дереву и не завершить обход. Если вредоносный файл лежит в родительском каталоге рядом с такими junctions, защитный продукт рискует не добраться до файла и оставить содержимое папки без проверки.
Исследователи проверили технику на Windows Defender и подтвердили, что GhostTree можно использовать для обхода сканирования папок. Varonis передала проблему Microsoft, но тикет закрыли с объяснением, что обход Defender не считается пересечением границы безопасности. Позже, по данным Varonis, проблему всё же исправили.
- Источник новости
- www.securitylab.ru