Почти 300 исполняемых файлов в Windows 10 уязвимы к перехвату DLL

Материал из Викиновостей, свободного источника новостей

29 июня 2020 года

Исследователь безопасности из компании PwC Витце Бьюкема (Wietze Beukema) обнаружил почти 300 исполняемых файлов в Windows 10, которые уязвимы к атакам типа DLL hijack («подмена DLL-библиотек»). C помощью скрипта VBScript некоторые из EXE-файлов могут быть использованы для перехвата DLL, полностью минуя контроль учетных записей пользователей (User Account Control, UAC).

Подмена DLL-библиотек может позволить злоумышленнику выполнить произвольный код, повысить привилегии и обеспечить персистентность на целевой системе. Различные методы атак с использованием DLL-библиотек, описанные специалистом, включают замену DLL, перехват поиска DLL, перенаправление DLL, замену DLL в папке WinSxS и перехват относительного пути DLL.

Для демонстрации перехвата относительного пути DLL Бьюкема выбрал библиотеки, находящиеся в папке «C:\Windows\System32» на компьютере под управлением Windows 10 (v1909). Он скопировал легитимный файл winstat.exe в папку загрузок на своей системе, затем запустил инструмент мониторинга процессов procmon с целью идентифицировать все DLL-библиотеки, запрашиваемые приложениями, которые потенциально можно перехватить. Для того чтобы узнать, какие DLL-библиотеки были корректно загружены, специалист скомпилировал собственную версию DLL-библиотеки и заставил ее осуществить запись в уникальный файл после успешной загрузки.

Исследователь предоставил полный список библиотек и исполняемых файлов, которые могут быть использованы в ходе атак. Список состоит из 287 исполняемых файлов и 263 уникальных DLL-библиотек.

Специалист также сообщил о некоторых ограничениях, связанных с данными типами атак:

  • Использовать только исполняемые файлы, не требующие никаких аргументов;
  • Избегать приложений с расширенным графическим интерфейсом и возможностями отчетов об ошибках;
  • Не использовать DLL-библиотеки, написанные на языке C++.

Одна из причин, по которой специалист предлагает использовать VBScript, заключается в том, что создание каталогов Windows, имена которых содержат завершающий пробел, не может быть достигнуто с помощью «традиционных средств». С помощью VBScript нет необходимости использовать собственные скомпилированные двоичные файлы для осуществления атаки.

Для предотвращения подобных атак эксперт рекомендует настроить приложения так, чтобы они всегда использовали абсолютные пути вместо относительных. Также в настройках UAC можно указать параметр «всегда уведомлять», что поможет предотвратить успешное выполнение перехвата DLL.

Источники[править]

Эта статья загружена автоматически ботом NewsBots и ещё не проверялась редакторами Викиновостей.
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.

Комментарии[править]

Викиновости и Wikimedia Foundation не несут ответственности за любые материалы и точки зрения, находящиеся на странице и в разделе комментариев.