USB Raw Gadget, modul Linux untuk meniru perangkat USB, tersedia

Andrey Konovalov dari Google sedang mengembangkan modul baru Gadget Mentah USB, mengizinkan meniru perangkat USB di ruang pengguna. Sedang menunggu keputusan aplikasi untuk penyertaan modul ini di kernel Linux utama. Gadget Mentah USB sudah terapan di Google untuk menyederhanakan pengujian fuzz tumpukan kernel USB menggunakan alat syzkaller.

Modul ini menambahkan antarmuka pemrograman baru ke subsistem kernel Gadget USB dan sedang dikembangkan sebagai alternatif dari GadgetFS. Pembuatan API baru didorong oleh kebutuhan untuk mendapatkan akses tingkat rendah dan langsung ke subsistem Gadget USB dari ruang pengguna, yang memungkinkannya memproses semua kemungkinan permintaan USB (GadgetFS memproses beberapa permintaan secara independen, tanpa meneruskannya ke ruang pengguna) . USB Raw Gadget dikontrol melalui perangkat /dev/raw-gadget, mirip dengan /dev/gadget di GadgetFS, namun interaksinya menggunakan antarmuka berbasis ioctl() dan bukan pseudo-FS.

Selain pemrosesan langsung semua permintaan USB melalui proses di ruang pengguna, antarmuka baru juga dilengkapi kemampuan untuk mengembalikan data apa pun sebagai respons terhadap permintaan USB (GadgetFS memeriksa validitas deskriptor USB dan memfilter respons tertentu, sehingga mencegah kesalahan agar tidak terdeteksi selama pengujian fuzz pada tumpukan USB). Raw Gadget juga memberi Anda kemampuan untuk memilih perangkat dan driver UDC (USB Device Controller) tertentu untuk dilampirkan, sementara GadgetFS terhubung ke perangkat UDC pertama yang tersedia. Nama yang dapat diprediksi ditetapkan ke UDC yang berbeda endpoint untuk memisahkan berbagai jenis saluran pertukaran data dalam satu perangkat.

Sumber: opennet.ru

Tambah komentar