Компания Intel обновила диагностический инструмент IPDT (Intel Processor Diagnostic Tool), устранив уязвимости, позволяющие выполнить произвольный код с высокими привилегиями. Выпуск IPDT 4.1.0.27, появившийся в мае, также содержит заплатку для бреши, грозящей отказом в обслуживании.

Уязвимости в данной программе, предназначенной для проверки функциональности микропроцессоров Intel, обнаружил ИБ-исследователь Штефан Кантак (Stephan Kanthak). Информация об этих брешах была раскрыта в начале июля в рамках рассылки Full Disclosure на сайте Seclists.org.

Степень опасности багов повышения привилегий в IPDT прежних сборок (4.1.0.24 и ниже) оценена в 8,6 балла по шкале CVSS. Согласно бюллетеню Intel, уязвимостям присвоены идентификаторы CVE-2018-3667 и CVE-2018-3668. Причиной возникновения этих брешей является создание IPDT трех файлов с некорректными разрешениями.

По словам Кантака, этот инструмент, запускаемый с привилегиями администратора, представляет собой исполняемый самораспаковывающийся zip-архив, содержащий инсталляторы setup.exe и setup64.exe, а также сценарий пакетной обработки setup.bat. Как оказалось, после извлечения эти файлы сохраняются в папку %TEMP% без надлежащей защиты, но при этом сохраняют унаследованные разрешения на доступ. В итоге непривилегированный пользователь может подменить любой из этих файлов, и он будет запущен на исполнение.

Исследователь также отметил, что путь поиска исполняемого файла на Windows Vista и более новых версиях ОС не всегда включает текущий рабочий каталог. Поскольку скрипт setup.bat привлекает setup.exe и setup64.exe без указания пути, командный процессор, не обнаружив эти файлы в своем текущем каталоге, проводит поиск в папке  %PATH%, доступной непривилегированному пользователю. В итоге тот может создать вредоносные setup.exe и setup64.exe в произвольной директории, добавив ее в %PATH%, и выполнить их с повышенными привилегиями.

Более того, инсталляторы setup.exe и setup64.exe в силу своих особенностей загружают множество системных библиотек Windows из своего каталога приложения в директории %TEMP%, а не из системного каталога Windows. Эти библиотеки тоже можно подменить вредоносными из-под учетной записи обычного пользователя, и они будут загружены и запущены на исполнение с расширенными правами.

Эксплуатация всех этих уязвимостей, по свидетельству Кантака, возможна и без повышения привилегий, так как при установке Windows создается учетная запись администратора, под которой зачастую и работают потом все пользователи. «Согласно статистике Microsoft, она получает телеметрические данные примерно с 600 млн установленных Windows; половина из них, а то и три четверти имеют лишь ОДИН активный аккаунт пользователя», — сетует исследователь.

Отсутствие строгого разделения прав обычного пользователя и администратора также позволяет вызвать отказ в обслуживании. Папка с произвольным именем, создаваемая IPDT в %TEMP% для размещения своей копии, наследует список контроля доступа (ACL) к файловой системе NTFS у этой директории — как и сама копия. Если запретить выполнение файлов из %TEMP%, это повлечет отказ IPDT.

Категории: Главное, Уязвимости