Отчет по анализу CoinMiner
На анализ в систему Афина пришел офисный файл с расширением .vbs. Для начала была собрана его общая информация, представленная в таблице Таблица 1.

Исследование в системе ATHENA
1. Статическое исследование
При проверке статического анализа ни один антивирус не сработал.

Вкладка «Источники вердикта» можно ознакомиться с основными резуль-татами статического анализа.
Можно заметить, что все инструменты, кроме YARA-правил, указали, что файл безопасный.

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

2. Динамическое исследование
Динамический анализ в системе ATHENA выявил несколько индикаторов:
1) Скачивание файла с помощью PowerShell - ПО скачивает файл при помощи PowerShell. Такой способ получения файлов свойственен вирусам (например, Emotet).
2) Запуск исполняемого файла с помощью shell32.dll - ПО запускает исполняемый файл с помощью rundll32.exe с использованием библиотеки shell32.dll, которая отвечает за работу иконок в Windows.;
3) Подозрительные действия с командной строкой - ПО производит подозрительные действия с командной строкой, обычно относящиеся к нелегитимным.

Среди системных программ, выявленных в процессе динамического исследования, были выявлены такие как: wscript.exe, cmd.exe, powershell.exe и rundll32.exe.

Также, с процессами можно ознакомиться во вкладке “Карта процессов”.

В блоке «Дампы» видно, что ПО во время работы создало файлы, которые являются легитимными.

Среди них находится скрипт «__PSScriptPolicyTest_m4tr3xtt.vjx.ps1», Расширение в конце «ps1» указывает, что это сценарий PowerShell. Нестандартное расширение «vjx» может быть признаком обфускации.
Также ВПО создает лог-файл, предположительно связанный с активностью PowerShell. Он может использоваться как прикрытие для хранения полезной нагрузки.
Во вкладке “Техники MITRE” видно, что отработало несколько техник:
1) Command and Scripting Interpreter. Сработавшие индикаторы: Скачивание файла с помощью PowerShell.
2) Create or modify system process. Сработавшие индикаторы: Создание процесса.
Злоумышленники могут создавать или изменять процессы системного уровня для многократного выполнения вредоносных полезных нагрузок в рамках сохранения. При загрузке операционных систем они могут запускать службы, выполняющие фоновые системные функции. Злоумышленники устанавливают новые службы, которые настроены на выполнение при запуске или при повторяемом интервале, чтобы обеспечить постоянство. Аналогичным образом могут быть изменены существующие службы.
3) Hide artifacts. Сработавшие индикаторы: Запуск исполняемого файла с помощью shell32.dll.

Во вкладке “Индикаторы компрометации” отображаются индикаторы компрометации вредоносного поведения файла по результатам его проверки в «песочнице».

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

Во вкладке «Источники вердикта» можно ознакомиться с тем, какие источники посчитали файл вредоносным.

Детальное исследование файла
Рассмотрим исходный код скрипта вне ATHENA.
В части кода, указанной на скриншоте, видно, что скрипт создает объект для работы с файловой системой. Сначала проверяет наличие папки "C:\ProgramData\DNSBackup", и если ее нет, то создает. Это и будет рабочая папка для загрузки вредоносного файла.

Далее запускается веб-страница в браузере и в нем открывается документ, который отвлекает внимание пользователя от действий вредоносного скрипта.


Во время открытия документа, скрипт параллельно использует PowerShell для загрузки .cpl-файла с GitHub-репозитория. Файл сохраняется в ранее созданную папку.

Скрипт использует и 32-битную, и 64-битную версию «rundll32.exe», чтобы обеспечить исполнение вне зависимости от архитектуры системы, и запускает файл с расширением «.cpl» через «control_RunDLL».

Последняя часть кода - создание Wscript.Shell, который выполняет все вышеописанные команды:
1) Открывает сайт;
2) Скачивает вредоносный «.cpl»;
3) Запускает его двумя способами.
Параметр «0» скрывает окно, то есть все выполняется без отображения для пользователя.
