USB Raw Gadget, Linukso-modulo por kopii USB-aparatojn, estas havebla

Andrey Konovalov el Guglo disvolvas novan modulon USB Kruda Novileto, permesante kopii USB-aparatojn en uzantspaco. Estas pritraktata apliko inkluzivi ĉi tiun modulon en la ĉefa parto de la Linukso-kerno. USB Raw Gadget jam aplikita ĉe Guglo por faciligi fuztestadon de la kerna USB-stako uzante ilaron syzkaller.

La modulo aldonas novan programan interfacon al la kernsubsistemo USB Gadget kaj estas disvolvita kiel alternativo al GadgetFS. La kreado de nova API ŝuldiĝas al la bezono akiri malaltnivelan kaj rektan aliron al la subsistemo USB Gadget de uzantspaco, permesante al ĝi prilabori ĉiujn eblajn USB-petojn (GadgetFS prilaboras kelkajn petojn memstare, sen transdoni ĝin al uzanto). spaco). La USB Raw Gadget estas administrita per la /dev/raw-gadget-aparato, simila al /dev/gadget en GadgetFS, sed la interagado uzas ioctl()-bazitan interfacon prefere ol pseŭdo-FS.

Krom rekte pritrakti ĉiujn USB-petojn per uzant-spaca procezo, la nova interfaco ankaŭ havas la kapablon resendi ajnajn datumojn en respondo al USB-peto (GadgetFS plenumas USB-priskriban validigon kaj filtras certajn respondojn, kio malhelpas detekton de eraroj dum USB. stack fuzzing testing). La Raw Gadget ankaŭ ebligas al vi elekti specifan UDC (USB Device Controller) aparaton kaj pelilon por ligi, dum GadgetFS aliĝas al la unua disponebla UDC-aparato. Antaŭvideblaj nomoj asignitaj al malsamaj UDCoj finpunkto apartigi malsamajn specojn de datumŝanĝkanaloj ene de unu aparato.

fonto: opennet.ru

Aldoni komenton