Nie powinienes kierowac sie przy wyborze programu jego licencja. Jak znajde czas to przedstawie test wyzej wymienionego oprogramowania...
Anti-Keylogger 7.4 sklada sie z dwoch komponentow - programu user mode i driver'a. Oba pliki sa zabezpieczone. Anti-Keylogger 7.4 bez problemu wykryl testowy keylogger operujacy na syscall'ach - czyli najnizszym poziomie user mode. W rezultacie wykrycia keyloggera program pokazal komunikat ale nie zapytal uzytkownika o decyzje co z danym procesem czy modulem zrobic.
PrivacyKeyboard 7.4 to nic innago jak Anti-Keylogger 7.4! Dlatego tez by zainstalowac ten program trzeba usunac poprzedni! Tak jak w poprzednim przypadku plik keyloggera zostaje dodany do listy zas proces dalej dziala...
UnLogger stosuje prosta metode. Zaklada hook'a (SetWindowsHookA) z flaga Debug - #define WH_DEBUG 9. Co widac na przedstawionym fragmencie biblioteki dll:
Kod:
CODE:00407DAC public RunStopHook
CODE:00407DAC RunStopHook proc near
CODE:00407DAC
CODE:00407DAC arg_0 = byte ptr 8
CODE:00407DAC arg_4 = dword ptr 0Ch
CODE:00407DAC
CODE:00407DAC push ebp
CODE:00407DAD mov ebp, esp
CODE:00407DAF cmp [ebp+arg_0], 1
CODE:00407DB3 jnz short loc_407DE0
CODE:00407DB5 mov eax, ds:lpBaseAddress
CODE:00407DBA mov edx, [ebp+arg_4]
CODE:00407DBD mov [eax+8], edx
CODE:00407DC0 push 0 ; dwThreadId
CODE:00407DC2 mov eax, ds:hmod
CODE:00407DC7 push eax ; hmod
CODE:00407DC8 mov eax, offset fn
CODE:00407DCD push eax ; lpfn
CODE:00407DCE push 9 ; idHook
CODE:00407DD0 call SetWindowsHookExA
KeyloggerHunter jak poprzednik czuwa na najnizszym z mozliwych poziomow. Dzieki czemu keylogger testowy zostaje niezauwazony. Oto fragment kodu biblioteki dll:
Kod:
CODE:004035B8 Hook proc near
CODE:004035B8
CODE:004035B8 arg_8 = dword ptr 10h
CODE:004035B8
CODE:004035B8 push ebp
CODE:004035B9 mov ebp, esp
CODE:004035BB mov eax, ds:lpBaseAddress
CODE:004035C0 cmp dword ptr [eax], 0
CODE:004035C3 jz short loc_4035C9
CODE:004035C5 xor eax, eax
CODE:004035C7 jmp short loc_4035EF
CODE:004035C9 loc_4035C9: ; CODE XREF: Hook+Bj
CODE:004035C9 push 0 ; dwThreadId
CODE:004035CB mov eax, ds:hmod
CODE:004035D0 push eax ; hmod
CODE:004035D1 mov eax, offset fn
CODE:004035D6 push eax ; lpfn
CODE:004035D7 mov eax, [ebp+arg_8]
CODE:004035DA add eax, 3
CODE:004035DD push eax ; idHook
CODE:004035DE call SetWindowsHookExA
Keylogger Stopper kolejny nieprzydatny program...
Elite Antikeylogger zostal zainsalowany razem z Advanced AntiKeyloggerem - oba programy wymagaly restartu. Po restarcie Elite Antikeylogger wystosowal komunikat o znalezionej bibliotece bedacej komponentem Advanced AntiKeyloggera przechwytujacej "Debug info capturing". Komunikat zostal pokazany w przystepnej formie dzieki ktorej uzytkownik moze podjac stosowna decyzje. Program bez problemu wykryl testowy keylogger - czyli zadzialal filtr kernel mode. Keylogger zostaje zatrzymany - "zatrzymanie watkow" lecz proces nie jest zabijany.
KeyScramble zgodnie z opisem posiada fragment kernel mode w ktorym mozna znalezc ciekawe stringi potwierdzajace dzialanie programu - "e:qzwangworkspaceinputsafewinsrccryptolibrsa_gen.c". Troche duzo tych stringow... Program pozwala zainstalowac plugin dla IE i FF. Program zamieszczony jako ciekawostka.
Advanced AntiKeylogger dziala na podobnej zasadzie co Elite Antikeylogger czyli posiada filtr kernel mode ale jedyne informacje jakich dostarcza uzytkownikowi to sciezka dostepu do podejrzanego pliku. Uzytkownik nie ma mozliwosci podjecia jakiej kolwiek decyzji - proces zostaje zatrzymany i na tym koniec.
Jeden program nie zostal przetestowany poniewaz wymagal min Windows 2000 SP4 zas test przeprowadzalem na 2000 SP2.
Krotkie podsumowanie.
Z powyzej przetestowanych programow jedynie Elite Antikeylogger zasluguje na uwage. Program ma swietny wyglad i ciekawe opcje. Dziala prawie idealnie poniewaz przechwytuje i zatrzymuje proces w momencie wywolania hook'a a nie w momencie przygotowywania procesu. Dzieki czemu aplikacja moze swobodnie wykonac pewien kod i dopiero uruchomic kod keyloggera. Do testow uzylem native keylogger napisany w Assemblerze. Nie testowalem kilku innych mozliwosci przechwytywania klawiszy w tym kodu dzialajacego w trybie jadra. Niestety Elite Antikeylogger w wersji testowej dziala tylko 7 dni! Aczkolwiek warto przetestowac ten program.
Elite Antikeylogger posiada tez filtr na kod kernel mode. Dlatego komunikowal o dzialaniu drivera KeyScramble. Interesujacy program