Обнаружена критическая 0day-уязвимость во всех версиях MS Word

a360b9f4f2834a81ba08c9cb337fca7b.pngMcAfee и FireEye сообщили об обнаружении реальных атак на пользователей Microsoft Word через новую 0day-уязвимость, для которой пока не выпущено патча. Уязвимость позволяет незаметно выполнить на компьютере жертвы произвольный код и установить вредоносное программное обеспечение. Что самое неприятное, уязвимости подвержены все версии MS Word на всех версиях Windows, в том числе последняя версия Office 2016 под Windows 10, даже с отключенными макросами.

Microsoft уведомлена об уязвимости и должна успеть подготовить патч к обновлению безопасности Patch Tuesday, которое состоится завтра, 11 апреля. Впрочем, как показывает история с похожей 0day-уязвимостью CVE-2014–4114/6352 (aka Sandworm), компании Microsoft не всегда удаётся закрыть 0day с первого патча.
Исследователи из McAfee пишут, что обнаружили первые атаки с использованием этого 0day в январе текущего года. Судя по всему, они только недавно получили образцы вредоносного кода, так что смогли подробно проанализировать механизм заражения.

Во время атаки используются файлы Word (конкретно, документы RTF с расширением .doc).

Если в Microsoft Word отключен защищённый режим Office Protected View, то при открытии документа эксплойт запускается автоматически. После этого процесс winword.exe делает HTTP-запрос к удалённому серверу, откуда скачивает файл HTA (приложение HTML), замаскированное в виде документа RTF. Файл HTA автоматически запускается и исполняет вредоносный скрипт. Этот скрипт закрывает первоначальный заражённый файл Word, а вместо него демонстрирует пользователю подставной текстовый документ. Оригинальный процесс winword.exe закрывается, чтобы скрыть от пользователя окно, которое выводит OLE2Link. Одновременно скрипт скачивает с удалённого сервера дополнительный вредоносный код для установки на компьютере.

При помощи исполнения .hta, пишут исследователи McAfee, авторы эксплойта эффективно обходят все меры по защите памяти, реализованные в Microsoft, а также антивирусную защиту и большинство других методов защиты.

Вот фрагмент коммуникации с сервером:

6bae7591253b2782132d35acf8cbf30d.png

Маскировка HTA в виде документа RTF осуществляется для обхода антивирусных программ, если таковые установлены на компьютере жертвы. В нижней части этого документа записаны вредоносные скрипты Visual Basic, которые и делают всю работу.

bbaecabf1343bc2080f72b0ccab78200.png

Эксперты McAfee пишут, что данная 0day-уязвимость связана с работой функции Object Linking and Embedding (OLE) — важной части функциональности Office, которая фактически позволяет встраивать одни документы внутрь других. Эта функция неоднократно использовалась для различных атак. Например, ещё в 2015 году те же специалисты McAfee подготовили презентацию для хакерской конференции Black Hat USA, в которой рассказали о возможных векторах атаки через OLE.

Сотрудники компании FireEye утверждают, что они обнаружили эту уязвимость раньше McAfee и первыми отправили сообщение в Microsoft, но сохраняли молчание до выпуска патча. После публикации поста в блоге McAfee молчать уже нет смысла, так что они тоже отчитались о том, что удалось понять после анализа этого эксплойта.

В продуктах FireEye вредоносные документы определяются как Malware.Binary.Rtf.

Специалисту по безопасности Микко Хиппонену стало известно, что Microsoft точно выпустит патч для этой уязвимости в ближайший Patch Tuesday, то есть завтра, 11 апреля 2017 года.


До установки патча можно заблокировать RTF в реестре таким способом: установить значение в реестре
Software\Microsoft\Office\15.0\Word\Security\FileBlock\RtfFiles в значение 2, а OpenInProtectedView в значение 0. В этом случае при попытке открыть файл в формате RTF будет возникать такое сообщение:

6623566ed8142fc92547ed4c66ab268f.jpg

Кстати, это рекомендация от Райана Хансона (Ryan Hanson), который утверждает, что именно он обнаружил эту 0day в июле, а сообщил о ней в октябре 2016 года. А сейчас её разгласили посторонние лица. Если он говорит правду, то Microsoft действительно очень долго закрывает критические уязвимости.

This tweet is my acknowledgement a MS Word 0day I discovered in July, and disclosed in October, has been publicly disclosed by someone else.

 — Ryan Hanson (@ryHanson) April 9, 2017


Но тесты показали, что при открытии в защищённом режиме Office Protected View эксплойт не может запуститься на исполнение, так что блокировать RTF — это крайняя мера.

В любом случае, всем пользователям Microsoft Office в ближайшее время настоятельно рекомендуется:

  • Не открывать никакие документы Office, полученные из ненадёжных источников.
  • Включить защиту Office Protected View.


b4bde8be90dacbeea6aba42bc1b417a0.jpg

Антивирусные компании не говорят, кто стал жертвами атак. Но из прошлого опыта известно, что такие 0day часто применяются в нацеленных атаках по государственному заказу. Странно, что Microsoft так долго работает над патчем.

© Geektimes