Используем VirusTotal более эффективно

Предисловие
Сейчас не редко встречаются вшитые стиллеры/майнеры/ратники и тому подобное вредоносные ПО, как правило, в крякях популярных приложений или инструментов. Далеко не все могут провести полный динамический анализ файла и потратить время на разбор дампов памяти/сети, изменений в регистре и так далее. В этой статье описывается максимально подробное использование VirusTotal, как инструмента для тщательной, но не идеальной, проверки файлов.

Поскольку основное предназначение VirusTotal — демонстрация выявленных разными антивирусами сигнатур вредоносного ПО, то останавливаться на этом не будем. Аналогично с разделом Details. В нём представлена основная информация о приложении. Полезным может оказаться подраздел импортов (Imports), но это происходит крайне редко.

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

Раздел Relations
Первые три подраздела показывают нам идентифицированные подключения к доменам/IP-адресам/страницам. Пример:

Исходя из доменных имён, с которыми устанавливает связь приложение, можно определить как легитимные (обычно это официальные сайты компании/разработчика), так и не совсем. Во втором случае, это могут быть веб-сайты которые:

  • содержат домены бесплатных хостингов (тот же beget или 000webhost);
  • имеют в имени подозрительные словосочетания (на фото примера это веб-сайт pool.supportxmr[.]com, другой пример — iplogger/crypto/steal и тому подобные). Учтём, что значительная доля веб-сайтов, содержащих в себе crypto/btc/xmr используются для добычи криптовалюты, то есть для майнеров (как в приведенном примере);
  • называются произвольным набором цифро-буквенных символов, не имеющие никакого значения (пример: ttr4p; bb3u6);
  • размещены на недорогих доменах верхнего уровня (пример: *.xyz, *.pw, *.wtf);

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

В ином случае, когда приложение подключается к конкретным IP-адресам, не будет лишним проверить: что это за IP (воспользоваться whois); что размещено по этому адресу; файлы, которые так же связывались с этим адресом. Благо мы можем посмотреть эти данные используя VirusTotal, кликнув по интересующему нас адресу. В подразделе Details представлен whois и результаты поиска данного адреса в поисковике:

Подраздел Relations содержит информацию об веб-сайтах, размещенных на данном IP в разное время, а так же о файлах (загруженных на VirusTotal), которые подключаются к этому адресу:

Следующий полезный подраздел — Dropped files. Как можно понять из названия, это созданные приложением файлы. В экземпляре майнер создает различные скрипты, написанные на Visual Basic, и исполняемые файлы (используются как майнеры).

Graph Summary — удобный просмотр вышесказанных данных. Нет смысла заострять на нём внимание.

Раздел Behavior

В этом разделе отображается анализ с песочниц. Рекомендую использовать VirusTotal Jujubox и Dr.Web vxCube, ибо они имеют наибольшее количество информации. Что бы не повторяться разберем только отдельные подразделы.

Registry Actions. Здесь мы можем посмотреть изменения (создание/удаление/изменение ключей) регистра. Я рекомендую обратить внимание на следующие разделы регистра, отвечающие за автозагрузку:

<HKCU>\Software\Microsoft\Windows\CurrentVersion\Run
<HKCU>\Software\Microsoft\Windows\CurrentVersion\RunOnce
<HKLM>\Software\Microsoft\Windows\CurrentVersion\Run
<HKLM>\Software\Microsoft\Windows\CurrentVersion\RunOnce

Processes Tree. Возможность проследить созданные процессы. Таким образом, возможно определить какие системные/легитимные файлы (могли быть) были заражены:

Итоги

Подводя итоги статьи, можно отметить, что VirusTotal является отличным сервисом для анализа приложений. Однако, не забывайте, что никакой статический анализ не заменит динамический. В экземпляре был представлен не криптованый майнер, где всё лежит на поверхности для большей наглядности. Спасибо за прочтение статьи!