Lagoscope ❤️ VirusTotal

Lagoscope ❤️ VirusTotal

В прошлой статье я рассказал, как устроен Lagoscope, и пообещал отдельно разобрать отчет VirusTotal — по вкладкам, со всеми срабатываниями и странными строчками. Я сел за него и почти сразу понял, что разбирать, по сути, нечего. Отчет был настоящим, но проверял он не совсем то, что ожидалось.

Подробный и довольно душный разбор с энтропией, импортами и песочницами я унес на Хабр — по вайбу он там уместнее. А здесь коротко и по-человечески о том что было не так, что я поменял и как теперь проверить все самому.

Что пошло не так

Не тот файл. С сайта вы скачиваете маленький загрузчик, а на проверку в VirusTotal уходил установщик конкретной версии клиента, который этот загрузчик потом качает. Это два разных файла с разными хешами. Получалось, что по загрузчику — тому самому exe, который вы запускаете первым, — отчета не было вовсе, а связать установщик из отчета с тем, что лежит у вас в «Загрузках», было нечем.

Закрытая коробка. Установщик собирался в Inno Setup со сжатием, то есть по сути был архивом. Проверяемая часть — стандартный стартовый модуль Inno Setup, одинаковый у тысяч программ, а три четверти файла занимали сжатые данные. Мой клиент там или что угодно другое — по отчету не понять. Снаружи сжатая полезная программа и сжатый вирус выглядят одинаково.

Что поменял

Посмотрел я на это и переделал выпуск версий. Теперь каждый файл уходит в VirusTotal на проверку отдельно:

  • Загрузчик — то, что вы скачиваете с сайта.
  • Установщик — то, что скачивает загрузчик. Он лежит и по прямой ссылке (для 0.0.12 — lagoscope.app/releases/0.0.12/Lagoscope-Setup-0.0.12.exe), так что его можно скачать самому и сверить с отчетом до запуска.
  • Клиент — сама программа, которую вы запускаете.
  • Два помощника, dpc-sidecar и adlx-helper, — их клиент запускает на время игровой сессии.

Хеш и ссылка на отчет по каждому файлу — на главной странице, в блоке «подробно» под кнопкой скачивания.

Lagoscope ❤️ VirusTotal

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

Новая версия выходит, только когда проверены все ее файлы и ни один из них не назвали вредоносным больше пяти антивирусов.

Lagoscope ❤️ VirusTotal

Что показала новая проверка

Вот что насчитали антивирусы по версии 0.0.12 на момент написания статьи:

  • загрузчик — 3 из 71
  • установщик — 4 из 71
  • клиент — 2 из 67
  • оба помощника — 0

Чудес не случилось: срабатывания никуда не делись. Более того, у установщика без сжатия их на одно больше, чем было у сжатого. Прозрачнее не значит «зеленее». Зато теперь видно, что именно проверено и отчет о клиенте — это отчет о моем коде, а не об упаковке Inno Setup.

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

Как проверить самому

Убедиться, что у вас тот самый файл, который проверял VirusTotal, можно за минуту. Откройте PowerShell в папке загрузок и выполните:

Get-FileHash Lagoscope-Setup.exe

Команда выведет SHA-256 — длинную строку из цифр и букв. Сравните ее со строкой «Загрузчик» в карточке на сайте: там видны последние 8 символов, а полный хеш появится, если навести на них курсор.

После установки то же самое можно сделать с файлами программы:

Get-FileHash "C:\Program Files\Lagoscope\*.exe"
Lagoscope ❤️ VirusTotal

Хеши lagoscope-client.exe и обоих помощников должны совпасть со строками карточки.

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

Если хочется подробностей — добро пожаловать на Хабр. Там я прошел отчет по клиенту вкладка за вкладкой: почему, по мнению VirusTotal, файл создан в 2102 году, откуда взялось обвинение в подмене дат файлов, куда клиент ходил и что делал в песочницах. А заодно там есть короткая инструкция, как читать любой такой отчет, не только мой.

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

Скачать: lagoscope.app

Новости и обратная связь: t.me/lagoscope