Введение
Уязвимость Windows Metafile, также известная как Metafile Image Code Execution и сокращенно MICE, — это уязвимость в системе безопасности, связанная с тем, как некоторые версии операционной системы Microsoft Windows обрабатывают изображения в формате Windows Metafile. Она позволяет выполнять произвольный код на уязвимых компьютерах без ведома или разрешения пользователей. Уязвимость была обнаружена 27 декабря 2005 года, и первые сообщения о затронутых компьютерах появились в течение 24 часов. Microsoft выпустила критически важное обновление для устранения этой уязвимости через Windows Update 5 января 2006 года. Атаки, использующие эту уязвимость, известны как эксплойты WMF. Уязвимость была обнаружена в файле gdi32.dll и присутствовала во всех версиях Microsoft Windows от Windows 3.0 до Windows Server 2003 R2. Однако векторы атак существуют только в версиях Windows, основанных на NT (Windows NT, Windows 2000, Windows XP и Windows Server 2003). Эксплойты, использующие эту уязвимость в системах на базе Windows NT, способствовали распространению различных типов вредоносного ПО, как правило, через загрузки с веб-сайтов. Ввиду серьезности последствий, эта уязвимость получила премию Pwnie Award 2007 года в категориях "Массовое заражение" и "Обрушение Интернета".
Затронутые системы
Все версии операционной системы Microsoft Windows поддерживают графический стандарт Windows Metafile. Все версии, начиная с Windows 3.0 и заканчивая Windows Server 2003 R2, содержат эту уязвимость в системе безопасности. Однако Windows NT 4.0 и Windows XP, если не установлены обновления, более уязвимы, чем предыдущие версии, поскольку их установка по умолчанию включает возможность выполнения кода Windows Metafile, являющегося источником уязвимости. Операционные системы Windows, в которых отключен предварительный просмотр изображений или для которых активирована аппаратная защита от выполнения данных (DEP) для всех приложений, не должны быть подвержены данной эксплуатации. Операционные системы, отличные от Windows (например, macOS, Unix, Linux и т.д.), не затронуты напрямую. Однако система, работающая не под управлением Windows, может стать уязвимой, если на ней запущено программное обеспечение для просмотра файлов Windows WMF. Это может включать программное обеспечение, которое интегрирует или клонирует собственный графический интерфейс устройства (GDI) Windows, динамическую библиотеку (DLL), или запускает программы Windows или для Windows через эмулятор или слой совместимости. Например, Unix-подобная система, использующая Wine для эмуляции Windows, может быть скомпрометирована. Гибсон разработал программу MouseTrap, которую его компания распространяет бесплатно, для обнаружения уязвимости Windows Metafile в системах, работающих под управлением Windows и эмуляторов Windows.
Распространение и заражение
Компьютеры могут быть заражены через распространение инфицированных электронных писем, содержащих взломанный файл WMF в качестве вложения. Заражение также может произойти в результате:
Просмотра веб-сайта в веб-браузере, который автоматически открывает файлы WMF, в этом случае любой потенциально вредоносный код может быть автоматически загружен и запущен. Internet Explorer, браузер по умолчанию для всех версий Microsoft Windows с 1996 года по Windows 10, делает это. Просмотра инфицированного файла в проводнике Windows (Windows Explorer). Просмотра инфицированного файла изображения с использованием уязвимых программ просмотра изображений. Просмотра или открытия инфицированных электронных писем в устаревших версиях Microsoft Outlook и Outlook Express. Индексирования жесткого диска, содержащего инфицированный файл, с помощью Google Desktop. Перехода по ссылке через программу мгновенных сообщений, такую как Windows Live Messenger, AOL Instant Messenger (AIM) или Yahoo! Messenger. Для распространения заражения могут использоваться и другие методы. Поскольку проблема кроется в операционной системе, использование браузеров, отличных от Microsoft, таких как Firefox или Opera, не обеспечивает полной защиты. Пользователям обычно предлагается загрузить и просмотреть вредоносный файл, что приводит к заражению компьютера. Инфицированные файлы могут загружаться автоматически, что создает возможность заражения при индексировании диска или случайном предварительном просмотре. По оценкам антивирусной компании McAfee, эта уязвимость использовалась для распространения бэкдора Bifrost. Другие виды вредоносного ПО также использовали эту уязвимость для доставки различных вредоносных нагрузок. McAfee утверждает, что к 31 декабря 2005 года первое поколение таких эксплойтов было обнаружено более чем у 6% их клиентской базы.
Viewing a website in a web browser that automatically opens WMF files, in which case any potential malicious code may be automatically downloaded and opened. Internet Explorer, the default Web browser for all versions of Microsoft Windows since 1996 through Windows 10, does this. Previewing an infected file in Windows Explorer. Viewing an infected image file using some vulnerable image viewing programs. Previewing or opening infected emails in older versions of Microsoft Outlook and Outlook Express. Indexing a hard disk containing an infected file with Google Desktop. Clicking on a link through an instant messaging program such as Windows Live Messenger, AOL Instant Messenger (AIM) or Yahoo! Messenger. Other methods may also be used to propagate infection. Because the problem is within the operating system, using non Microsoft browsers such as Firefox or Opera does not provide complete protection. Users are typically prompted to download and view a malicious file, infecting the computer. Infected files may be downloaded automatically, which opens the possibility for infection by disk indexing or accidental previewing. According to assessments from the McAfee antivirus company, the vulnerability has been used to propagate the Bifrost backdoor trojan horse. Other forms of malware have also exploited the vulnerability to deliver various malicious payloads. McAfee claims that the first generation of such exploits had been encountered by more than 6% of their customer base by December 31, 2005.
Официальный пластырь
Microsoft выпустила официальный патч для устранения проблемы 5 января 2006 года. Этот патч может быть применен вместо других корректирующих мер. Официальный патч доступен для Windows 2000, Windows XP и Microsoft Windows Server 2003. Windows NT 4 и другие устаревшие операционные системы не получили патч, так как к тому времени Microsoft прекратила их поддержку. Стив Гибсон в своем подкасте Security Now! № 20 заявил, что его компания Gibson Research Corporation предоставит патч для систем Windows 9x, если Microsoft этого не сделает. После дальнейших исследований Стив Гибсон сообщил в более позднем подкасте Security Now! № 23, что Windows 9x и ME не подвержены уязвимости и не требуют установки патча. Пользователи Windows 9x/ME могут запустить его утилиту Mouse Trap, чтобы убедиться в этом самостоятельно. Паоло Монти из Future Time, итальянского дистрибьютора антивирусной системы Eset NOD32, предоставил бесплатный патч для Windows NT. Патч работает на более старых операционных системах, но предоставляется без гарантий. Сообщалось, что официальный патч устанавливается автоматически, даже если в Windows Automatic Update настроено требование подтверждения перед установкой автоматически загруженных обновлений. Это приводит к автоматической перезагрузке, которая может вызвать потерю данных, если у пользователя открыта программа с несохраненными изменениями.
Другие корректирующие меры
Эти меры представляют исторический интерес только для систем, обновленных 5 января 2006 года или позднее.
Обход
В качестве временного решения до выхода исправления, 28 декабря 2005 года Microsoft рекомендовала пользователям Windows отменить регистрацию файла динамической библиотеки shimgvw.dll (что можно сделать, выполнив команду regsvr32.exe /u shimgvw.dll из меню "Выполнить" или командной строки), который отвечает за предварительный просмотр файлов изображений и используется в большинстве этих атак. После установки исправления DLL можно повторно зарегистрировать, запустив regsvr32.exe shimgvw.dll. Это решение блокирует распространенный вектор атаки, но не устраняет уязвимость.
Третьей стороной пластырь
31 декабря 2005 года Ильфак Гильфанов выпустил сторонний патч для временного отключения уязвимого вызова функции в gdi32.dll. Этот неофициальный патч получил широкую известность из-за отсутствия официального решения от Microsoft, получив рекомендации SANS Institute Internet Storm Center и F Secure. Из-за большого внимания, включая косвенное упоминание на Slashdot, сайт Гильфанова столкнулся с перегрузкой и был приостановлен 3 января 2006 года; однако патч оставался доступным для загрузки с нескольких зеркал, включая сайт Internet Storm Center. 4 января сайт Гильфанова возобновил работу в урезанном виде. Прекратив размещать патч непосредственно на сайте из-за проблем с пропускной способностью, главная страница содержала список зеркал, где пользователи могли загрузить патч и соответствующую утилиту для проверки уязвимости, а также MD5-контрольную сумму файла для проверки его подлинности. После выпуска патча от Microsoft, Гильфанов отозвал свой.
Методы снижения риска
Microsoft заявляет, что его патч устраняет некорректную функциональность в GDI32, которая допускала уязвимость WMF. Для компьютеров с незащищенной версией Windows рекомендовался многоуровневый подход к защите, чтобы снизить риск заражения. Различные источники рекомендуют меры по смягчению последствий, включающие:
Использование аппаратного обеспечения для предотвращения выполнения данных, эффективно для всех приложений. Установите приложение по умолчанию для открытия WMF таким образом, чтобы оно не было уязвимо для заражения, например, Блокнот. Не используйте Internet Explorer или, по крайней мере, отключите загрузки, установив максимальные настройки безопасности по умолчанию. Поддерживайте актуальность всего антивирусного программного обеспечения. Рассмотрите возможность частых ручных обновлений. Блокируйте все файлы WMF на периметре сети с помощью фильтрации заголовков файлов. Используйте учетные записи пользователей, настроенные только с необходимыми правами. Отключите загрузку изображений в Internet Explorer и всех других браузерах. Отключите загрузку изображений в Outlook Express. Отключите гиперссылки в MSN Messenger. Отключите службу индексирования в Windows 2000, Windows XP и Windows Server 2003. Отключите приложения Desktop Search, такие как Google Desktop или Windows Desktop Search, до устранения проблемы. Согласно статье SANS Institute Internet Storm Center, использование веб-браузера, отличного от Internet Explorer, может обеспечить дополнительную защиту от этой уязвимости. В зависимости от настроек, эти браузеры могут запрашивать подтверждение пользователя перед открытием изображения с расширением wmf, но это лишь снижает вероятность открытия вредоносного метафайла Windows и не защищает от эксплуатации уязвимости, поскольку эти браузеры все равно открывают метафайл, если он замаскирован под другой формат. Лучше полностью отключить загрузку изображений в любом используемом браузере.
Making use of hardware enforced Data Execution Prevention effective for all applications. Set the default WMF application to be one not susceptible to infection, such as Notepad. Do not use Internet Explorer, or at least turn off downloads by setting the default security settings to high. Keep all anti virus software up to date. Consider frequent manual updates. Block all WMF files on the network perimeter by file header filtering. Making use of users accounts that are configured with only the user rights that are required. Disable image loading in Internet Explorer and all other browsers. Disable image loading in Outlook Express. Disable hyperlinks in MSN Messenger. Disable the Indexing Service on Windows 2000, Windows XP and Windows Server 2003. Disable Desktop Search applications such as Google Desktop or Windows Desktop Search until the problem is corrected. According to SANS Institute Internet Storm Center article, using a web browser other than Internet Explorer may offer additional protection against this vulnerability. Depending on settings, these browsers may ask the user before opening an image with the wmf extension, but this only reduces the chance of opening the maliciously crafted Windows Metafile, and does not protect against the vulnerability being exploited as these browsers still open the metafile if it is masquerading as another format. It is better to entirely disable image loading in any browser used.
Обвинения
В 2006 году Стив Гибсон предположил, что необычный характер "ошибки" указывал на то, что уязвимость на самом деле является преднамеренно встроенной лазейкой в систему. Это обвинение переросло в утверждение и распространилось по интернету как слух после того, как технологический новостной сайт Slashdot осветил спекуляции Гибсона. А Томас Грин, в статье для The Register, объяснил ошибку Гибсона "нехваткой опыта в сфере безопасности" и назвал его "дилетантским экспертом".