Please note, if you want to make a deal with this user, that it is blocked.
Благодаря публикации FireEye стало известно об эксплуатации CVE-2017-0199 в различных компаниях по распространению вирусов (например Dridex).
Уязвимость заключается в использовании OLEv2-ссылок в теле документа.
Итак, а что это за объекты OLEv2? Это в основном объект (файл), который мы включаем в наш файл, и его содержимое будет загружено в документ при открытии. Короче: файл внутри файла.
Этап 1:
На первом этапе мы создадим HTA-файл (это тип файла, который является по факту html-приложением, которое способно интерпретировать Jscript\Vbscript-код).
Для примера мы назовем файл myhta.hta:
Итак, это базовое приложение HTA, без какого-либо пейлоада.
Теперь нам нужно сгенерировать наш vbscript-код для включения в этот hta-файл.
В результате мы получаем следующий пейлоад:
Добавьте этот скрипт в hta-файл:
Обратите внимание, что мы удалили некоторые строки из нашего скрипта, поскольку в данном случае в них нет необходимости для запуска powershell (Если кто-нибудь знает, почему, пожалуйста, дайте мне знать).
Итак, теперь у нас есть наш hta-файл, с нашим пейлоадом в виде реверсивного шелла.
Этап 2:
Следующим шагом на необходимо создать простой RTF-документ используя Windows Word, с любым содержимым внутри. В этом примере вы можете написать "Это просто тест!" и сохранить с названием myrtf.rtf.
Хорошо. Теперь у вас имеется 2 документа, которые вы должны загрузить на веб-сервер:
Этап 3:
Настройте сервер Apache в качестве WebDAV-сервиса:
Далее мы добавим заголовок content-type application/rtf для всех файлов в нашем каталоге /ms и разрешим выполнение запроса PROPFIND, который будет выполнять Microsoft Office.
Для этого откройте файл 000-default.conf расположенный по адресу /etc/apache2/sites-enabled и добавьте в конце следующие строки:
После всех изменений не забудьте перезапустить apache сервер:
Этап 4:
Теперь нам нужно создать другой RTF-файл (тот самый, который мы отправим учебной жертве) и вставить в него ссылку на внешний rtf-файл.
Создайте документ с именем research-doc.rtf и добавьте в него объект:
Английская локализация: Insert -> Object ("Create from File")
Русская локализация: Вставка -> Объект ("Создание из файла")
В имени файла добавьте URL-адрес (http://192.168.XXX.XXX/ms/myrtf.rtf) и отметьте "Связь с файлом/Link to file":
Сохраните файл.
Этап 5:
После того, как вы создали файл, вам необходимо отредактировать его для автоматической загрузки OLE-объекта, а именно добавить objupdate между objautlink and rsltpict в файле research-doc.rtf.
Для этого откройте файл через SublimeText или Notepad++, найдите object и проведите следующую операцию:
замените строку:
Итак, теперь у нас есть наш файл esearch-doc.rtf, который указывает на объект myrtf.rtf, но мы хотим, чтобы он фактически указывал на наш hta-файл.
Переходим к следующему шагу.
Этап 6:
Для этого нам нужно заменить содержимое myrtf.rtf содержимым myhta.hta, а затем изменить заголовок application content-type на hta.
Производим замену содержимого (чтение myhta.hta и перезапись myrtf.rtf):
Отредактируйте конфигурационный файл 000-default.conf, заменив:
После всех изменений не забудьте перезапустить apache сервер:
Этап 7:
Создайте слушающий порт на вашем сервере и откройте документ на удаленном компьютере, имеющим соединение до сервера research-doc.rtf:
Готово. Мы получили шелл.
Примечание: если вам не нравится расширение .rtf, в вашем окончательном документе research-doc.rtf - переименуйте его, например в файл с расширением .doc, он также будет работать
Pasta
Уязвимость заключается в использовании OLEv2-ссылок в теле документа.
Итак, а что это за объекты OLEv2? Это в основном объект (файл), который мы включаем в наш файл, и его содержимое будет загружено в документ при открытии. Короче: файл внутри файла.
Этап 1:
На первом этапе мы создадим HTA-файл (это тип файла, который является по факту html-приложением, которое способно интерпретировать Jscript\Vbscript-код).
Для примера мы назовем файл myhta.hta:
Для просмотра содержимого вам необходимо авторизоваться.
Итак, это базовое приложение HTA, без какого-либо пейлоада.
Теперь нам нужно сгенерировать наш vbscript-код для включения в этот hta-файл.
Для просмотра содержимого вам необходимо авторизоваться.
В результате мы получаем следующий пейлоад:
Для просмотра содержимого вам необходимо авторизоваться.
Добавьте этот скрипт в hta-файл:
Для просмотра содержимого вам необходимо авторизоваться.
Обратите внимание, что мы удалили некоторые строки из нашего скрипта, поскольку в данном случае в них нет необходимости для запуска powershell (Если кто-нибудь знает, почему, пожалуйста, дайте мне знать).
Итак, теперь у нас есть наш hta-файл, с нашим пейлоадом в виде реверсивного шелла.
Этап 2:
Следующим шагом на необходимо создать простой RTF-документ используя Windows Word, с любым содержимым внутри. В этом примере вы можете написать "Это просто тест!" и сохранить с названием myrtf.rtf.
Хорошо. Теперь у вас имеется 2 документа, которые вы должны загрузить на веб-сервер:
Для просмотра содержимого вам необходимо авторизоваться.
Этап 3:
Настройте сервер Apache в качестве WebDAV-сервиса:
Для просмотра содержимого вам необходимо авторизоваться.
Далее мы добавим заголовок content-type application/rtf для всех файлов в нашем каталоге /ms и разрешим выполнение запроса PROPFIND, который будет выполнять Microsoft Office.
Для этого откройте файл 000-default.conf расположенный по адресу /etc/apache2/sites-enabled и добавьте в конце следующие строки:
Для просмотра содержимого вам необходимо авторизоваться.
После всех изменений не забудьте перезапустить apache сервер:
Для просмотра содержимого вам необходимо авторизоваться.
Этап 4:
Теперь нам нужно создать другой RTF-файл (тот самый, который мы отправим учебной жертве) и вставить в него ссылку на внешний rtf-файл.
Создайте документ с именем research-doc.rtf и добавьте в него объект:
Английская локализация: Insert -> Object ("Create from File")
Русская локализация: Вставка -> Объект ("Создание из файла")
В имени файла добавьте URL-адрес (http://192.168.XXX.XXX/ms/myrtf.rtf) и отметьте "Связь с файлом/Link to file":
Сохраните файл.
Этап 5:
После того, как вы создали файл, вам необходимо отредактировать его для автоматической загрузки OLE-объекта, а именно добавить objupdate между objautlink and rsltpict в файле research-doc.rtf.
Для этого откройте файл через SublimeText или Notepad++, найдите object и проведите следующую операцию:
замените строку:
Для просмотра содержимого вам необходимо авторизоваться.
Итак, теперь у нас есть наш файл esearch-doc.rtf, который указывает на объект myrtf.rtf, но мы хотим, чтобы он фактически указывал на наш hta-файл.
Переходим к следующему шагу.
Этап 6:
Для этого нам нужно заменить содержимое myrtf.rtf содержимым myhta.hta, а затем изменить заголовок application content-type на hta.
Производим замену содержимого (чтение myhta.hta и перезапись myrtf.rtf):
Для просмотра содержимого вам необходимо авторизоваться.
Отредактируйте конфигурационный файл 000-default.conf, заменив:
Для просмотра содержимого вам необходимо авторизоваться.
После всех изменений не забудьте перезапустить apache сервер:
Для просмотра содержимого вам необходимо авторизоваться.
Этап 7:
Создайте слушающий порт на вашем сервере и откройте документ на удаленном компьютере, имеющим соединение до сервера research-doc.rtf:
Для просмотра содержимого вам необходимо авторизоваться.
Для просмотра содержимого вам необходимо авторизоваться.
Готово. Мы получили шелл.
Примечание: если вам не нравится расширение .rtf, в вашем окончательном документе research-doc.rtf - переименуйте его, например в файл с расширением .doc, он также будет работать
Pasta