Анализ ботнета DarkSky By ims0rry Published: 2017-12-30 · Archived: 2026-04-05 19:22:18 UTC Анализ ботнета DarkSky ims0rry Админ-панель Оболочка Сразу хочется отметить, что в плане внешности, панелька очень даже неплохая. Тут же отмечу, что имеются некоторые баги: 1) Я запускал файл на дедике - он отстучал в двух разных ботов, хотя по данным они идентичны 2) Неправильно определяется версия Windows: на дедике Windows Server 2012 R2, а в панели Win8/10x64 Присутствует удобная настройка панели, страница тасков, логов, последних действий. Внутренности Вот тут уже начинается темная сторона этого продукта. Из серьезных недоработок я нашел: 1) Update - автообновление панели, которое можно использовать как бекдор Класс: http://telegra.ph/Analiz-botneta-DarkSky-12-30 Page 1 of 17 Использование: Возможно, сделано это ненамеренно, но риск остается. 2) Уязвимость к SQL-инъекциям - хоть и используется mysqli, но толку от него ноль: Данные вставляются в принятом формате (я где-то видел метод, который регулярками что-то либо сравнивает, либо чистит, но регулярки, я слышал, не спасают): 3) "Шифрование данных" - это HEX. Если уж заявили о шифровании, нужно его сделать адекватно, а не так, чтобы все это через любой онлайн-декодер расшифровывалось: Анализ файла PE Смотрим через PE-сканнеры: Файл ничем не запакован, ЯП - Delphi. Данные Открываем файл в IDA и первое, на что обращаем внимание - строки: http://telegra.ph/Analiz-botneta-DarkSky-12-30 Page 2 of 17 Очень много hex-строк, а как мы уже знаем, в софте именно это является основным шифрованием данных. При декодировании можно найти пару интересных строк: User-Agent с которым делается http-запрос: Хост на который привязан лоадер: http://telegra.ph/Analiz-botneta-DarkSky-12-30 Page 3 of 17 Параметры: http://telegra.ph/Analiz-botneta-DarkSky-12-30 Page 4 of 17 А тут мы видим что лоадер использует стандартную автозагрузку: http://telegra.ph/Analiz-botneta-DarkSky-12-30 Page 5 of 17 Функции Основной метод выглядит так: http://telegra.ph/Analiz-botneta-DarkSky-12-30 Page 6 of 17 Происходят DLL-проверки (чек на песочницу, виртуалку и т.д.), далее происходит запуск в памяти массива байт (предпоследняя строчка). На графе выглядит примерно так: http://telegra.ph/Analiz-botneta-DarkSky-12-30 Page 7 of 17 Теперь нам нужно отыскать то, что запускается в памяти: Переходим: Далее открываем функцию Main этого массива (sub_420434): http://telegra.ph/Analiz-botneta-DarkSky-12-30 Page 8 of 17 http://telegra.ph/Analiz-botneta-DarkSky-12-30 Page 9 of 17 В функции sub_4213B8 происходит запрос к серверу, там же мы видим захексованный хост и параметры: http://telegra.ph/Analiz-botneta-DarkSky-12-30 Page 10 of 17 http://telegra.ph/Analiz-botneta-DarkSky-12-30 Page 11 of 17 Далее в цикле происходит запрос текущих тасков и их выполнение. По названиям строк (str_load, str_udp, str_method_http) не трудно догадаться что первое - это таск загрузки и запуска файла, второе - udp-flood, третье - http-flood. Смотрим функции по порядку: Загрузка и запуск файла Загрузка: http://telegra.ph/Analiz-botneta-DarkSky-12-30 Page 12 of 17 http://telegra.ph/Analiz-botneta-DarkSky-12-30 Page 13 of 17 Запуск: UDP-flood http://telegra.ph/Analiz-botneta-DarkSky-12-30 Page 14 of 17 HTTP-flood http://telegra.ph/Analiz-botneta-DarkSky-12-30 Page 15 of 17 В цикле стартуют потоки этой функции: Реализация довольно громоздкая, можно было сделать куда проще и эффективнее. Ссылки Сорцы панели + семпл - https://github.com/ims0rry/DarkSky-botnet http://telegra.ph/Analiz-botneta-DarkSky-12-30 Page 16 of 17 Продажник - https://lolzteam.net/threads/314749/ ----------------------------- Автор @ims0rry https://t.me/ims0rryblog Source: http://telegra.ph/Analiz-botneta-DarkSky-12-30 http://telegra.ph/Analiz-botneta-DarkSky-12-30 Page 17 of 17 http://telegra.ph/Analiz-botneta-DarkSky-12-30 Теперь нам нужно отыскать то, что запускается в памяти: Переходим: Далее открываем функцию Main этого массива (sub_420434): Page 8 of 17