Zpět na seznam článků     Číst komentáře (20)     Verze pro tisk

Vše o hardwarových keyloggerech

Autor: .cCuMiNn.   
17.10.2005

Zajímá vás, co to hardwarové keyloggery vlastně jsou? Chcete si snad postavit svůj vlastní keylogger? Vše podstatné o této moderní metodě logování se dočtete právě v tomto článku.


Keelog Když jsem sháněl informace o hardwarových keyloggerech, zjistil jsem, že na českém Internetu toho o nich člověk moc nezjistí a lidí, kteří by znali podrobnější informace o jejich činnosti není také mnoho. Google mě po zadání hesla "hardwarový keylogger" uváděl povětšinou na stránky komerčních výrobců, kteří zde inzerovali své produkty a vůbec bylo získání jakýchkoliv informací celkem složité. Díky Hunterovi13, který mi poskytl tento odkaz, jsem se o hardwarových keyloggerech dozvěděl trochu více a abych ulehčil práci ostatním zájemcům o toto téma, rozhodl jsem se, že v tomto článku sepíši všechny podstatné informace, které jsem (převážně z uvedeného článku) o HW keyloggerech zjistil.

Co to hardwarový keylogger vastně je


Keelog Jde o speciální harwarovou součást , jejíž hlavní součástí je mikrokontroler a paměť. Tato věcička, která se umístí kamkoliv mezi počítač a klávesnici pak odchytává veškeré texty psané na klávesnici počítače nebo jiných zařízení a ukládá je do vlastní paměti. Kromě zachytávání stisknutých kláves, dokáže toto zařízení také emulovat stisky jednotlivých kláves a samo tak může počítači sdělovat, že byla stlačena nějaká klávesa, i když to ve skutečnosti není pravda. Díky tomu, je veškerá komunikace mezi hardwarovým keyloggerem a jeho administrátorem vedena, přes textový editor. Administrátor napíše v textovém editoru heslo, které je v keyloggeru nastaveno pro přístup k menu a keylogger na něj odpoví vysláním impulsů stisknutých kláves tak, že se vypíše textové menu přímo do textového editoru. Zde si může administrátor vybrat například zobrazení zachyceného logu, který keylogger opět vyšle pomocí impulsů počítači a ten obsah logu vypíše v textovém editoru. Administrátor si může textový soubor v editoru uložit do souboru a paměť keyloggeru pak může uvolnit pro další zachytávání.

KeyGhost Díky tomu, že HW keylogger pracuje na hardwarové bázi, může zachytávat stisky kláves pod jakýmkoliv operačním systémem, včetně hesel pro přístup do BIOSu nebo přístupových hesel k operačnímu systému. HW keylogger se většinou vyrábí jako malé prodložení kabelu, které se zapojuje mezi počítač a klávesnici (viz.obrázek). Mezi nejvíce rozšířené komerční produkty tohoto typu patří produkty společnosti Keelog, které seženete například v našem e-shopu.


Keelogger Další možností je zabudovat HW keylogger přímo do skříně počítače nebo do klávesnice (moduly pro vestavění do klávesnic jsou opět dostupné prostřednictvím našeho obchůdku). Zde je vidět, že odhalení hardwarového keyloggeru není snadnou záležitostí a dovolím si tvrdit, že odhalit HW keylogger zabudovaný v klávesnici je pro běžného uživatele nadlidský úkol. Více se o možnostech odhalení keyloggeru rozepíši na konci tohoto článku.

Amecisco

Jak funguje klávesnice

Dříve než si povíme o tom jak funguje hardwarový keylogger měli bychom si říci něco o tom jak funguje klávesnice počítače. Klávesnice je vlastně souhrn jednotlivých tlačítek poskládaných v matici, přičemž každé klávese odpovídá určitý scan kód. Stav jednotlivých kláves (stisknutí, držení, uvolnění) je monitorováno klávesnicovým kodérem (tvořeným běžně obvodem Intel 8048), který jakmile zjistí změnu stavu na některé klávese, zpracuje tuto informaci a vytvoří data s odpovídajícím scan kódem. Tato data o stavu klávesy odešle řadiči klávesnice, který je umístěn na matherboardu PC (většinou jej tvoří obvod Intel 8042). Tento řadič dekóduje data, která obdržel od klávesnice a přeloží je do smysluplných informací o tom, která klávesa byla stisknuta. Veškerá komunikace mezi klávesnicí a PC probíhá seriově po dvou drátech, přičemž na jednom z nich jsou data a na druhém je hodinový signál. Další dva dráty slouží k napájení klávesnice +5V a zem.

Zájemce o bližší informace funkčnosti klávesnice, obsazení jejích vývodů (DIN, nebo PS/2), použité scan tabulky a popis jednotlivých řídících signálů odkazuji na články zabývající se touto tématikou.
Originál článku o hw keyloggerech
www.simandl.cz/stranky/elektro/keyboard/keyboard.htm
http://www.keelog.com/pckb.html
www.intel.com/design/archives/periphrl/docs/29025601.pdf
panda.cs.ndsu.nodak.edu/~achapwes/PICmicro/keyboard/atkeyboard.html

Jak pracuje hardwarový keylogger

Jak již bylo řečeno, hardwarový keylogger se připojí na vodiče vedoucí z klávesnice do PC. Zde odchytávají jednotlivé scan kódy stisknutých kláves a ukládají je do své vlastní paměti. Jako zdroj napětí používají keyloggery vodičů, které napájí klávesnici. Vzhledem k tomu, že tvorba samotného hardwarového keyloggeru není nijak složitá, nabízím vám zde návod na stavbu hardwarového keyloggeru DIY, který poskytla firma Keelog jako projekt Open Source. Na stránkách této firmy najdete také spoustu dalších materiálů, včetně návodu jak zapojit keylogger přímo do klávesnice.

Seznam součástek na stavbu hardwarového keyloggeru DIY

Všehovšudy je na stavbu hardwarového keyloggeru použito pouze 7 součástek. Z toho je patrné, že nejde o žádné složité zařízení. Zde je jejich seznam:
- 1 x mikrokontroler Atmel AT89C2051 (AT89C1051, AT89C4051)
- 1 x seriová paměť EEPROM 24C512
- 1 x 12MHz krystal (co možná nejmenší)
- 2 x kondenzátor 33pF
- 1 x kondenzátor 10uF (opět co možná nejmenší)
- 1 x rezistor 10k


Soucastky

Veškeré součástky byste měli být schopni sehnat za cenu do 300,-Kč. Musím vás však připravit na to, že mikrokontroler se musí před svým použitím naprogramovat. K tomu budete potřebovat programátor těchto obvodů, který se spojí s PC a pomocí něhož se program přenese do mikrokontroléru. Cena tohoto programátoru se pohybuje kolem 1.000 Kč a tvoří tak nejdražší položku, kterou budete potřebovat. Pokud tedy neplánujete programování takovýchto obvodů i do budoucna, bude lepší, když se obrátíte na někoho z vašich známých, kdo takovýto programátor vlastní a byl by ochoten vám program do obvodu nahrát. Na stránkách http://www.keelog.com/diy.html si můžete stáhnout zdrojové kódy programu nebo jeho binární verzi. Na těchto stránkách naleznete i podrobnější návod na stavbu celého obvodu, včetně softwaru potřebného pro jeho odladění.

Schéma zapojení hw keyloggeru DIY

Schema

Plošný spoj

Hotový obvod

Hotový obvod

Velikost paměti keyloggerů

Běžně dostupné keyloggery mají paměťovou kapacitu běžně i několik megabajtů, z čehož lze odvodit množství textu, které jsou si schopny zapamatovat. I tak se však může stát, že se paměť zaplní a v této chvíli se chovají jednotlivé keyloggery odlišně.
- Paměť je přepisována od začátku
- Paměť je přepisována v lokaci jiné než na začátku
- Keylogger ukončí záznam
- Keylogger ukončí odpovídání
- Keylogger ohlásí chybu

Takto se chovají běžně dostupné keyloggery:
KeyKatcher - Ukončí záznam
KeyGhost - Pokračuje v zaznamenávání přepisováním paměti od konce
Amecisco - Pokračuje v zaznamenávání přepisováním paměti od konce

Detekce hardwarových keyloggerů

Tak, když nyní víme jak hardwarové keyloggery pracují a dokážeme si dokonce sami takovýto keylogger sestrojit, podíváme se na možnosti, kterými se tyto keyloggery dají odhalit.
Byly vytvořeny programy, které na klávesnici vysílají různé příkazy, obsahující například kontrolu stavu zapnuté Caps, Nubrer a Scroll lock LEDky nebo takové, které kontrolují opakovací rychlost při přidržené klávese a zkoumají zda jsou nějaké odchylky v použití s keyloggerem. Bohužel tyto programy nejsou schopny hw keylogger odhalit. Také se mělo za to, že dodatkové zařízení vložené mezi klávesnici a PC přinese určité zpoždění v odezvě, ale ukázalo se, že tomu tak není. Určitá časová prodleva sice vzniká, ale je tak malá, že téměř nemůže být detekovaná.
Dalším řešením odhalení keyloggeru, se měly stát programy, které pomocí slovníkového útoku, nebo útoku hrubou silou, zkoušely uhodnout heslo keyloggeru, což by mělo za následek vstup do jeho menu. Tady se však ukázalo, že ačkoliv se tyto texty zobrazují na monitoru, není možné tento druh detekce provést, jelikož data nejsou zapsána přímo na klávesnici a tudíž neprojdou skrz keylogger.

Komerční keyloggery jsou dodávány s defautními hesly, které si mají uživatelé změnit. V případě, že takovéto heslo zapomenou je pro ně jedinou možností odeslat keylogger zpět do firmy, kde provedou reset hesla. Proto raději spousta uživatelů tyto hesla nemění a nechává je nastavena na defaultní hodnotu.

Toto jsou defaultní hesla nejběžnějších keyloggerů:
HeyKatcher - keykatch
KeyGhost (PS/2) - vghostlog
Amecisco - N/A - rozdílná hesla vybrané pro každou instalaci

Pokud si uživat přeci jen heslo změní, pak se musí pohybovat v těchto mezích:
KeyKatcher - Heslo je změněno okamžitě a musí být dlouhé 6-8znaků
KeyGhost - Heslo je změněno jako součást formátovací procedury a maže paměť v procesu (který trvá okolo jedné minuty). Heslo musí být dlouhé 8-12 znaků.
Amecisco - Heslo je změněno okamžitě a musí být menší než 16 znaků.

Uživatelé by si proto měli všímat zvláštních výplodů jejich textových editorů. Když sepisují nějaký dokument, může se stát, že čirou náhodou napíší takovou kombinaci, která byla použita jako heslo ke keyloggeru a ten jim na to odpoví vypsáním tohoto menu. To je znamení, že má uživatel hardwarový keylogger nainstalován a neměl by tudíž brát texty, které se v textovém editoru vytvoří samovolně, na lehkou váhu.

Jako jediný možný způsob detekce hardwarového keyloggeru se ukázalo měření napětí. Keylogger potřebuje, stejně jako každé jiné elektonické zařízení, ke své činnosti určitý proud, který si odebírá z PC. Běžně je to u keyloggerů hodnota kolem 10mA. Použijeme-li ke kontrole této hodnoty vhodný software, jakým je například Motherboard monitor, který bude v určitých intervalech spouštět test, můžeme tak hardwarový keylogger odhalit.

Závěr

Věřím, že téma hardwarových keyloggerů je velmi zajímavé. Dovedu si představit pozměněné zařízení, které bude kódy stisknutých kláves vysílat pomocí IR. Bude možné zachytávat tato data nějaký ten metr stranou a číst si zachycené texty na displeji on-line. Prostě jako vždy - představivosti se meze nekladou...

.cCuMiNn.

Líbil se Vám článek?
Budeme potěšeni, pokud vás zaujme také reklamní nabídka

Social Bookmarking

     





Hodnocení/Hlasovalo: 2.3/184

1  2  3  4  5    
(známkování jako ve škole)