USB Raw Gadget, 'n Linux-module om USB-toestelle na te boots, is beskikbaar

Andrey Konovalov van Google ontwikkel 'n nuwe module USB Raw-apparaat, toelaat naboots USB-toestelle in gebruikersruimte. Is hangende aansoek om hierdie module by die hoofgedeelte van die Linux-kern in te sluit. USB Raw Gadget reeds toegepas by Google om fuzz-toetsing van die kern-USB-stapel te vergemaklik met behulp van 'n toolkit syzkaller.

Die module voeg 'n nuwe programmeringskoppelvlak by die kernsubstelsel USB-toestel en word ontwikkel as 'n alternatief vir GadgetFS. Die skepping van 'n nuwe API is te wyte aan die behoefte om lae-vlak en direkte toegang tot die USB Gadget-substelsel vanaf gebruikersruimte te verkry, wat dit toelaat om alle moontlike USB-versoeke te verwerk (GadgetFS verwerk sommige versoeke op sy eie, sonder om dit aan die gebruiker oor te dra spasie). Die USB Raw Gadget word bestuur deur die /dev/raw-gadget-toestel, soortgelyk aan /dev/gadget in GadgetFS, maar die interaksie gebruik 'n ioctl()-gebaseerde koppelvlak eerder as 'n pseudo-FS.

Benewens die direk verwerking van alle USB-versoeke deur 'n gebruiker-spasie-proses, beskik die nuwe koppelvlak ook oor die vermoΓ« om enige data terug te stuur in reaksie op 'n USB-versoek (GadgetFS voer USB-beskrywer-validering uit en filter sekere antwoorde, wat die opsporing van foute tydens USB verhoed stapel fuzzing toetsing). Die Raw Gadget laat jou ook toe om 'n spesifieke UDC (USB Device Controller)-toestel en bestuurder te kies om aan te heg, terwyl GadgetFS aan die eerste beskikbare UDC-toestel heg. Voorspelbare name toegeken aan verskillende UDC's eindpunt om verskillende tipes data-uitruilkanale binne een toestel te skei.

Bron: opennet.ru

Voeg 'n opmerking