Достапен е USB Raw Gadget, модул за Linux за емулација на USB-уреди

Андреј Коновалов од Google развива нов модул USB суровини гаџети, дозволувајќи емулира USB-уреди во корисничкиот простор. Се чека апликација за вклучување на овој модул во главниот Linux кернел. USB Raw Gadget веќе важи во Google да го поедностави fuzz тестирањето на стекот на USB кернелот користејќи алатки syzkaller.

Модулот додава нов програмски интерфејс во потсистемот на јадрото USB гаџет и се развива како алтернатива на GadgetFS. Создавањето на ново API беше поттикнато од потребата да се добие ниско ниво и директен пристап до потсистемот USB Gadget од корисничкиот простор, овозможувајќи му да ги обработува сите можни USB барања (GadgetFS обработува некои барања независно, без да го пренесува на корисничкиот простор) . USB Raw Gadget се контролира преку уредот /dev/raw-gadget, слично на /dev/gadget во GadgetFS, но интеракцијата користи интерфејс базиран на ioctl() наместо псевдо-FS.

Покрај директната обработка на сите USB барања преку процес во корисничкиот простор, новиот интерфејс, исто така, има можност за враќање на какви било податоци како одговор на барање за USB (GadgetFS ја проверува валидноста на дескрипторите за USB и филтрира одредени одговори, што спречува грешки од тоа да биде откриено за време на fuzz тестирање на USB стек) . Raw Gadget исто така ви дава можност да изберете специфичен UDC (USB Device Controller) уред и драјвер за прикачување, додека GadgetFS се прикачува на првиот достапен UDC уред. Предвидливи имиња се доделуваат на различни UDC крајната точка за да се одделат различни типови канали за размена на податоци во еден уред.

Извор: opennet.ru

Додадете коментар