Уязвимость связанна с тем, что процесс dllhost.exe при обработке запросов пользователя заимствует права у системной учетной записи. Так как процесс dllhost.exe выполняется с привилегиями IWAM_machinename, атакующий может манипулировать памятью процесса и
"украсть" системные привилегии, когда процесс заимствует права у системной учетной записи. Другими словами, атакующий может выполнить произвольный код с системными привилегиями.
Microsoft IIS обеспечивает два способа защиты - "in-process" и " out-of-process" режимы. Если IIS работает в "in-process режиме", .asp запросы и ISAPI dll выполняются внутри inetinfo.exe процесса, который запущен с системными привилегиями. Нападающий может получить системные привилегии контролируя память процесса.
Если IIS установлен в и "out-of-process" режиме, .asp запросы и ISAPI dll выполняются в пределах процесса dllhost.exe, который работает с привилегиями IWAM_machinename. Атакующий, в случае успешного нападения, может получить привилегии IWAM_machinename.
dllhost.exe процесс вызывает функцию ole32!CoImpersonateClient, чтобы обработать запрос пользователя. Если функция CoImpersonateClient возвращает успешный ответ, процесс временно получает системные привилегии. Позже он вызывает функцию RevertToSelf, чтобы уничтожить системные привилегии, и заново получить IWAM_machinename привилегии.
Поскольку процесс dllhost.exe выполнен с IWAM_machinename привилегиями, нападающий может
управлять памятью процесса, и украсть SYSTEM привилегии, во время, когда процесс заимствует привилегии у системной учетной записи.
Например, злоумышленник может заставить процесс dllhost.exe вызвать функцию MyCoImpersonateClient вместо ole32!CoImpersonateClient, используя технику API hooking. Нападающий может подделать функцию MyCoImpersonateClient, и выполнить произвольный код с системными привилегиями.
Другой метод состоит в том, что атакующий может приложить dllhost.exe процесс к отладчику и изменить содержание памяти dllhost.exe процесса.
Уязвимость обнаружена в IIS 4.0, 5.0, 5.1.