Beállítás csapdák ablakok

Ma fogunk beszélni telepítésével hook'ov (csapdák) a Windows. Hook - egy üzenet lehallgatását mechanizmus beállít egy speciális funkciója a verem tetején rendszer hook-funkciókat. Beállítás nélkül ezek a csapdák szinte lehetetlen elkerülni írásakor a különböző távoli adminisztrációs eszközök, kémprogramok és más programok különböző mértékben felelős a felhasználó Windows felhasználását. Vannak horgok globális (az egész rendszer) és a helyi (egy patak).

Állítsa be a horgot rendszer felhasználhatja SetWindowsHookEx () függvény a következő címmel:

HHOOK SetWindowsHookEx (int idHook, HOOKPROC lpfn, HINSTANCE HM, DWORD
dwThreadId);

Ha nem érzékeljük shny C kódot Delphi fejléc így néz ki:

SetWindowsHookEx (idHook: integer; lpfn: TFNHookProc; HM: HINST; dwThreadId:
DWORD): HHOOK;

SetWindowsHookEx () függvény, ha telepíti hook'a visszaadja a fogantyút, hiba esetén visszaáll 0-ra.
Nézzük meg részletesen az összes bemeneti paraméterei ezt a funkciót:

1. idHook - állandó, meghatározza azokat a telepített hook'a. Ez lehet az egyik a következő értékeket:

WH_CALLWNDPROC - kövesse nyomon az üzeneteket küldeni a ablakozófüggvény nevezzük, amikor egy üzenetet küld az ablakon eljárást. Trap váltja minden hívás SendMessage funkciót.

WH_CALLWNDPROCRET - Controls üzenetek után küldik az ablak funkciót.

WH_CBT - Hívott, hogy kezelni a legtöbb üzenet doboz, az egér és a billentyűzet (létrehozása ablakok, aktiválási ablak, elpusztítva ablakok, a változás az ablak méretét, mielőtt telepíti itp fókusz)

WH_DEBUG - meghívni, mielőtt bármilyen egyéb csapdákat. Ez hasznos hibakereső hook'ov.

WH_GETMESSAGE - Hívott, amikor az alkalmazás elolvassa az üzenetet sorban.

WH_HARDWARE - Hívott, amikor az alkalmazás beolvassa a üzenetsorába a számítógépre telepített berendezések.

WH_JOURNALPLAYBACK - Hívott, amikor a rendszer beolvassa a sorból üzenetet. Használt felvenni a sorba rendszer eseményeket.

WH_JOURNALRECORD - Hívott, amikor a rendszer sorba kérik mindenképpen. Úgy alkalmazott regisztrációs rendszer események.

WH_KEYBOARD - Hívott, amikor az alkalmazás sorban olvassuk WM_Keydown vagy WM_Keyup üzenetét. Az egyik leggyakoribb buktatókat -).

WH_MOUSE - Hívott, amikor az alkalmazás sorban olvasható az egér üzenetet.

WH_MSGFILTER - Hívott, amikor az üzenetet kell feldolgozni interaktív alkalmazás ablak, menü vagy az alkalmazás ablakában.

WH_SHELL - Hívott, amikor létre, és elpusztította a felső szintű ablak, illetve ha a kérelmet héj van szükség, hogy aktív.

2. lpfn - egy mutató a nagyon horog funkció. A főcím:

funkció HOOKFUNCTION (kód: integer; wParam: wParam; lParam: lParam): LRESULT
stdcall;

Az értékek a bemeneti paraméterek típusától függ hook'a. Ha pedig a globális horog, ezt a funkciót kell feltétlenül a dll.

3. HM - értéket veszi HINSTANCE vagy DLL leíró (globális csapda).

4. dwThreadId - azonosítja a légáramot, amelyhez a csapdába van behelyezve. A globális hook'ah ez a paraméter legyen 0.

Eltávolításához a telepített csapda létezik UnhookWindowsHookEx () függvény. Mint lehetőség, akkor kell használni egy mutatót (fogantyú) a horog funkció (az értéket, amely visszaadja a SetWindowsHookEx () függvény).

Nos, ez minden, akkor ismerik az alapokat. Most írni egy kis tréfás program célja, hogy horog olvasó egér üzenetek (WH_MOUSE). Legyen úgy, hogy ha megnyomja a jobb egérgombbal rejtőzik „Start” gombra, kattintson a bal oldalon - vannak, átlagos - megváltoztatta a címet az aktív ablak. Hook funkció is lesz egy dll. Továbbá dll lesz két eljárások - sethook () és removehook (), illetve létrehozása és eltávolítása csapdába.

Itt a kód egy dll:

- lib.dll -

felhasználások
ablakok, üzenetek;
var
H. THandle;

- lib.dll -

A program csapdát állított hívást dll sethook eljárások törölve - hívja removehook eljárást. Példa hook'a telepítését és eltávolítását, valamint a forráskód könyvtár dll a mellékelt fájlt.

Itt található az ezt a cikket egy ismerősének:

  • 23 perce

A malware Necurs megtanult képernyőképeket és jelenteni a problémákat az üzemeltetők

A Darknet eladni 5000 $ Malvar, ami ATM-ek „kiköp” a pénzt

Trusted Platform Module vállalatok Infineon Technologies sérülékeny, és az RSA-kulcsok megbízhatatlanok

Mi gyártó már megszűnt a biztonsági rést kapcsolódó WPA2 és a támadás KRACK

A szakemberek a „Doctor Web” megtanulták a backdoor Python-ban írt

Kapcsolódó cikkek