October 24, 2019

Базовый анализ вирусов.

Привет, юный блэкхэт, в этой статье мы рассмотрим такую под-сферу в хакинге, как анализ малвари.

В этой статье ты узнаешь:

  • Как перехватить траффик вируса, и проанализировать его
  • Как проанализировать систему на изменения.
  • Как изучить код малвари. Реверс инжиниринг.

Анализ трафика.

Пожалуй, одно и самых нужных вещей, при анализе вируса. И так, для анализа исходящего траффика используется специальные программы - снифферы. Наиболее популярные из них:

Рассмотрим, что мы сможем узнать о вирусе, по его запросам.

Открываем наш сниффер, в моём случае это Fiddler:

Интерфейс программы.

Запускаем вирус, затем смотрим, какие запросы были отправлены:

Проанализируем их. Первый запрос полетел на этот сайт: http://ip.42.pl/raw

При переходе на него покажется ваш внешний IP, малварь использует этот сайт что-бы спарсить ваш ИПшник.

Второй запрос отправился на домен, при переходе на него было показано следующее:

Все эти цифры нужны для парса функций софта. Приведу пример. Когда софт сделал запрос, и скопировал цифры, происходит проверка: Если первая цифра == 1, то софту нужно украсть логи;пароли, как пример в псевдокоде, но думаю, ты понял.

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

Конечно, разработчики малвари должны понимать, что рано или поздно, его детище начнут изучать, но если ты думал, что от анализа трафика нет защиты, ты крупно ошибаешься. Я например в своём софте сделал Анти-Анализ, и в одном из методов просто проверял запущенные процессы, и если среди них был процесс снифера, софт самоуничтожался, как то так.

Поведение системы.

Чтобы отследить создание файлов, папок, операции с регистром, чаще всего используется программа Process Monitor

Интерфейс программы

Но прежде чем начать анализировать систему следует настроить фильтры.

Заходим во вкладку "Filter => Filter..."

Добавляем нужный фильтр - Process Name, begins with, имя_процесса, Include:

вместо who - имя вашего процесса.

Так-же добавляем фильтр на папку Windows, это нужно для того, чтобы когда малварь обращается к какой-либо DLL'ке, у нас не было лишних записей.

Теперь в главном окне выбираем, что отслеживать: Активность регистра, Файловую систему, Сетевой траффик, Потоки

Теперь всё готово, запустим анализ системы сочетанием клавиш: CTRL + E.

Далее запускаем наш вирус и смотрим вывод,

Проанализируем некоторые действия. Первым, что делает софт, это создаёт папку в Temp директории с именем пользователя и скрывает её:

Создание
Скрытие

Затем получает пути до БД файлов хромиум браузеров - Login Data, в которых содержаться логины и пароли, так-же копирует этот файл в временную директорию

После этого вытаскивает из всех БД пароли, куки, историю браузера и записывает по файлам

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

На этом с анализом системы, и созданных файлов закончим, перейдём к следующему пункту.

Реверс-инжиниринг.

(Статья про реверс Python приложений)

Реверс инжиниринг — исследование некоторого готового устройства или программы, а также документации на него с целью понять принцип его работы; например, чтобы обнаружить недокументированные возможности (в том числе программные закладки), сделать изменение или воспроизвести устройство, программу или иной объект с аналогичными функциями, но без прямого копирования.

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

В этой статье я лишь задену самые основы реверса .Net приложений

Инструментарий.

Для реверса нам необходимы программы:

  1. ExeInfoPE / RDG Packer Detector
  2. dnSpy

ExeInfoPE и RDG Packer Detector выполняют одну (из) важную функцию для реверса - Узнать ЯП на котором написана программа.

dnSpy - Инструмент для дизассемблирования, говоря простым языком эта утилита позволит нам доставать весь код из exe файла.

DnSpy включает в себя декомпилятор, отладчик и редактор сборки. Он может быть легко расширен путем написания собственного расширения.

Перейдём ближе к делу, отрываем dnSpy, и перекидываем туда наш файл

И если результат оказался примерно таким, то тебе повезло вирус не обфусцирован.

Обфускация - приведение исходного текста или исполняемого кода программы к виду, сохраняющему её функциональность, но затрудняющему анализ, понимание алгоритмов работы и модификацию при декомпиляции

Ну и вызовы методов

Заключение.

Вот и всё, в этой статье мы лишь поверхностно затронули такую тему, как анализ вредоносных программ. Если тебя заинтересовала эта тема, то для начала советую выучить хотя бы пару языков программирования, что бы после понимать, что происходит в коде. Затем освоить реверс, попрактиковаться с деобфускацией, поработать с IDA Pro. На этом всё,

На этом всё, канал DARK $IDE, админ 3XPL01T.

D$ 2.0