Tutorial USB Sniffer de 34 USD: Capturați mișcarea mouse-ului și tastările de la tastatură folosind Wireshark
Ghid USB Sniffer: Capturați mișcarea mouse-ului și tastele apăsate folosind Wireshark
În acest proiect, explorăm modul în care un dispozitiv USB sniffer poate fi folosit pentru a monitoriza și analiza comunicarea USB între un computer și dispozitive de intrare comune, cum ar fi un mouse și o tastatură. Prin plasarea unui USB sniffer în serie între dispozitivul USB și computer, toate pachetele USB care trec pot fi capturate și analizate în timp real folosind Wireshark.
Acest tutorial demonstrează cum mișcările mouse-ului, clicurile pe butoane și chiar tastele apăsate (inclusiv parolele) pot fi observate la nivelul protocolului USB. Proiectul este destinat scopurilor educaționale pentru a înțelege cum funcționează intern dispozitivele USB de interfață umană (HID) și de ce securitatea fizică este la fel de importantă ca securitatea software.

Ce este un USB Sniffer?
Un USB sniffer este un dispozitiv hardware care se plasează între un periferic USB (cum ar fi un mouse sau o tastatură) și un computer gazdă. Acesta transmite datele în mod transparent, astfel încât dispozitivul funcționează normal, capturând simultan și expunând pachetele de date USB printr-o interfață de monitorizare separată.
În acest proiect, USB sniffer-ul acționează ca un dispozitiv de trecere:
- Mouse-ul sau tastatura USB se conectează la sniffer
- Sniffer-ul se conectează la computer
- O conexiune USB separată de la sniffer merge către un computer de monitorizare care rulează Wireshark
Tot traficul USB care trece între dispozitiv și computer poate fi capturat și decodat fără a afecta funcționarea normală :contentReference[oaicite:0]{index=0}.

Componentele principale utilizate
Hardware USB Sniffer
USB sniffer-ul folosit în acest proiect se bazează pe un design FPGA creat de Alex Tarasov. Designul complet include firmware, fișiere PCB și instrumente software. Unitatea comercială folosită aici vine cu firmware preîncărcat, astfel încât nu este necesară nicio programare sau configurare înainte de utilizare.
Intern, sniffer-ul interceptează liniile diferențiale de date USB și oglindește pachetele către o interfață USB separată pe care Wireshark o poate monitoriza.
Mouse și tastatură (dispozitive USB HID)
Atât mouse-ul, cât și tastatura sunt dispozitive USB de interfață umană (HID). Aceste dispozitive trimit rapoarte periodice către computerul gazdă care descriu starea lor:
- Mouse: stările butoanelor, mișcarea X, mișcarea Y
- Tastatură: taste modificatoare și coduri de scanare a tastelor
Aceste rapoarte sunt transmise în formă clară, necriptată, prin USB, motiv pentru care pot fi capturate de un sniffer.
Computer cu Wireshark
Wireshark este folosit pentru a captura și analiza pachetele USB. Pe Windows, captura USB necesită componente suplimentare pentru a permite accesul la traficul USB la nivel de driver.
Cablare și conexiune
USB sniffer-ul este conectat în serie între dispozitivul USB și computer.

- Conectați mouse-ul sau tastatura la portul de intrare USB al sniffer-ului
- Conectați portul de ieșire USB al sniffer-ului la computer
- Conectați portul USB de monitorizare al sniffer-ului la același computer sau la alt computer care rulează Wireshark
Dispozitivul USB continuă să funcționeze normal în timp ce traficul său este oglindit către portul de monitorizare.
Instalarea software-ului necesar
Instalarea Wireshark
Wireshark trebuie instalat pe computerul de monitorizare. În timpul instalării pe Windows, este esențial să activați componenta de suport pentru captura USB. Fără acest driver, traficul USB nu poate fi capturat.
Odată instalat, Wireshark va lista interfețele de captură USB alături de interfețele de rețea.
Driver USB Sniffer (Windows)
Un mic executabil de ajutor este necesar pe Windows pentru a permite Wireshark să acceseze datele de sniffing USB de la hardware. Acest executabil trebuie plasat în calea de sistem (de exemplu, direct sub C:\Program Files\Wireshark\extcap sau oriunde ați instalat Wireshark), astfel încât Wireshark să poată comunica cu sniffer-ul.
Capturarea datelor USB în Wireshark
După lansarea Wireshark, selectați interfața USB sniffer și începeți captura. Inițial, poate apărea o cantitate mare de trafic USB nelegat de subiect.
Aplicarea filtrelor USB
Pentru a vă concentra doar pe datele USB relevante, se aplică un filtru de afișare:
usbll
Acest filtru afișează doar pachetele USB Link Layer, care conțin tranzacțiile USB brute schimbate între dispozitiv și gazdă.
Este necesară o filtrare suplimentară, deoarece USB produce un volum foarte mare de date.
Filtrarea după ID-ul pachetului (PID)
Pachetele de date de la mouse și tastatură pot fi identificate prin ID-uri specifice de pachet (PID). În acest proiect, PID-urile relevante observate sunt:
0xC30x4B
Acestea pot fi filtrate în Wireshark folosind:
usbll.pid == 0xC3 || usbll.pid == 0x4B
Acest filtru izolează pachetele de rapoarte HID care provin de la mouse sau tastatură.
Înțelegerea datelor de la mouse
Când mouse-ul este mișcat sau se face clic, rapoartele HID sunt trimise continuu. Fiecare raport conține mai mulți octeți:
- ID-ul raportului
- Stările butoanelor (stânga, dreapta, mijloc)
- Mișcarea pe axa X
- Mișcarea pe axa Y
Prin observarea valorilor octeților care se schimbă în Wireshark, pot fi deduse direcția și viteza de mișcare a mouse-ului. Chiar și fără clic, doar mișcarea generează activitate USB vizibilă.
Înțelegerea datelor de la tastatură
Datele de la tastatură sunt trimise ca rapoarte HID care conțin coduri de scanare, nu valori ASCII. Fiecare tastă corespunde unui ID de utilizare HID specific.
De exemplu:
0x04→ Litera A0x05→ Litera B0x0E→ Litera K
Literele mari și mici sunt determinate de tastele modificatoare, cum ar fi Shift, care apar în octeți separați ai raportului.
Tastele funcționale, cum ar fi F12, generează, de asemenea, coduri de scanare unice care pot fi observate direct în pachetele capturate.
Implicații de securitate
Acest proiect demonstrează clar că traficul USB HID nu este criptat. Dacă un dispozitiv rău intenționat este plasat fizic între o tastatură și un computer, acesta poate captura fiecare apăsare de tastă, inclusiv nume de utilizator și parole.
Acesta este motivul pentru care securitatea USB, hardware-ul de încredere și controlul accesului fizic sunt critice în medii sensibile.
Rezumatul demonstrației
În această demonstrație, următoarele au fost capturate și decodate cu succes:
- Mișcarea mouse-ului și activitatea butoanelor
- Apăsări individuale de taste de la tastatură
- Taste funcționale și taste modificatoare
- Cuvinte complete scrise pe tastatură
Dispozitivul de captare USB funcționează transparent, ceea ce face detectarea dificilă fără o inspecție fizică.
Concluzie
Acest proiect de captare USB oferă o demonstrație practică puternică a modului în care funcționează comunicarea USB la cel mai de jos nivel. Prin combinarea hardware-ului dedicat de captare cu Wireshark, devine posibil să se vadă exact cum comunică dispozitivele de intrare cu computerele.
Proiectul este ideal pentru învățarea protocoalelor USB, a structurilor de rapoarte HID și a considerațiilor de securitate din lumea reală. Deși este demonstrat cu un mouse și o tastatură, aceleași principii se aplică multor alte dispozitive USB.
Descărcare software
Aplicația de ajutor pentru Windows usb_sniffer_win.exe, necesară pentru capturarea datelor USB cu Wireshark, este disponibilă pentru descărcare mai jos în acest articol.
Lucruri de care ai putea avea nevoie
-
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
Resurse și referințe
-
DescarcăDownload Wiresharkwireshark.org
Fișiere📁
Manualul utilizatorului
-
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
Alte fișiere
-
usb_sniffer_win.exe
usb_sniffer_win.zip0.29 MB