$34 USB Sniffer Tutoriál: Zachytenie pohybu myši a stláčania kláves pomocou Wiresharku
Návod na USB sniffer: Zachytenie pohybu myši a stlačení kláves pomocou Wiresharku
V tomto projekte preskúmame, ako možno pomocou zariadenia USB sniffer monitorovať a analyzovať komunikáciu USB medzi počítačom a bežnými vstupnými zariadeniami, ako sú myš a klávesnica. Umiestnením USB sniffera do série medzi USB zariadenie a počítač možno zachytiť a analyzovať všetky USB pakety prechádzajúce cez neho v reálnom čase pomocou Wiresharku.
Tento návod demonštruje, ako možno pohyb myši, stlačenia tlačidiel a dokonca aj stlačenia kláves (vrátane hesiel) pozorovať na úrovni USB protokolu. Projekt je určený na vzdelávacie účely, aby sme pochopili, ako fungujú USB Human Interface Devices (HID) interne a prečo je fyzická bezpečnosť rovnako dôležitá ako softvérová bezpečnosť.

Čo je USB sniffer?
USB sniffer je hardvérové zariadenie, ktoré sa nachádza medzi USB perifériou (ako je myš alebo klávesnica) a hostiteľským počítačom. Dáta cez neho prechádzajú transparentne, takže zariadenie funguje normálne, pričom súčasne zachytáva a sprístupňuje USB dátové pakety cez samostatné monitorovacie rozhranie.
V tomto projekte USB sniffer funguje ako priechodné zariadenie:
- USB myš alebo klávesnica sa pripája k snifferu
- Sniffer sa pripája k počítaču
- Samostatné USB pripojenie zo sniffera smeruje do monitorovacieho počítača so spusteným Wiresharkom
Všetka USB prevádzka prechádzajúca medzi zariadením a počítačom môže byť zachytená a dekódovaná bez ovplyvnenia normálnej prevádzky :contentReference[oaicite:0]{index=0}.

Použité hlavné komponenty
Hardvér USB sniffera
USB sniffer použitý v tomto projekte je založený na návrhu FPGA vytvorenom Alexom Tarasovom. Kompletný návrh zahŕňa firmvér, súbory PCB a softvérové nástroje. Komerčná jednotka použitá tu je dodávaná s predinštalovaným firmvérom, takže pred použitím nie je potrebné žiadne flashovanie ani konfigurácia.
Interne sniffer odpočúva diferenciálne dátové linky USB a zrkadlí pakety do samostatného USB rozhrania, ktoré môže Wireshark monitorovať.
Myš a klávesnica (USB HID zariadenia)
Myš aj klávesnica sú USB Human Interface Devices (HID). Tieto zariadenia posielajú hostiteľskému počítaču periodické správy opisujúce ich stav:
- Myš: stavy tlačidiel, pohyb X, pohyb Y
- Klávesnica: modifikačné klávesy a skenovacie kódy kláves
Tieto správy sa prenášajú cez USB v čitateľnej, nešifrovanej forme, preto ich možno zachytiť snifferom.
Počítač s Wiresharkom
Wireshark sa používa na zachytávanie a analýzu USB paketov. V systéme Windows si zachytávanie USB vyžaduje ďalšie komponenty na umožnenie prístupu k USB prevádzke na úrovni ovládača.
Zapojenie a pripojenie
USB sniffer je zapojený do série medzi USB zariadenie a počítač.

- Pripojte myš alebo klávesnicu k USB vstupnému portu sniffera
- Pripojte USB výstupný port sniffera k počítaču
- Pripojte monitorovací USB port sniffera k rovnakému alebo inému počítaču so spusteným Wiresharkom
USB zariadenie naďalej funguje normálne, zatiaľ čo jeho prevádzka je zrkadlená do monitorovacieho portu.
Inštalácia potrebného softvéru
Inštalácia Wiresharku
Wireshark musí byť nainštalovaný na monitorovacom počítači. Počas inštalácie v systéme Windows je nevyhnutné povoliť komponent podpory zachytávania USB. Bez tohto ovládača nemožno zachytávať USB prevádzku.
Po inštalácii Wireshark zobrazí USB zachytávacie rozhrania spolu so sieťovými rozhraniami.
Ovládač USB sniffera (Windows)
V systéme Windows je potrebný malý pomocný spustiteľný súbor, ktorý umožní Wiresharku prístup k dátam USB sniffingu z hardvéru. Tento spustiteľný súbor musí byť umiestnený v systémovej ceste (napríklad priamo v priečinku C:\Program Files\Wireshark\extcap alebo kdekoľvek, kde máte nainštalovaný Wireshark), aby Wireshark mohol komunikovať so snifferom.
Zachytávanie USB dát vo Wiresharku
Po spustení Wiresharku vyberte rozhranie USB sniffera a začnite zachytávať. Spočiatku sa môže zobraziť veľké množstvo nesúvisiacej USB prevádzky.
Použitie USB filtrov
Na zameranie sa iba na relevantné USB dáta sa použije zobrazovací filter:
usbll
Tento filter zobrazuje iba pakety USB Link Layer, ktoré obsahujú surové USB transakcie vymieňané medzi zariadením a hostiteľom.
Je potrebné ďalšie filtrovanie, pretože USB produkuje veľmi vysoký objem dát.
Filtrovanie podľa ID paketu (PID)
Dátové pakety myši a klávesnice možno identifikovať podľa špecifických ID paketov (PID). V tomto projekte sú pozorované relevantné PID:
0xC30x4B
Tieto je možné filtrovať vo Wiresharku pomocou:
usbll.pid == 0xC3 || usbll.pid == 0x4B
Tento filter izoluje pakety HID správ prichádzajúce z myši alebo klávesnice.
Pochopenie údajov z myši
Keď sa myš pohybuje alebo sa na ňu klikne, HID správy sa odosielajú nepretržite. Každá správa obsahuje niekoľko bajtov:
- ID správy
- Stavy tlačidiel (ľavé, pravé, stredné)
- Pohyb na osi X
- Pohyb na osi Y
Pozorovaním meniacich sa hodnôt bajtov vo Wiresharku možno odvodiť smer a rýchlosť pohybu myši. Dokonca aj bez klikania samotný pohyb generuje viditeľnú USB aktivitu.
Pochopenie údajov z klávesnice
Údaje z klávesnice sa odosielajú ako HID správy obsahujúce skenovacie kódy, nie hodnoty ASCII. Každému klávesu zodpovedá konkrétne HID ID použitia.
Napríklad:
0x04→ Písmeno A0x05→ Písmeno B0x0E→ Písmeno K
Veľké a malé písmená sú určené modifikačnými klávesmi, ako je Shift, ktoré sa nachádzajú v samostatných bajtoch správy.
Funkčné klávesy, ako napríklad F12, tiež generujú jedinečné skenovacie kódy, ktoré možno priamo pozorovať v zachytených paketoch.
Bezpečnostné dôsledky
Tento projekt jasne demonštruje, že USB HID prevádzka nie je šifrovaná. Ak sa škodlivé zariadenie fyzicky umiestni medzi klávesnicu a počítač, môže zachytiť každý úder klávesu vrátane používateľských mien a hesiel.
To je dôvod, prečo sú USB bezpečnosť, dôveryhodný hardvér a fyzická kontrola prístupu kritické v citlivých prostrediach.
Zhrnutie demonštrácie
V tejto demonštrácii boli úspešne zachytené a dekódované nasledujúce údaje:
- Pohyb myši a aktivita tlačidiel
- Jednotlivé stlačenia klávesov klávesnice
- Funkčné a modifikačné klávesy
- Celé slová napísané na klávesnici
USB sniffer pracuje transparentne, čo sťažuje jeho detekciu bez fyzickej kontroly.
Záver
Tento projekt USB sniffera poskytuje výkonnú praktickú demonštráciu toho, ako USB komunikácia funguje na najnižšej úrovni. Kombináciou špecializovaného sniffovacieho hardvéru s Wiresharkom je možné presne vidieť, ako vstupné zariadenia komunikujú s počítačmi.
Projekt je ideálny na učenie sa USB protokolov, štruktúr HID správ a praktických bezpečnostných aspektov. Hoci je demonštrovaný na myši a klávesnici, rovnaké princípy platia pre mnohé ďalšie USB zariadenia.
Stiahnutie softvéru
Pomocná aplikácia pre Windows usb_sniffer_win.exe, potrebná na zachytávanie USB údajov pomocou Wiresharku, je k dispozícii na stiahnutie pod týmto článkom.
Things you might need
-
AmazonPurchase USB sniffer from Amazonamzn.to
-
eBayPurchase USB sniffer from eBayebay.us
-
AliExpressPurchase USB sniffer from AliExpresss.click.aliexpress.com
-
BanggoodPurchase USB sniffer from Banggoodbanggood.com
Resources & references
-
DownloadDownload Wiresharkwireshark.org
Files📁
User’s Manual
-
USB Sniffer User's manual_english
usb_sniffer_manual_english-1.pdf1.06 MB -
USB Sniffer Manual EnglishUser manual for a USB sniffer device. It explains how to set up and use the sniffer to capture and analyze USB traffic between a host and a device.
usb_sniffer_manual_english.pdf1.06 MB
Other files
-
usb_sniffer_win.exe
usb_sniffer_win.zip0.29 MB