Недостаток UAC позволяет повысить привилегии

image

Теги: UAC, повышение прав, стандартный пользователь

Эксплуатируя уязвимость загрузки DLL, можно обойти UAC и повысить привилегии до административных.

Пользователь Parvez в своем блоге на GreyHatHacker.NET описывает способы обхода локальных ограничений UAC и получения прав администратора. Эксперт воспроизводит несложную двухэтапную схему, второй этап которой напоминает эксплуатацию уязвимости загрузки DLL. Условиями успешного обхода UAC является наличие процесса со средним уровнем целостности и стандартного пользователя в группе администраторов. Кроме того, исполняемый файл Windows должен иметь проверенный подписанный код, размещаться в безопасной директории и содержать свойство автоматического повышения привилегий в файле .manifest.

Запись в безопасное пространство можно сделать несколькими способами – используя либо IFileOperation Com-объект, либо автономный установщик обновлений Windows (wusa.exe). Используя метод COM-объекта, можно скопировать файлы в безопасное пространство и таким образом добиться повышения привилегий. Для этого необходимо внедрить вредоносный файл DLL в процесс со средним уровнем целостности. Поскольку COM-объект настроен автоматически повышать привилегии, нет необходимости указывать автоматическое повышение в файле .manifest внедренного процесса.

Второй способ сделать запись в безопасное пространство – это использовать автономный установщик обновлений Windows (wusa.exe). В связи с тем, что в файле .manifest wusa.exe указано свойство Auto-Elevate, файл выполняется как процесс, имеющий высокий уровень целостности. Для того чтобы автоматически повышать привилегии, исполняемый файл Windows должен иметь проверенный подписанный код, размещаться в безопасной директории, например, в C:\Windows\System32, а также содержать свойство автоматического повышения привилегий в файле .manifest.указать свойство Elevate в файле .manifest.

Вслед за выполнением файла pwcreator.exe (Create a Windows To Go workspace) происходит вызов файла vds.exe (Virtual Disk Service), который загружает созданный пользователем DLL и предоставляет стандартному пользователю с привилегиями учетной записи SYSTEM.

Telegram Подписывайтесь на канал "SecurityLab" в Telegram, чтобы первыми узнавать о новостях и эксклюзивных материалах по информационной безопасности.