В предварительной версии Windows 10 Creators Update build 15007 Microsoft, похоже, исправила метод обхода UAC, включающий в себя eventvwr.exe. Во-первых, как работает этот обход?
Когда вы вошли в систему как администратор, двоичные файлы Windows, для которых для уровня выполнения установлено значение «highestavailable» и свойство «autoelevate» установлено в значение «true» в манифесте, автоматически запускаются с повышенными правами без отображения запроса контроля учетных записей.
Диспетчер задач (Taskmgr.exe) и Eventvwr.exe — два таких примера. Заметили ли вы, что диспетчер задач по умолчанию работает с повышенными правами, но не отображает приглашение UAC, когда вы вошли в систему как администратор?
Исследователь безопасности Мэтт Нельсон (@ enigma0x3 в Twitter) написал об обходе или эксплойте UAC, который использует eventvwr.exe. Eventvwr.exe — это, по сути, программа запуска, которая выполняет% systemroot% \ system32 \ eventvwr.msc с помощью метода ShellExecute.
Это означает (ShellExecute), что система использует информацию об ассоциации файлов .MSC для запуска соответствующего исполняемого файла, открывающего файлы MSC. Поскольку родительская программа eventvwr.exe по умолчанию запускается с повышенными правами, дочерний процесс также запускается с повышенными правами.
Обход UAC с помощью взлома реестра
Когда eventvwr.exe (оболочка) выполняет файл eventvwr.msc, Windows вместо использования информации об ассоциации файлов в HKEY_LOCAL_MACHINE \ Software \ Classes \ mscfile запрашивает ветку здесь:
HKEY_CLASSES_ROOT\mscfile
К вашему сведению, HKEY_CLASSES_ROOT — это просто объединенное представление, которое содержит ключи, подразделы и значения из этих двух местоположений:
HKEY_CURRENT_USER\Software\Classes HKEY_LOCAL_MACHINE\Software\Classes
И если идентичные ключи и значения существуют под обоими, те в HKEY_CURRENT_USER имеют приоритет. Итак, вы можете угнать HKEY_CLASSES_ROOT\mscfile
создав следующий ключ:
HKEY_CURRENT_USER\Software\Classes\mscfile\shell\open\command
Вредоносная программа или скрипт может установить (default)
соответственно оцените данные, чтобы команда / сценарий PowerShell могла выполняться с полными административными привилегиями / высокой целостностью, даже без ведома пользователя.
Таким образом, путем захвата HKEY_CLASSES_ROOT, eventvwr.exe может быть эффективно использован в качестве программы запуска для произвольного выполнения любой программы — даже загружать полезную нагрузку вымогателей с удаленного сервера и запускать ее с помощью PowerShell.exe с правами администратора.
Это очень эффективный метод обхода UAC, так как он не требует удаления файлов, внедрения DLL или чего-либо еще. Конечно, этот эксплойт UAC работает только тогда, когда вы вошли в систему как администратор.
Это изменилось в предварительной версии Creators Update build 15007. К счастью, в 15007 году Microsoft исправила eventvwr.exe — она больше не выполняет MSC-файл. Вместо этого он создает процесс MMC.exe напрямую — сопоставление файлов не используется.
Спасибо Мэтту Нельсону (@ enigma0x3), который обнаружил этот метод обхода, и FireF0X (@ hFireF0X), который уведомил, что эта проблема решена в 15007 году, где eventvwr.exe использует CreateProcess для запуска mmc.exe вместо ShellExecute. См. Также: Microsoft Windows — Повышение привилегий в обход обхода без защиты файлов UAC