Пребарување код

$34 USB Sniffer туторијал: Снимање на движењето на глувчето и притискањата на тастатурата со користење на Wireshark

$34 USB Sniffer туторијал: Снимање на движењето на глувчето и притискањата на тастатурата со користење на Wireshark

USB Sniffer туторијал: Снимање на движење на глувчето и притисоци на тастатурата користејќи Wireshark

Во овој проект, истражуваме како USB sniffer уред може да се користи за следење и анализа на USB комуникацијата помеѓу компјутер и вообичаени влезни уреди како што се глувче и тастатура. Со поставување на USB sniffer во линија помеѓу USB уредот и компјутерот, сите USB пакети што минуваат низ него можат да се снимат и анализираат во реално време користејќи Wireshark.

usb_sniffter-12

Овој туторијал покажува како движењето на глувчето, кликовите на копчињата, па дури и притисоците на тастатурата (вклучувајќи лозинки) можат да се набљудуваат на USB протокол ниво. Проектот е наменет за образовни цели за да се разбере како USB Human Interface Devices (HID) функционираат внатрешно и зошто физичката безбедност е исто толку важна колку и софтверската безбедност.

Што е USB Sniffer?

USB sniffer е хардверски уред што се поставува помеѓу USB периферен уред (како глувче или тастатура) и хост компјутер. Тој транспарентно пренесува податоци низ себе, така што уредот работи нормално, додека истовремено ги снима и изложува USB податочните пакети преку посебен интерфејс за мониторирање.

Во овој проект, USB sniffer дејствува како pass-through уред:

  • USB глувчето или тастатурата се поврзуваат на sniffer-от
  • Sniffer-от се поврзува на компјутерот
  • Посебна USB врска од sniffer-от оди до мониторинг компјутер што работи со Wireshark

Целиот USB сообраќај што минува помеѓу уредот и компјутерот може да се сними и декодира без да влијае на нормалното работење :contentReference[oaicite:0]{index=0}.

Главни компоненти што се користат

USB Sniffer хардвер

USB sniffer-от што се користи во овој проект е базиран на FPGA дизајн создаден од Алекс Тарасов. Целосниот дизајн вклучува фирмвер, PCB датотеки и софтверски алатки. Комерцијалната единица што се користи овде доаѓа со претходно вчитан фирмвер, така што не е потребно флешување или конфигурирање пред употреба.

Внатрешно, sniffer-от се приклучува на USB диференцијалните податочни линии и ги рефлектира пакетите на посебен USB интерфејс што Wireshark може да го мониторира.

usb_sniffter-4

Глувче и тастатура (USB HID уреди)

И глувчето и тастатурата се USB Human Interface Devices (HID). Овие уреди испраќаат периодични извештаи до хост компјутерот што ја опишуваат нивната состојба:

  • Глувче: состојба на копчињата, X движење, Y движење
  • Тастатура: модификаторски копчиња и скен кодови на копчиња

Овие извештаи се пренесуваат во јасна, неенкриптирана форма преку USB, поради што можат да бидат снимени од sniffer.

Компјутер со Wireshark

Wireshark се користи за снимање и анализа на USB пакетите. На Windows, USB снимањето бара дополнителни компоненти за да се овозможи пристап до USB сообраќајот на драјвер ниво.

Поврзување и жици

USB sniffer-от е поврзан во линија помеѓу USB уредот и компјутерот.

usb-sniffer-wiring-mouse
usb-sniffer-wiring-keyboard
usb-sniffer-wiring-mouse
  • Поврзете го глувчето или тастатурата на USB влезниот порт на sniffer-от
  • Поврзете го USB излезниот порт на sniffer-от со компјутерот
  • Поврзете го USB портот за мониторирање на sniffer-от со истиот или друг компјутер што работи со Wireshark

USB уредот продолжува да работи нормално додека неговиот сообраќај се рефлектира на портот за мониторирање.

Инсталирање на потребниот софтвер

Инсталација на Wireshark

Wireshark мора да биде инсталиран на компјутерот за мониторирање. За време на инсталацијата на Windows, од суштинско значење е да се овозможи компонентата за поддршка на USB снимање. Без овој драјвер, USB сообраќајот не може да се сними.

Откако ќе се инсталира, Wireshark ќе ги прикаже USB интерфејсите за снимање заедно со мрежните интерфејси.

USB Sniffer драјвер (Windows)

Потребна е мала помошна извршна датотека на Windows за да се овозможи Wireshark да пристапи до податоците од USB sniffing од хардверот. Оваа извршна датотека мора да биде поставена во системската патека (на пример, директно под C:\Program Files\Wireshark\extcap  или каде и да сте го инсталирале Wireshark) за да може Wireshark да комуницира со sniffer-от.

Снимање на USB податоци во Wireshark

По стартувањето на Wireshark, изберете го USB sniffer интерфејсот и започнете со снимање. На почетокот, може да се појави голема количина на неповрзан USB сообраќај.

usb_sniffter-11

Примена на USB филтри

За да се фокусирате само на релевантни USB податоци, се применува филтер за приказ:

usbll

Овој филтер прикажува само USB Link Layer пакети, кои ги содржат суровите USB трансакции што се разменуваат помеѓу уредот и хостот.

Потребно е дополнително филтрирање бидејќи USB произведува многу голем обем на податоци.

Филтрирање по Packet ID (PID)

Податочните пакети од глувчето и тастатурата можат да се идентификуваат со специфични Packet ID (PID). Во овој проект, релевантните PID што се набљудувани се:

  • 0xC3
  • 0x4B

Овие може да се филтрираат во Wireshark користејќи:

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

Овој филтер ги изолира HID извештаите за пакети што доаѓаат од глувчето или тастатурата.

Разбирање на податоците од глувчето

Кога глувчето се движи или се кликнува, HID извештаите се испраќаат континуирано. Секој извештај содржи неколку бајти:

  • ID на извештајот
  • Состојби на копчињата (лево, десно, средно)
  • Движење по X-оската
  • Движење по Y-оската

Со набљудување на променливите вредности на бајтите во Wireshark, може да се заклучи насоката и брзината на движењето на глувчето. Дури и без кликнување, самото движење генерира видлива USB активност.

Разбирање на податоците од тастатурата

Податоците од тастатурата се испраќаат како HID извештаи што содржат кодови за скенирање, а не ASCII вредности. Секое копче одговара на специфичен HID ID за употреба.

На пример:

  • 0x04 → Буквата A
  • 0x05 → Буквата B
  • 0x0E → Буквата K

Големите и малите букви се одредуваат со модификаторски копчиња како Shift, кои се појавуваат во одделни бајти од извештајот.

Функциските копчиња како F12 исто така генерираат уникатни кодови за скенирање што може директно да се набљудуваат во заробените пакети.

Безбедносни импликации

Овој проект јасно демонстрира дека USB HID сообраќајот не е шифриран. Ако злонамерен уред се постави физички помеѓу тастатура и компјутер, тој може да ги сними секое притискање на копчиња, вклучувајќи кориснички имиња и лозинки.

Ова е причината зошто USB безбедноста, доверливиот хардвер и контролата на физичкиот пристап се критични во чувствителни средини.

Резиме на демонстрацијата

Во оваа демонстрација, следново беше успешно снимено и декодирано:

  • Движење на глувчето и активност на копчињата
  • Поединечни притискања на копчиња од тастатурата
  • Функциски копчиња и модификаторски копчиња
  • Целосни зборови напишани на тастатурата

USB снимувачот работи транспарентно, што го прави откривањето тешко без физичка инспекција.

Заклучок

Овој USB снимувач проект обезбедува моќна практична демонстрација за тоа како USB комуникацијата функционира на најниско ниво. Со комбинирање на посветен хардвер за снимување со Wireshark, станува возможно да се види точно како влезните уреди комуницираат со компјутерите.

Проектот е идеален за учење на USB протоколи, HID извештајни структури и реални безбедносни размислувања. Иако е демонстриран со глувче и тастатура, истите принципи важат за многу други USB уреди.

Преземање на софтверот

Помошната апликација за Windows usb_sniffer_win.exe потребна за снимање на USB податоци со Wireshark е достапна за преземање под оваа статија.

Слики

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
Нема прикачен код.

Работи што можеби ќе ви требаат

Ресурси и референци

Датотеки📁

Упатство за корисникот

Други датотеки