Как проверить ворд на вирусы


В последних версиях Microsoft Office по умолчанию документы сохраняются в формате, основанном на Office Open XML, но Microsoft не во всем следует открытому стандарту. Вариант Microsoft часто называют MOX, Microsoft Open XML. Этот самый MOX имеет уязвимости, создающие угрозы безопасности. В этой статье мы подробно разберем одну из таких дыр, которая на момент статьи так и не закрыта.

Почти сразу после публикации чернового варианта OOXML началась битва за его стандартизацию. Вот краткая хронология версий.


В 2016 году были выпущены дополнения к 5-ой версии: ISO/IEC 29500-1:2016 и ISO/IEC 29500-4:2016. Работа над стандартом продолжается, а компания Microsoft допускает все больше проприетарных особенностей его реализации в последних версиях Office. Хуже того: Microsoft не признает старые уязвимости, оставляя их в новых версиях. Вы не поверите, но описываемая в данной статье уязвимость известна с Office 2013 и актуальна вплоть до Office 2019.

Я возьму на себя смелость указать на два критичных с точки зрения безопасности недостатка MOX, унаследованных от OOXML:

  • возможность легкого редактирования внутренней структуры документов;
  • отсутствие проверок на злонамеренную модификацию.

Если в документ вставлен объект, загружаемый с внешнего ресурса (например, ссылка на видео), то в соответствующей секции создается легко читаемая (и так же просто изменяемая) гиперссылка. Это прямая дорога к фишингу или запуску троянов в один клик.

Описание уязвимости

Начиная с Office 2013 в OOXML стал доступен класс WebVideoProperty. Он используется в разметке при вставке в документ онлайн-видео и описывает параметры его воспроизведения через набор атрибутов.

Поиск объекта подмены


Сохраним и закроем его. Обратите внимание, что размер файла почти не изменился. У меня он занимал несчастные килобайты. Значит, вставленное видео не сохраняется локально, а всегда запрашивается из интернета по известной ссылке.

Следующим шагом нам надо заглянуть в нутро документа. Меняем расширение .docx на .zip, открываем любым архиватором и видим содержимое.

В папке \word нам нужен файл document.xml. Разархивируем и откроем его на редактирование (подойдет и простой Notepad, хотя Notepad++ намного удобнее из-за подсветки синтаксиса).

В скудной документации о классе WebVideoProperty указано, что в теле документа он именуется wp15:webVideoPr. Находим эту секцию и смотрим ее содержание.


wp15:webVideoPr в структуре файла document.xml

Конструкция изначально выглядит следующим образом:

Атрибут embeddedHtml содержит iframe YouTube, который при замене на HTML или JavaScript будет выполняться. А это не что иное, как уязвимость!

Эксплуатация уязвимости

Если внимательно посмотреть на содержимое секции, то можно заметить, что символы заменены на . Это способ записи символьных данных без использования раздела CDATA. Они указывают парсеру на то, что эта часть документа не содержит разметки. Так же мы должны поступить со всеми нашими спецсимволами.

Еще стоит отметить, что все параметры отделены друг от друга точкой с запятой. Если мы пропустим хотя бы одну из них, то при открытии документа произойдет ошибка проверки целостности файла. Правда, Word облегчает задачу, подсказывая, где именно мы ошиблись (см. скриншот).


Ошибка Word при неправильном синтаксисе document.xml


Давайте удалим все, что находится между кавычками, и попробуем вставить свой HTML-код. Сначала добавим отображаемую часть ссылки:

В нашем случае она будет выглядеть следующим образом:

Хакер

Теперь подменим исходную ссылку на ролик с YouTube своей. Например, загрузим какой-нибудь файл на компьютер жертвы.

Далее нам необходимо все это указать в embeddedHtml:

Теперь сохраним наш измененный файл и запустим его.

Для первой проверки я подготовил имитацию жертвы — компьютер с Windows 10 (1803) и MS Office 2016 Professional Plus VL x86, который мы и будем атаковать.

После запуска файла не видно ничего необычного. Открывается документ со вставленным видеороликом. При наведении курсора отображается корректная ссылка на него. Но, если нажать на воспроизведение, вместо видео отобразится наша ссылка.


Действие после активации воспроизведения

В реальном сценарии вместо хакер лучше написать что-то более подходящее для фишинга. Например, Click to begin playback.

Может быть, со времен Office 2016 уязвимость уже пофиксили? Давайте проверим, сработает ли этот способ в Microsoft Office Pro Plus 2019 и Windows 10 (1803).


Открытие фишинговой ссылки при клике в окне предпросмотра видеоролика

Примечания

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

При нажатии левой кнопки мыши с клавишей Ctrl и без нее Word обращается к разным секциям документа. В первом случае он считывает подмененную ссылку из word\document.xml и предлагает выполнить переход по ней. Во втором — считывает оригинальную ссылку на видеоролик из word\_rels\document.xml.rels и запускает его.

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

Также заметь, что при нажатии левой кнопкой мыши с Ctrl откроется браузер, установленный по умолчанию. Если же просто кликать, то (вредоносная) ссылка всегда будет открываться в браузере. Это еще один вектор атаки при проведении пентеста.

В зависимости от версий ОС и Office, а также настроек безопасности у жертвы могут сработать другие компоненты защиты. Например, Office 2010 ограниченно поддерживает OOXML. Он предложит разрешить редактирование документа прежде, чем позволит кликнуть на превью видео. В Windows 7 IE выдаст предупреждение при открытии ссылки.


Предупреждение в Windows 7

С Windows 10 наблюдается совсем другая картина. В настройках по умолчанию (а у потенциальной жертвы они, как правило, такие) ни IE, ни Edge ни о чем не предупреждают. Ссылка открывается без дополнительных действий. Отсюда можно сделать парадоксальный вывод о том, что новая операционная система оказалась более уязвима к подобным атакам.

Для дополнительной проверки я открывал файл с измененной ссылкой в следующих офисных пакетах:

  • Open Office 4.1.6;
  • Libre Office 6.1.3;
  • Soft Maker Office 2018.

Все они официально поддерживают OOXML, причем в точном соответствии со стандартом ISO/IEC 29500. Ни один из них не подвержен рассмотренной уязвимости, поскольку все вольности Microsoft игнорируются. Получает, что пользователь лучше защищен благодаря отсутствию поддержки проприетарной функции вставки онлайн-видео… но ведь, кроме роликов, в документы можно вставлять и другие объекты.

Выводы

Пример.
Создаем папку, открываем её и создаём в ней документ Word. Не открывая файл Word, выходим из папки. Кликаем на папку и выбираем - ПРОВЕРИТЬ НА ВИРУСЫ. В окне проверки видим - ПРОВЕРЕНО 1 ОБЪЕКТОВ, УГРОЗ НЕ ОБНАРУЖЕНО.

Открываем папку, открываем документ Word, набираем хотя бы одну букву "а", закрываем документ Word, сохраняем, выходим из папки, кликаем на папку и выбираем - ПРОВЕРИТЬ НА ВИРУСЫ. В окне проверки уже видим - ПРОВЕРЕНО 13 ОБЪЕКТОВ, УГРОЗ НЕ ОБНАРУЖЕНО.

Вопрос. Откуда KIS 2011 находит и проверяет в папке 13 ОБЪЕКТОВ? Если в папке только всего лишь один документ Word.

Но при повторной проверки (сразу же после первой проверки) в окне проверки видим - ПРОВЕРЕНО 1 ОБЪЕКТОВ, УГРОЗ НЕ ОБНАРУЖЕНО.



  • Участники

  • Золотые бета-тестеры



  • Cообщений: 292
  • только что созданный документ - это пустой файл, то есть он один. а документ с содержанием (той же набранной буквой "а") - это уже архив

    Office Open XML (OOXML, DOCX, проект ISO/IEC IS 29500:2008) — серия форматов файлов для хранения электронных документов пакетов офисных приложений — в частности, Microsoft Office. Формат представляет собой zip-архив, содержащий текст в виде XML, графику и другие данные

    только что созданный документ - это пустой файл, то есть он один. а документ с содержанием (той же набранной буквой "а") - это уже архив



  • Участники

  • Золотые бета-тестеры



  • Cообщений: 292
  • Определение, что такое докумен Word мало интересует.
    Вопрос. Откуда KIS 2011 находит и проверяет в папке 13 ОБЪЕКТОВ? Если в папке только всего лишь один документ Word.
    Но при повторной проверке и последующих (сразу же после первой проверки) в окне проверки видим уже - ПРОВЕРЕНО 1 ОБЪЕКТОВ, УГРОЗ НЕ ОБНАРУЖЕНО.

    если я не ошибаюсь.
    первая проверка (файл пустой) - программа проверяет его, вложений нет - один объект
    вторая проверка - проверяется архив с вложениями - 13 объектов + снимается контрольная сумма (технология iChecker)
    третья (n'ая) проверка - так как контрольные суммы совпадают, архив не распаковывается, и вложенный файлы не проверяются - программа считает архив за один файлы

    если внести изменения в файл, то повторится все, начиная со второго пункта



  • Консультанты











  • Cообщений: 7206




  • Откуда KIS 2011 находит и проверяет в папке 13 ОБЪЕКТОВ

    после первой проверки) в окне проверки видим уже - ПРОВЕРЕНО 1 ОБЪЕКТОВ

    действует оптимизация: только новые + iSwift

    + снимается контрольная сумма (технология iChecker)

    Ограничения технологии iChecker:

    Технология поддерживает ограниченное число форматов (exe, dll, lnk, ttf, inf, sys, com, chm, zip, rar).



  • Участники

  • Золотые бета-тестеры



  • Cообщений: 292
  • Технология поддерживает ограниченное число форматов (exe, dll, lnk, ttf, inf, sys, com, chm, zip, rar).



  • Консультанты











  • Cообщений: 7206






  • Участники

  • Золотые бета-тестеры



  • Cообщений: 292
  • а по расширению как-то не очень.

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



  • Консультанты











  • Cообщений: 7206




  • получается iChecker проверяет по расширению .zip? я правильно понял?




    Можно включить в отчётах запись некритических событий и посмотреть - возможно там будет записано срабатывание алгоритма оптимизации. Проверить не могу- нет нового ворда под рукой.

    PS проверил на опеноффисе - действительно срабатывает оптимизация, iSwift. - как и у Alexey-smol на обычном офисе.



  • Участники

  • Золотые бета-тестеры



  • Cообщений: 292
  • Можно включить в отчётах запись некритических событий и посмотреть - возможно там будет записано срабатывание алгоритма оптимизации. Проверить не могу- нет нового ворда под рукой.

    оказывается, срабатывает не iChecker, а iSwift

    после перемещения на другой диск архив при проверке был снова распакован. получается, iChecker проверяет по расширению.



  • Консультанты











  • Cообщений: 7206




  • получается iChecker проверяет по расширению .zip? я правильно понял?

    получается, iChecker проверяет по расширению.

    Глобальная сеть Интернет предоставляет небывалые возможности для создания единого мирового информационного поля и потому завоевала огромную популярность. Являясь чрезвычайно удобным средством для представления и передачи самой разнообразной информации, сеть Интернет внедряется во все области человеческой деятельности, от развлечения до бизнеса и науки.

    Однако блуждая по бескрайним просторам всемирной паутины, вы подвергаете свой компьютер опасности вирусного заражения. Вы можете получить вирус, загрузив из сети новую программу и запустив ее без проверки, получив по электронной почте документ в формате текстового процессора Microsoft Word for Windows, зараженный макрокомандным вирусом, или даже просто заглянув на "троянскую" страницу сервера WWW и заразившись вирусом от недоброкачественного органа управления ActiveX, расположенного там по незнанию или намеренно.

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

    Электронная почта существует практически в любой глобальной сети. Удобство и высокая скорость работы электронной почты привела к тому, что обычная почта была почти полностью вытеснена из повседневной деловой переписки. В настоящее время многие фирмы понесли бы значительные убытки, если бы электронная почта вдруг исчезла. Но так как электронная почта позволяет передавать в закодированном виде произвольные двоичные файлы, она может служить каналом для распространения вирусов.

    Абонент может прислать вам по почте зараженную программу, в результате запуска которой вирус проникнет на локальный диск вашего компьютера. Другая возможность для передаче вируса открывается в результате передачи через электронную почту документов, созданных офисными приложениями, такими как Microsoft Word for Windows, Microsoft Excel for Windows и аналогичными. Эти документы содержат в себе макрокоманды, которые представляют собой небольшие программы. Если открыть документ, содержащий вирусные макрокоманды, вирус может заразить ваш компьютер.

    Серверы FTP специально предназначены для обмена произвольными файлами. Именно поэтому они представляют собой потенциальное средство для распространения вирусов в этой глобальной сети.

    Большинство серверов FTP допускают только чтение файлов, в результате которого файлы переписываются с дисков сервера на диски локального компьютера. Однако существуют серверы FTP, которые допускают запись файлов на его диски. В результате удаленный пользователь случайно или намеренно может записать на сервер FTP зараженную программу или документ, содержащий макрокомандный вирус. Если после этого зараженный файл будет переписан другим пользователем, начнется распространение вируса по глобальной сети.

    Электронные конференции или, как их еще называют, сетевые новости, также как электронная почта, давно существуют в сети Интернет. Являясь одним из самых демократичных средств распространения информации в мире, электронные конференции позволяют организовать дискуссии по самым различным темам.

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

    До сих пор не наблюдалось лавинообразного роста количества случаев распространения вирусов через серверы WWW, однако такая возможность существует. Несмотря на то что серверы WWW предназначены для размещения в сети Интернет мультимедийной информации (главным образом это текст, графика, звук и видео), на дисках такого сервера могут лежать программные файлы и документы офисных приложений, содержащие макрокоманды. Более того, при загрузке с сервера эти программы могут автоматически запускаться, а документы - автоматически открываться для просмотра или редактирования. Все это создает благоприятные условия для распространения вирусов, так как при автоматическом запуске пользователь может отказаться от антивирусной проверки полученной программы.

    Использование новой технологии объектов ActiveX создает потенциальную угрозу распространения вирусов и троянских программ через серверы WWW. Напомним, что такой объект размещается на сервере WWW и перед запуском загружается в адресное пространство удаленного компьютера. Таким образом, объект ActiveX представляет собой программу, которая автоматически запускается на компьютере удаленного пользователя и, возможно, может делать там практически что угодно. В частности, не исключено, что она может получить доступ к файловой системе и заразить компьютер вирусом.

    Для того чтобы хоть как-то оградить пользователей от такой угрозы, корпорация Microsoft разработала технологию сертификации объектов ActiveX. Для использования этой технологии пользователям предлагается составить на своем компьютере список фирм-разработчиков, которым можно доверять. Объекты ActiveX, созданные такими фирмами, будут загружаться с сервера WWW без дополнительных вопросов. Что же касается прочих объектов ActiveX, то здесь пользователю предлагается сделать самостоятельный выбор - запускать такой объект или отказаться от запуска.

    Программы, составленные на языке Java, не представляют угрозу для распространения вирусов, так как они не имеют доступа к файловой системе удаленного компьютера. Такое ограничение, однако, может привести к их вытеснению менее "осторожными", но более многофункциональными объектами ActiveX.

    Хорошим правилом должна стать проверка всех программных файлов и файлов документов, полученных из сети Интернет, специальными антивирусными средствами. Не следует торопиться запускать новую программу или открывать новый файл документа - в них может притаиться опасный вирус.

    Читайте также:

    Пожалуйста, не занимайтесь самолечением!
    При симпотмах заболевания - обратитесь к врачу.

    Copyright © Иммунитет и инфекции