USB Raw Gadget, một mô-đun Linux để mô phỏng các thiết bị USB, đã có sẵn

Andrey Konovalov từ Google đang phát triển một mô-đun mới Tiện ích USB thô, cho phép mô phỏng các thiết bị USB trong không gian người dùng. Đang chờ xử lý ứng dụng để đưa mô-đun này vào nhân Linux chính. Tiện ích thô USB đã có đã áp dụng tại Google để đơn giản hóa việc kiểm tra fuzz của ngăn xếp nhân USB bằng các công cụ syzkaller.

Mô-đun thêm giao diện lập trình mới vào hệ thống con kernel Tiện ích USB và đang được phát triển như một giải pháp thay thế cho GadgetFS. Việc tạo API mới được thúc đẩy bởi nhu cầu có được quyền truy cập trực tiếp và cấp độ thấp vào hệ thống con Tiện ích USB từ không gian người dùng, cho phép nó xử lý tất cả các yêu cầu USB có thể có (GadgetFS xử lý một số yêu cầu một cách độc lập mà không chuyển nó sang không gian người dùng) . Tiện ích thô USB được điều khiển thông qua thiết bị /dev/raw-gadget, tương tự như /dev/gadget trong GadgetFS, nhưng tương tác sử dụng giao diện dựa trên ioctl() thay vì giả FS.

Ngoài việc xử lý trực tiếp tất cả các yêu cầu USB theo một quy trình trong không gian người dùng, giao diện mới còn có khả năng trả về bất kỳ dữ liệu nào đáp ứng yêu cầu USB (GadgetFS kiểm tra tính chính xác của bộ mô tả USB và lọc một số phản hồi nhất định, giúp ngăn chặn việc phát hiện lỗi trong quá trình kiểm tra fuzz của ngăn xếp USB). Tiện ích thô cũng cung cấp cho bạn khả năng chọn trình điều khiển và thiết bị UDC (Bộ điều khiển thiết bị USB) cụ thể để gắn vào, trong khi GadgetFS gắn vào thiết bị UDC có sẵn đầu tiên. Tên có thể dự đoán được gán cho các UDC khác nhau thiết bị đầu cuối để tách các loại kênh trao đổi dữ liệu khác nhau trong một thiết bị.

Nguồn: opennet.ru

Thêm một lời nhận xét