Статья для участия в конкурсе на codeby.
Хэй, это моя первая статья здесь и уже для конкурса. Здесь будет минимум воды, статья разделена на 2 части:
Miner- программа для добычи криптовалюты злоумышленником с помощью компьютера ни о чём не подозревающей жертвы. Чаще всего используется скрытый майнинг Monero или ZCash, так как эти криптовалюты являются полностью анонимными. Майнер может распространяться независимо от установленной операционной системы.
Botnet( 'robot' + 'network') - сеть ботов(компьютеров), которые связанны с командным центром. Командный центр может отдавать команды ботам, которые они в свою очередь будут выполнять. Чаще всего создается злоумышленниками для автоматизации каких-либо задач, которые требуют огромного количества ресурсов.
ПО, которое вам сегодня пригодится:
Сканируем файл
Воспользуемся утилитой Peid:
Из приведенной выше фотографии можно сказать, что файл зависим от .NET, а также сверху накрыт .netReactor.
Выясняем точную версию .netReactor:
И распаковываем, используя de4dot.
Функционал
Бот состоит из задач, которые выполняются асинхронно.
Конфигурация / Задачи
Для работы с носками используется ProxySocket и WinInet:
Есть конструкторы классов для различных атак, которые выполняют роль получения HTML страницы, а также конструкторы, предназначенные для ассинхронных методов:
Имеется отдельный класс для работы с Internet Explorer, таким образом, можно получать/создавать/редактировать версию через реестр:
Также, присутствуют методы для изменения User-Agent/Cookie/Referrer:
Получение текущего IP происходит путем парсинга следующей страницы:
Также, присутствует проверка наличия языков СНГ-стран в раскладке:
System.Management отвечает за получение данных о машине.
Есть проверка на наличие анализаторов и снифферов:
Установка и закрепление в системе
Для автозагрузки используется Powershell и Task Scheduler:
Также, приложение проверяет правильность имени , и в случае неудачи, перезаписывается под правильным именем:
Имеется очень странная часть в коде, видимо, автор забыл ее убрать:
Следующее меня также немного напрягло:
DDoS-функционал и алгоритм работы
dexecute:
Загружает и запускает указанный файл.
execute:
Запускает файл.
suicide:
Самоудаление.
update:
Обновление бота.
DDoS-методы и обходы:
Реализации сделана на сокетах. Все работает асинхронно.
Anti-Captcha:
Обход капчи реализован через сервис
AutoIt Miner
Имеется 2 файла, прогоняем Exe через DIE/ExeinfoPe/Peid:
DLL сломано и не отображается в Pe-сканнере никак.
Опа! Автоит => прогоняем через exe2Aut:
Оказывается, в Dll заменены первые 8 байт. Открываем в hex-editor и меняем на стандартные, получаем 7-zip архив:
С start.exe также дропнулся файл CLDebugLog.txt - это распаковщик архива. Как видим в коде, он с параметром в виде пароля от архива распаковывает DLL, далее, в зависимости от поддержки AES на ПК, определяется, какой батник запускать.
start.bat:
start2.bat:
SystemCheck.xml:
32.exe:
Снимаем EnigmaVB через Aegys Crypter:
Получаем еще 2 файла + распакованный 32.exe:
Checking.exe и msvcr120.dll накрыты UPX:
Как уже очевидно - консольный майнер.
В 64.exe ровно то же самое, только консольный майнер с поддержкой AES:
Да, это конец статьи, надеюсь, что тебе было интересно почитать про Reverse Engineering и разобрать со мной некоторые зловреды. Удачи!
Хэй, это моя первая статья здесь и уже для конкурса. Здесь будет минимум воды, статья разделена на 2 части:
- Вступление, справка
- Анализ ПО
Вступление
Reverse engineering или же Обратная Разработка - это исследование/анализ определенного ПО, также документации на него с целью понять принцип его работы. Например, чтобы как-либо модифицировать его или произвести поиск уязвимых мест в исходном коде. Есть огромное количество программ, позволяющих вам провернуть подобное многие из них будут рассмотрены здесь.
Miner- программа для добычи криптовалюты злоумышленником с помощью компьютера ни о чём не подозревающей жертвы. Чаще всего используется скрытый майнинг Monero или ZCash, так как эти криптовалюты являются полностью анонимными. Майнер может распространяться независимо от установленной операционной системы.
Botnet( 'robot' + 'network') - сеть ботов(компьютеров), которые связанны с командным центром. Командный центр может отдавать команды ботам, которые они в свою очередь будут выполнять. Чаще всего создается злоумышленниками для автоматизации каких-либо задач, которые требуют огромного количества ресурсов.
ПО, которое вам сегодня пригодится:
- ExeinfoPe (анализ pe файлов)
- Aegys Crypter (используем чтобы распаковать файлы, накрытые протекторами)
- Exe2Aut (Exe to Autoit code)
- Peid (анализ pe файлов)
- de4dot (.Net дуобфускатор)
- DIE (анализ pe файлов)
Анализ ПО
C# BotnetСканируем файл
Воспользуемся утилитой Peid:
Из приведенной выше фотографии можно сказать, что файл зависим от .NET, а также сверху накрыт .netReactor.
Выясняем точную версию .netReactor:
И распаковываем, используя de4dot.
Функционал
Бот состоит из задач, которые выполняются асинхронно.
Конфигурация / Задачи
Для работы с носками используется ProxySocket и WinInet:
Есть конструкторы классов для различных атак, которые выполняют роль получения HTML страницы, а также конструкторы, предназначенные для ассинхронных методов:
Имеется отдельный класс для работы с Internet Explorer, таким образом, можно получать/создавать/редактировать версию через реестр:
Также, присутствуют методы для изменения User-Agent/Cookie/Referrer:
Получение текущего IP происходит путем парсинга следующей страницы:
Ссылка скрыта от гостей
:Также, присутствует проверка наличия языков СНГ-стран в раскладке:
System.Management отвечает за получение данных о машине.
Есть проверка на наличие анализаторов и снифферов:
Установка и закрепление в системе
Для автозагрузки используется Powershell и Task Scheduler:
Также, приложение проверяет правильность имени , и в случае неудачи, перезаписывается под правильным именем:
Имеется очень странная часть в коде, видимо, автор забыл ее убрать:
Следующее меня также немного напрягло:
DDoS-функционал и алгоритм работы
dexecute:
Загружает и запускает указанный файл.
execute:
Запускает файл.
suicide:
Самоудаление.
update:
Обновление бота.
DDoS-методы и обходы:
Реализации сделана на сокетах. Все работает асинхронно.
Anti-Captcha:
Обход капчи реализован через сервис
Ссылка скрыта от гостей
. Все обходы построены именно на основе этого метода, с небольшими доработками (вроде удаления каких-то html элементов и отправки доп. запросов)AutoIt Miner
Имеется 2 файла, прогоняем Exe через DIE/ExeinfoPe/Peid:
DLL сломано и не отображается в Pe-сканнере никак.
Опа! Автоит => прогоняем через exe2Aut:
Оказывается, в Dll заменены первые 8 байт. Открываем в hex-editor и меняем на стандартные, получаем 7-zip архив:
С start.exe также дропнулся файл CLDebugLog.txt - это распаковщик архива. Как видим в коде, он с параметром в виде пароля от архива распаковывает DLL, далее, в зависимости от поддержки AES на ПК, определяется, какой батник запускать.
start.bat:
start2.bat:
SystemCheck.xml:
32.exe:
Снимаем EnigmaVB через Aegys Crypter:
Получаем еще 2 файла + распакованный 32.exe:
Checking.exe и msvcr120.dll накрыты UPX:
Как уже очевидно - консольный майнер.
В 64.exe ровно то же самое, только консольный майнер с поддержкой AES:
Да, это конец статьи, надеюсь, что тебе было интересно почитать про Reverse Engineering и разобрать со мной некоторые зловреды. Удачи!