USB Ceyriin Gadget, module Linux ah oo loogu talagalay ku dayashada aaladaha USB, ayaa diyaar ah

Andrey Konovalov oo ka socda Google ayaa soo saaraya cutub cusub Qalabka Qalabka ee USB, oggolaanshaha ku daydo aaladaha USB ee goobta isticmaalaha. waa la sugayaa codsiga si loogu daro cutubkan kernel-ka Linux ugu weyn. Qalabka ceeriin USB mar hore codsatay Google-ka si loo fududeeyo tijaabinta fuzz ee xirmada kernel USB iyadoo la isticmaalayo qalab syzkaller.

Module-ku wuxuu ku darayaa is dhexgalka barnaamijka cusub ee nidaamka kernel-ka Qalabka USB waxaana loo soo saaray beddelka GadgetFS. Abuuritaanka API cusub waxaa waday baahida loo qabo helitaanka heer hoose oo toos ah nidaamka hoosaadka USB Gadget ee booska isticmaalaha, taas oo u oggolaanaysa inay ka baaraandegto dhammaan codsiyada USB ee suurtagalka ah (GadgetFS waxay u socodsiisaa codsiyada qaar si madax-bannaan, iyada oo aan loo gudbin booska isticmaalaha) . Qalabka ceeriin ee USB waxaa lagu maamulaa iyada oo loo marayo /dev/qalabka ceeriin, oo la mid ah /dev/gadget ee GadgetFS, laakiin isdhexgalka wuxuu isticmaalaa ioctl () - interface ku salaysan halkii uu ka ahaan lahaa FS.

Marka lagu daro habka tooska ah ee dhammaan codsiyada USB-ga ee habka goobta isticmaalaha, interface-ka cusub wuxuu kaloo leeyahay awoodda lagu soo celin karo xog kasta iyadoo laga jawaabayo codsiga USB (GadgetFS waxay hubisaa saxnaanta sharraxayaasha USB waxayna shaandheysaa jawaabaha qaarkood, taas oo ka hortagaysa ogaanshaha khaladaadka inta lagu jiro tijaabinta fuzz ee xirmada USB). Gadget-ka ceeriin waxa kale oo uu ku siinayaa awood aad ku doorato qalab gaar ah oo UDC (USB Device Controller) iyo darawalka si aad ugu xidho, halka GadgetFS ay ku xidhayso aaladda UDC ugu horraysa. Magacyo la saadaalin karo ayaa loo qoondeeyay UDC-yo kala duwan dhammaadka si loo kala saaro noocyada kala duwan ee kanaalka xog-isweydaarsiga hal qalab gudahood.

Source: opennet.ru

Add a comment