Soek Kode

$34 USB-snuffelaar-tutoriaal: Vang muisbeweging en sleutelbordtoetsaanslagen vas met Wireshark

$34 USB-snuffelaar-tutoriaal: Vang muisbeweging en sleutelbordtoetsaanslagen vas met Wireshark

USB Sniffer Tutoriaal: Vang Muisbeweging en Sleutelbordtoetsaanslae vas met Wireshark

In hierdie projek ondersoek ons hoe 'n USB-snuffeltoestel gebruik kan word om USB-kommunikasie tussen 'n rekenaar en algemene invoertoestelle soos 'n muis en 'n sleutelbord te monitor en te ontleed. Deur 'n USB-snuffelaar inlyn tussen die USB-toestel en die rekenaar te plaas, kan alle USB-pakkies wat deurgaan vasgevang en in reële tyd met Wireshark ontleed word.

usb_sniffter-12

Hierdie tutoriaal demonstreer hoe muisbewegings, knoppieklikke, en selfs sleutelbordtoetsaanslae (insluitend wagwoorde) op die USB-protokolvlak waargeneem kan word. Die projek is bedoel vir opvoedkundige doeleindes om te verstaan hoe USB-menslike-interfasetoestelle (HID) intern werk en waarom fisiese sekuriteit net so belangrik is as sagtewaresekuriteit.

Wat is 'n USB-snuffelaar?

'n USB-snuffelaar is 'n hardewaretoestel wat tussen 'n USB-bykomstigheid (soos 'n muis of sleutelbord) en 'n gasheerrekenaar sit. Dit stuur data deursigtig deur sodat die toestel normaal werk, terwyl dit terselfdertyd die USB-datapakkies vasvang en blootstel deur 'n aparte moniteringskoppelvlak.

In hierdie projek dien die USB-snuffelaar as 'n deurlaattoestel:

  • Die USB-muis of sleutelbord verbind aan die snuffelaar
  • Die snuffelaar verbind aan die rekenaar
  • 'n Aparte USB-verbinding van die snuffelaar gaan na 'n moniteringsrekenaar wat Wireshark gebruik

Alle USB-verkeer wat tussen die toestel en die rekenaar beweeg, kan vasgevang en gedekodeer word sonder om normale werking te beïnvloed :contentReference[oaicite:0]{index=0}.

Hoofkomponente wat gebruik word

USB-snuffelaarhardeware

Die USB-snuffelaar wat in hierdie projek gebruik word, is gebaseer op 'n FPGA-ontwerp wat deur Alex Tarasov geskep is. Die volledige ontwerp sluit firmware, PCB-lêers en sagtewaregereedskap in. Die kommersiële eenheid wat hier gebruik word, kom met voorafgelaaide firmware, dus geen flits of konfigurasie is nodig voor gebruik nie.

Intern tap die snuffelaar die USB-differensiële datalyne en weerspieël die pakkies na 'n aparte USB-koppelvlak wat Wireshark kan monitor.

usb_sniffter-4

Muis en Sleutelbord (USB HID-toestelle)

Beide die muis en sleutelbord is USB-menslike-interfasetoestelle (HID). Hierdie toestelle stuur periodieke verslae na die gasheerrekenaar wat hul toestand beskryf:

  • Muis: knoppietoestande, X-beweging, Y-beweging
  • Sleutelbord: wysigertoetse en sleutelskankodes

Hierdie verslae word in duidelike, ongeënkripteerde vorm oor USB gestuur, wat is hoekom hulle deur 'n snuffelaar vasgevang kan word.

Rekenaar met Wireshark

Wireshark word gebruik om die USB-pakkies vas te vang en te ontleed. Op Windows vereis USB-vaslegging bykomende komponente om toegang tot USB-verkeer op die bestuurdersvlak moontlik te maak.

Bedrading en Verbinding

Die USB-snuffelaar word inlyn tussen die USB-toestel en die rekenaar verbind.

usb-sniffer-wiring-mouse
usb-sniffer-wiring-keyboard
usb-sniffer-wiring-mouse
  • Verbind die muis of sleutelbord aan die USB-invoerpoort van die snuffelaar
  • Verbind die snuffelaar se USB-uitsetpoort aan die rekenaar
  • Verbind die snuffelaar se moniterings-USB-poort aan dieselfde of 'n ander rekenaar wat Wireshark gebruik

Die USB-toestel werk steeds normaal terwyl sy verkeer na die moniteringspoort weerspieël word.

Installeer Vereiste Sagteware

Wireshark-installasie

Wireshark moet op die moniteringsrekenaar geïnstalleer word. Tydens installasie op Windows is dit noodsaaklik om die USB-vasleggingondersteuningskomponent te aktiveer. Sonder hierdie bestuurder kan USB-verkeer nie vasgevang word nie.

Sodra dit geïnstalleer is, sal Wireshark USB-vasleggingkoppelvlakke saam met netwerkkoppelvlakke lys.

USB-snuffelaarbestuurder (Windows)

'n Klein hulpuitvoerbare lêer is op Windows nodig om Wireshark toegang tot USB-snuffeldata van die hardeware te gee. Hierdie uitvoerbare lêer moet in die stelselpad geplaas word (byvoorbeeld, direk onder C:\Program Files\Wireshark\extcap  of waar jy ook al Wireshark geïnstalleer het) sodat Wireshark met die snuffelaar kan kommunikeer.

Vasvang USB-data in Wireshark

Na die begin van Wireshark, kies die USB-snuffelaar-koppelvlak en begin vasvang. Aanvanklik mag 'n groot hoeveelheid onverwante USB-verkeer verskyn.

usb_sniffter-11

Toepassing van USB-filters

Om slegs op relevante USB-data te fokus, word 'n vertoonfilter toegepas:

usbll

Hierdie filter wys slegs USB-skakellaagpakkies, wat die rou USB-transaksies bevat wat tussen die toestel en die gasheer uitgeruil word.

Verdere filtering is nodig omdat USB 'n baie hoë volume data produseer.

Filtering deur Pakkie-ID (PID)

Muis- en sleutelborddatapakkies kan geïdentifiseer word deur spesifieke Pakkie-IDs (PID). In hierdie projek is die relevante PIDs wat waargeneem is:

  • 0xC3
  • 0x4B

Hierdie kan in Wireshark gefiltreer word deur:

usbll.pid == 0xC3 || usbll.pid == 0x4B

Hierdie filter isoleer HID-verslagpakkies wat van die muis of sleutelbord afkomstig is.

Verstaan van Muisdata

Wanneer die muis beweeg of geklik word, word HID-verslae deurlopend gestuur. Elke verslag bevat verskeie grepe:

  • Verslag-ID
  • Knoppiestate (links, regs, middel)
  • X-as beweging
  • Y-as beweging

Deur die veranderende greepwaardes in Wireshark waar te neem, kan die muis se bewegingsrigting en spoed afgelei word. Selfs sonder om te klik, genereer beweging alleen sigbare USB-aktiwiteit.

Verstaan van Sleutelborddata

Sleutelborddata word gestuur as HID-verslae wat skandeerkodes bevat eerder as ASCII-waardes. Elke sleutel stem ooreen met 'n spesifieke HID-gebruiks-ID.

Byvoorbeeld:

  • 0x04 → Letter A
  • 0x05 → Letter B
  • 0x0E → Letter K

Hoofletters en kleinletters word bepaal deur wysigersleutels soos Shift, wat in aparte grepe van die verslag verskyn.

Funksiesleutels soos F12 genereer ook unieke skandeerkodes wat direk in die vasgevangde pakkies waargeneem kan word.

Sekuriteitsimplikasies

Hierdie projek demonstreer duidelik dat USB HID-verkeer nie geënkripteer is nie. As 'n kwaadwillige toestel fisies tussen 'n sleutelbord en 'n rekenaar geplaas word, kan dit elke sleuteldruk vasvang, insluitend gebruikersname en wagwoorde.

Dit is hoekom USB-sekuriteit, vertroude hardeware, en fisiese toegangsbeheer krities is in sensitiewe omgewings.

Demonstrasie-Opsomming

In hierdie demonstrasie is die volgende suksesvol vasgevang en gedekodeer:

  • Muisbeweging en knoppie-aktiwiteit
  • Individuele sleutelbord sleuteldrukke
  • Funksiesleutels en wysigersleutels
  • Volledige woorde wat op die sleutelbord getik is

Die USB-snuffelaar werk deursigtig, wat opsporing moeilik maak sonder fisiese inspeksie.

Gevolgtrekking

Hierdie USB-snuffelaarprojek bied 'n kragtige praktiese demonstrasie van hoe USB-kommunikasie op die laagste vlak werk. Deur toegewyde snuffelhardeware met Wireshark te kombineer, word dit moontlik om presies te sien hoe invoertoestelle met rekenaars kommunikeer.

Die projek is ideaal vir die leer van USB-protokolle, HID-verslagstrukture, en werklike sekuriteitsoorwegings. Alhoewel dit met 'n muis en sleutelbord gedemonstreer word, geld dieselfde beginsels vir baie ander USB-toestelle.

Sagteware-aflaai

Die Windows-hulptoepassing usb_sniffer_win.exe wat benodig word om USB-data met Wireshark vas te vang, is beskikbaar om onder hierdie artikel af te laai.

Beelde

usb_sniffter-3
usb_sniffter-3
usb_sniffter-4
usb_sniffter-4
usb_sniffter-5
usb_sniffter-5
usb_sniffter-6
usb_sniffter-6
USB Sniffer
USB Sniffer
usb_sniffter-10
usb_sniffter-10
usb_sniffter-11
usb_sniffter-11
usb_sniffter-12
usb_sniffter-12
usb_sniffter-8_software
usb_sniffter-8_software
usb_sniffter-9
usb_sniffter-9
usb-sniffer-wiring-keyboard
usb-sniffer-wiring-keyboard
usb-sniffer-wiring-mouse
usb-sniffer-wiring-mouse
Geen kode aangeheg.

Goedere wat jy dalk nodig het

Hulpbronne en verwysings

Lêers📁

Gebruikershandleiding

Ander lêers