USB Raw Gadget, modulek Linux ji bo emûlkirina cîhazên USB, heye

Andrey Konovalov ji Google modulek nû pêş dixe Gadget Raw USB, destûr dide di cîhê bikarhêner de cîhazên USB-ê mîna hev bikin. Li bendê ye bikaranînî ji bo tevlêbûna vê modulê di kernel Linux ya sereke de. Jixwe Gadgeta Raw USB sepandin li Google ji bo hêsankirina ceribandina fuzz a stûna kernel USB bi karanîna amûran syzkaller.

Modul navberek bernamesaziya nû li binepergala kernel zêde dike Gadget USB û wekî alternatîfek ji bo GadgetFS tê pêşve xistin. Afirandina API-yek nû ji ber hewcedariya bidestxistina asta nizm û rasterast a binepergala Gadget-a USB-ê ji cîhê bikarhêner ve hatî rêve kirin, ku dihêle ew hemî daxwazên USB-ê yên gengaz pêvajoyê bike (GadgetFS hin daxwazan bi rengek serbixwe pêvajoyê dike, bêyî ku wê ji cîhê bikarhêner re derbas bike) . Gadgeta Raw USB bi navgîniya /dev/raw-gadget ve tê kontrol kirin, mîna /dev/gadget di GadgetFS-ê de, lê pêwendî ji bilî pseudo-FS-ê navbeynek bingehîn a ioctl () bikar tîne.

Digel pêvajoyek rasterast a hemî daxwazên USB-ê ji hêla pêvajoyek li cîhê bikarhêner ve, navbeynkariya nû di heman demê de şiyana vegerandina daneyan wekî bersivek daxwazek USB-yê vedihewîne (GadgetFS rastdariya diyarkerên USB-ê kontrol dike û hin bersivan fîlter dike, ku pêşî li xeletiyan digire. ji ku di dema ceribandina fuzz a stika USB de hate dîtin). Raw Gadget di heman demê de derfetê dide we ku hûn amûrek û ajokerek taybetî ya UDC (Kontrolkerê Amûra USB) hilbijêrin ku pê ve girêbidin, dema ku GadgetFS bi yekem cîhaza UDC ya berdest ve girêdide. Navên pêşbînîkirî ji UDC-yên cûda re têne destnîşan kirin endpoint ji bo veqetandina cûreyên cûda yên kanalên danûstendina daneyê di nav yek cîhazê de.

Source: opennet.ru

Add a comment