Обзор админки ботнета Dirt Jumper v5
В этой статье я расскажу то, что смог найти в админке ботнета Dirt Jumper v5, распространяемого сайтом happy-hack.ru, который достаточно известен среди школьников (привет школоанонимусам:). Кстати вот ссылка на него - http://happy-hack.ru/ddos/294-dirt-jumper-v5.html
Чтобы сразу охарактеризовать мое мнение о ботнете и непосредственно о happy-hack, всмомните перевод слова dirt:
Начнем с самого начала.
Как же я узнал по поводу этой админки? В одном чате в вк очень доверяют всем, кто в нем находится, фанатеют от ддоса и все еще не изучили ни одного ЯП. И в правду - а смысл, если все дудос программки можно скачать в интернете?
В итоге из-за их халатности в мои руки попали их данные для авторизации. И мне стало интересно, какую еще выгоду может принести эта веб-админка.
Непосредственно изучение админки
Первое, что я нашел - xss в поле цели ддос атаки. XSS активная. Возможно полностью спрятать ее так, чтобы никто смог заметить ее.
Но это еще не все!
Теперь посмотрим исходный код
Начнем с файла index.php:
<?
include"core.php";
include"config.php";
if ($_POST['k']=='') {
include"404.php";
}
$ip=$_POST['k'];
$ip2=$_SERVER['REMOTE_ADDR'];
$time=time();
mysql_query(" INSERT INTO `n` (`ip`,`n`)VALUES('$ip2','$time') ") or die("Error");
mysql_query(" INSERT INTO `td` (`ip`,`ip2`,`time`)VALUES('$ip','$ip2','$time')");
include "img.gif";
?>
И верcия покрасивее:
Вначале идет подключение модулей.
Далее проверяют POST параметр k, который отвечает за подключение ботов к админке.
После идет записывание бота в базу данных.
О, SQL INSERT injection в параметре k, который не удосужились профильтровать! Это уже интересно=)
Ладно, пошалив с табличками, продолжим изучение index.php. "Что там изучать?" - спросите вы? А то,что в последней строке у нас идет инклуд файла img.gif. Вероятнее всего автор рассчитывал на вывод его содержимого.
Позже мы вернемся к этой строке.
Файл 404.php
Не буду досконально его разбирать, скажу лишь, что он имитирует 404 страницу.
Единственный подвох был в том, что лично я не заметил, что файл больше, чем я увидел, тк на 163 строке позже, недоумевая, почему программа работала не так,как я ожидал, нашел закрытие кавычки и ее принудительное завершение:
Файл admin.php и config.php
Покопавшись в остальных исполняемых файлах, понял, что admin.php отвечает за управление ботами из веб формы (как бы саркастично это не звучало ) .
Исходник файла admin.php я выложил на http://pastebin.com/a2GP4deh
Так же узнал, как генерируются куки:
И самое ключевое - что все url, которые мы вписываем в окошко с XSS (смотрите первую найденную уязвимость), сохраняются без фильтрации именно в файл img.gif!!
А теперь вспоминаем, что этот же файл у нас инклудится==запускается в конце файла index.php! Следовательно мы делаем следующее:
1) В окошко с XSS отсылаем php код, например:
<?php phpinfo(); ?>
2) Идем по адресу url/img.gif (да они еще и .htaccess не настроили:), скачиваем, переименовываем в img.txt и проверяем, сохранился ли наш текст, введенный в пункте 1 без изменений.
3) Теперь идем на index.php и, отослав на него POST запрос с не пустым параметром, например k=123 (если k не пустой, то мы избегаем файла 404.php и ,следовательно, завершения программы до нужной строки)
4) Profit! В итоге мы видим phpinfo, и следовательно RCE (Remote Code Execution - удаленное выполнение произвольного кода)!
Подведем итоги:
1. Найдена активная XSS
2. Найдена SQL INSERT INJECTION
3. Найдено удаленное исполнение произвольного кода.
4. Скачивание файла текущих целей ддоса и других атак.
Из всего этого можно сделать вывод:
и автор ботнет WEB админки, и те, кто воспользовался ей (привет школьникам Х 2) разбираются в безопасности веба на очень низком уровне!
В конце концов их сайт я протестировал, сообщил им, что у них в веб панели есть уязвимости, на что мне было высказано: "нам эта админка не нужна". Печально, что до сих пор их чат не задумывается о мелочах, из которых состоит вся информационная безопасность.
Удачи и спасибо за уделенное время!
- Автор: drakylar
- Комментарии: 3
- Просмотры: 9802