Search Code

Tutorial USB Sniffer $34: Tangkap Pergerakan Mouse dan Ketukan Keyboard Menggunakan Wireshark

Tutorial USB Sniffer $34: Tangkap Pergerakan Mouse dan Ketukan Keyboard Menggunakan Wireshark

Tutorial USB Sniffer: Menangkap Gerakan Mouse dan Ketikan Keyboard Menggunakan Wireshark

Dalam proyek ini, kita mengeksplorasi bagaimana perangkat USB sniffer dapat digunakan untuk memantau dan menganalisis komunikasi USB antara komputer dan perangkat input umum seperti mouse dan keyboard. Dengan menempatkan USB sniffer secara inline di antara perangkat USB dan komputer, semua paket USB yang melewatinya dapat ditangkap dan dianalisis secara real-time menggunakan Wireshark.

usb_sniffter-12

Tutorial ini menunjukkan bagaimana gerakan mouse, klik tombol, dan bahkan ketikan keyboard (termasuk kata sandi) dapat diamati pada tingkat protokol USB. Proyek ini ditujukan untuk tujuan pendidikan agar memahami cara kerja perangkat Human Interface Device (HID) USB secara internal dan mengapa keamanan fisik sama pentingnya dengan keamanan perangkat lunak.

Apa Itu USB Sniffer?

USB sniffer adalah perangkat keras yang berada di antara periferal USB (seperti mouse atau keyboard) dan komputer host. Perangkat ini meneruskan data secara transparan sehingga perangkat berfungsi normal, sambil secara bersamaan menangkap dan mengekspos paket data USB melalui antarmuka pemantauan terpisah.

Dalam proyek ini, USB sniffer berfungsi sebagai perangkat pass-through:

  • Mouse atau keyboard USB terhubung ke sniffer
  • Sniffer terhubung ke komputer
  • Koneksi USB terpisah dari sniffer menuju komputer pemantau yang menjalankan Wireshark

Semua lalu lintas USB yang melewati antara perangkat dan komputer dapat ditangkap dan didekode tanpa mengganggu operasi normal :contentReference[oaicite:0]{index=0}.

Komponen Utama yang Digunakan

Perangkat Keras USB Sniffer

USB sniffer yang digunakan dalam proyek ini didasarkan pada desain FPGA yang dibuat oleh Alex Tarasov. Desain lengkapnya mencakup firmware, file PCB, dan alat perangkat lunak. Unit komersial yang digunakan di sini sudah dilengkapi firmware, sehingga tidak diperlukan flashing atau konfigurasi sebelum digunakan.

Secara internal, sniffer menyadap jalur data diferensial USB dan mencerminkan paket ke antarmuka USB terpisah yang dapat dipantau oleh Wireshark.

usb_sniffter-4

Mouse dan Keyboard (Perangkat USB HID)

Baik mouse maupun keyboard adalah perangkat Human Interface Device (HID) USB. Perangkat ini mengirim laporan berkala ke komputer host yang menjelaskan statusnya:

  • Mouse: status tombol, gerakan X, gerakan Y
  • Keyboard: tombol pengubah dan kode scan tombol

Laporan ini dikirim dalam bentuk teks biasa tanpa enkripsi melalui USB, itulah sebabnya laporan ini dapat ditangkap oleh sniffer.

Komputer dengan Wireshark

Wireshark digunakan untuk menangkap dan menganalisis paket USB. Di Windows, penangkapan USB memerlukan komponen tambahan untuk mengaktifkan akses ke lalu lintas USB pada tingkat driver.

Pengkabelan dan Koneksi

USB sniffer dihubungkan secara inline di antara perangkat USB dan komputer.

usb-sniffer-wiring-mouse
usb-sniffer-wiring-keyboard
usb-sniffer-wiring-mouse
  • Hubungkan mouse atau keyboard ke port input USB sniffer
  • Hubungkan port output USB sniffer ke komputer
  • Hubungkan port USB pemantauan sniffer ke komputer yang sama atau komputer lain yang menjalankan Wireshark

Perangkat USB terus berfungsi normal sementara lalu lintasnya dicerminkan ke port pemantauan.

Menginstal Perangkat Lunak yang Diperlukan

Instalasi Wireshark

Wireshark harus diinstal di komputer pemantau. Selama instalasi di Windows, sangat penting untuk mengaktifkan komponen dukungan penangkapan USB. Tanpa driver ini, lalu lintas USB tidak dapat ditangkap.

Setelah terinstal, Wireshark akan menampilkan antarmuka penangkapan USB bersama dengan antarmuka jaringan.

Driver USB Sniffer (Windows)

Sebuah executable pembantu kecil diperlukan di Windows untuk memungkinkan Wireshark mengakses data sniffing USB dari perangkat keras. Executable ini harus ditempatkan di path sistem (misalnya, langsung di bawah C:\Program Files\Wireshark\extcap  atau di mana pun Anda menginstal Wireshark) sehingga Wireshark dapat berkomunikasi dengan sniffer.

Menangkap Data USB di Wireshark

Setelah meluncurkan Wireshark, pilih antarmuka USB sniffer dan mulai penangkapan. Awalnya, sejumlah besar lalu lintas USB yang tidak terkait mungkin muncul.

usb_sniffter-11

Menerapkan Filter USB

Untuk fokus hanya pada data USB yang relevan, filter tampilan diterapkan:

usbll

Filter ini hanya menampilkan paket USB Link Layer, yang berisi transaksi USB mentah yang dipertukarkan antara perangkat dan host.

Penyaringan lebih lanjut diperlukan karena USB menghasilkan volume data yang sangat tinggi.

Menyaring berdasarkan ID Paket (PID)

Paket data mouse dan keyboard dapat diidentifikasi dengan ID Paket (PID) tertentu. Dalam proyek ini, PID yang relevan yang diamati adalah:

  • 0xC3
  • 0x4B

Ini dapat difilter di Wireshark menggunakan:

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

Filter ini mengisolasi paket laporan HID yang berasal dari mouse atau keyboard.

Memahami Data Mouse

Ketika mouse digerakkan atau diklik, laporan HID dikirim secara terus-menerus. Setiap laporan berisi beberapa byte:

  • ID Laporan
  • Status tombol (kiri, kanan, tengah)
  • Pergerakan sumbu X
  • Pergerakan sumbu Y

Dengan mengamati perubahan nilai byte di Wireshark, arah dan kecepatan pergerakan mouse dapat disimpulkan. Bahkan tanpa mengklik, pergerakan saja menghasilkan aktivitas USB yang terlihat.

Memahami Data Keyboard

Data keyboard dikirim sebagai laporan HID yang berisi kode pindai, bukan nilai ASCII. Setiap tombol berhubungan dengan ID penggunaan HID tertentu.

Sebagai contoh:

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

Huruf besar dan kecil ditentukan oleh tombol pengubah seperti Shift, yang muncul dalam byte terpisah pada laporan.

Tombol fungsi seperti F12 juga menghasilkan kode pindai unik yang dapat diamati langsung dalam paket yang ditangkap.

Implikasi Keamanan

Proyek ini dengan jelas menunjukkan bahwa lalu lintas USB HID tidak dienkripsi. Jika perangkat berbahaya ditempatkan secara fisik di antara keyboard dan komputer, perangkat tersebut dapat menangkap setiap ketukan tombol, termasuk nama pengguna dan kata sandi.

Inilah sebabnya mengapa keamanan USB, perangkat keras tepercaya, dan kontrol akses fisik sangat penting di lingkungan yang sensitif.

Ringkasan Demonstrasi

Dalam demonstrasi ini, hal-hal berikut berhasil ditangkap dan didekodekan:

  • Pergerakan mouse dan aktivitas tombol
  • Tekanan tombol keyboard individual
  • Tombol fungsi dan tombol pengubah
  • Kata-kata lengkap yang diketik di keyboard

Penyadap USB beroperasi secara transparan, membuat deteksi menjadi sulit tanpa inspeksi fisik.

Kesimpulan

Proyek penyadap USB ini memberikan demonstrasi langsung yang kuat tentang bagaimana komunikasi USB bekerja pada tingkat terendah. Dengan menggabungkan perangkat keras penyadap khusus dengan Wireshark, menjadi mungkin untuk melihat secara tepat bagaimana perangkat input berkomunikasi dengan komputer.

Proyek ini ideal untuk mempelajari protokol USB, struktur laporan HID, dan pertimbangan keamanan dunia nyata. Meskipun didemonstrasikan dengan mouse dan keyboard, prinsip yang sama berlaku untuk banyak perangkat USB lainnya.

Unduhan Perangkat Lunak

Aplikasi bantuan Windows usb_sniffer_win.exe yang diperlukan untuk menangkap data USB dengan Wireshark tersedia untuk diunduh di bawah artikel ini.

Gambar

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
Tidak ada kode terlampir.

Hal-hal yang mungkin Anda butuhkan

Sumber daya & referensi

Berkas📁

Panduan Pengguna

File lainnya