Оригинал статьи - Скрытый контент. http://telegra.ph/Analiz-botneta-DarkSky-12-30 Нажмите, чтобы раскрыть... Вся информация предоставлена исключительно в ознакомительных целях. Ни администрация, ни автор не несут ответственности за любой возможный вред, причиненный материалами данной статьи. Админ-панель Оболочка Сразу хочется отметить, что в плане внешности, панелька очень даже неплохая. https://image.prntscr.com/image/-v3loq32RAi5v1eG8J21zQ.png Тут же отмечу, что имеются некоторые баги: Я запускал файл на дедике - он отстучал в двух разных ботов, хотя по данным они идентичны Неправильно определяется версия Windows: на дедике Windows Server 2012 R2, а в панели Win8/10x64 Присутствует удобная настройка панели, страница тасков, логов, последних действий. Внутренности Вот тут уже начинается темная сторона этого продукта. Из серьезных недоработок я нашел: 1) Update - автообновление панели, которое можно использовать как бекдор Класс: https://image.prntscr.com/image/CiRauliAT6ut7GDjLRQBpQ.png Использование: https://i.imgur.com/tyqSbeA.png Возможно, сделано это ненамеренно, но риск остается. 2) Уязвимость к SQL-инъекциям - хоть и используется mysqli, но толку от него ноль: https://image.prntscr.com/image/zQAxjXjtTq_enBo26q-CrQ.png Данные вставляются в принятом формате (я где-то видел метод, который регулярками что-то либо сравнивает, либо чистит, но регулярки, я слышал, не спасают): https://image.prntscr.com/image/ru7QvAf6RB6MdruU7HJCkQ.png 3) "Шифрование данных" - это HEX. Если уж заявили о шифровании, нужно его сделать адекватно, а не так, чтобы все это через любой онлайн-декодер расшифровывалось: https://image.prntscr.com/image/Z7R4JYdGQHitZiG03fFVCw.png Анализ файла PE Смотрим через PE-сканнеры: https://image.prntscr.com/image/sc3i8uNhRCmtvrICmA2d0A.png Файл ничем не запакован, ЯП - Delphi. Данные Открываем файл в IDA и первое, на что обращаем внимание - строки: https://image.prntscr.com/image/K0pb5WRtQguxpovAe2mEWg.png Очень много hex-строк, а как мы уже знаем, в софте именно это является основным шифрованием данных. При декодировании можно найти пару интересных строк: User-Agent с которым делается http-запрос: https://i.imgur.com/PPvdrrC.png Хост на который привязан лоадер: https://i.imgur.com/Ofd4NCQ.png Параметры: https://i.imgur.com/GNCf6cO.png А тут мы видим что лоадер использует стандартную автозагрузку: https://i.imgur.com/A4Wifsz.png Функции Основной метод выглядит так: https://i.imgur.com/fBUBmqC.png Происходят DLL-проверки (чек на песочницу, виртуалку и т.д.), далее происходит запуск в памяти массива байт (предпоследняя строчка). На графе выглядит примерно так: https://i.imgur.com/3NJ5lWw.png Теперь нам нужно отыскать то, что запускается в памяти: https://i.imgur.com/VaFSs0R.png Переходим: https://i.imgur.com/IRqx7mR.png Далее открываем функцию Main этого массива (sub_420434): https://i.imgur.com/OgmikBU.png https://i.imgur.com/2mnlrFQ.png В функции sub_4213B8 происходит запрос к серверу, там же мы видим захексованный хост и параметры: (картинка не прогружается сюда, https://i.imgur.com/dIyZPfR.png) https://i.imgur.com/CA1uxTy.png https://i.imgur.com/HsIppHX.png Далее в цикле происходит запрос текущих тасков и их выполнение. По названиям строк (str_load, str_udp, str_method_http) не трудно догадаться что первое - это таск загрузки и запуска файла, второе - udp-flood, третье - http-flood. Смотрим функции по порядку: Загрузка и запуск файла Загрузка: https://i.imgur.com/xJ9SX3m.png https://i.imgur.com/9PAz5te.png Запуск: https://i.imgur.com/XnmXCYX.png UDP-flood https://i.imgur.com/6U2JsNT.png HTTP-flood https://i.imgur.com/yjhIMl0.png В цикле стартуют потоки этой функции: https://image.prntscr.com/image/LKGBVp14SNe3skknAL6KDg.png https://image.prntscr.com/image/Ex3SBxqNThKf01Zp35fHfA.png Реализация довольно громоздкая, можно было сделать куда проще и эффективнее. Ссылки Сорцы панели + семпл - https://github.com/ims0rry/DarkSky-botnet Продажник - Скрытый контент. https://lolzteam.net/threads/314749/ Нажмите, чтобы раскрыть...