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

БОТНЕТ НА DOTNET'E

SULVERUS AKA ДРОЗДОВ АНДРЕЙ

Спецвыпуск: Хакер, номер #070, стр. 070-056-3


Создаем функцию для сервиса

[WebMethod]

public string ActiveBots(string ip, string port)

{

try

{

int prt = Convert.ToInt32(port);

//тот же код

return ip;

}

catch(...)

{

port = "BINAN";

return port;

}

Рассмотрим все выше написанное. В начале мы регистрируем строковый тип данных, затем получаем IP-адрес и порт бота, к которому нам надо соединиться. Далее мы используем новую возможность технологии .NET, конвертируя строку в int, используя метод ToInt32() класса Convert. В случае удачного соединения мы выводим IP-адрес бота, причем не в виде текста, а в виде xml-кода. При неудачной попытки соединения мы присваиваем переменной порт значение BINAN и выводим его в xml. Вот и все. Настало время написать клиента к этому сервису.

[пишем клиента]

Что должен уметь клиент? Уметь соединяться с веб-службой и спрашивать ее при помощи http-запросов, есть ли бот в онлайне. Поскольку клиент будет располагаться на компьютере у хакера, то тут мы вольны в своих желаниях — можно сделать интерфейс а-ля мейл-агент :). Например, программа будет сидеть в трее, а как только пройдет проверка на количество ботов - появится всплывающая подсказка со статистикой ботнета. Создаем еще один проект в студии, выбираем Windows Application. Теперь надо зарегистрировать в проекте наш веб-сервис, чтобы мы моги кнему обращаться. Для этого нужно зайти в Solution Explorer, щелкнуть правой клавишей по проекту и выбрать Add Web Reference. Теперь надо вставить туда адрес нашего веб-сервиса и приступать к программированию клиента. Если ты все правильно сделал, то в коде должна появиться строка: using localhost. Или вместо localhost — любое заданное название. Теперь надо создать простой интерфейс и написать функцию для общения с веб-сервисом. Для начала нам надо научиться работать с сервисом. Объявляем переменную, создаем объект, затем обращаемся к сервису и возвращаем ответ сервиса в строковый тип данных. Реализуем вышесказанное в коде:

Назад на стр. 070-056-2  Содержание  Вперед на стр. 070-056-4