Podsłuchiwanie klawiatury z użyciem mechanizmu Windows Hooks Szymon Bosy Marek Łukaszczyk
Jak działa mechanizm haków (Windows Hooks)? Aplikacja otrzymuje od systemu w formie komunikatów informacje o aktywności myszy, klawiatury etc. Mechanizm Windows Hooks pozwala na skojarzenie określonego w haku komunikatu ze zdefiniowaną przez użytkownika funkcją filtrującą Wyróżniamy: haki lokalne (w obrębie wątku) i globalne (w obrębie całego systemu)
Łańcuch funkcji monitorujących
Zastosowanie Windows Hooks Diagnostyka Debugger Aplikacje szkoleniowe Możliwość wyłączenia innych haków poprzez dodanie własnego haka
Implementacja keyloggera (1) Środowisko Visual Studio 2008, język C# Implementacja funkcji monitorującej w bibliotece DLL w celu przechwycenia globalnych komunikatów klawiatury Stworzenie aplikacji umożliwiającej zainstalowanie funkcji monitorującej
Implementacja keyloggera (2) Stany przycisków Wciśnięty Zwolniony Przełączony Implementacja wymaga użycia funkcji WinAPI z biblioteki user32.dll oraz kernel32.dll, aplikacja nieprzenaszalna – działa jedynie pod Windows
Implementacja keyloggera (3) Aplikacja wykrywa aktywność klawiszy Shift oraz CapsLock (przełączony) Możliwość dodania funkcji automatycznego uruchamiania podczas startu systemu poprzez modyfikację rejestru systemowego Możliwość podszywania się pod procesy systemowe w celu ukrycia aplikacji Przechwycone znaki zapisywane są do zwykłego pliku tekstowego