У FreeBSD вразливість у USB-стеку (CVE-2020-7456), яка дозволяє організувати виконання коду на рівні ядра або у просторі користувача при підключенні до системи шкідливого USB-пристрою. Дескриптори пристроїв USB HID (Human Interface Device) можуть поміщати та вилучати поточний стан, дозволяючи об'єднувати опис елементів у багаторівневі групи. FreeBSD підтримує до 4 подібних рівнів вилучення. Якщо рівень не був відновлений під час обробки того ж HID-елемента, виконується звернення до некоректної області пам'яті. Проблема усунена в оновленнях FreeBSD 11.3-RELEASE-p10 та 12.1-RELEASE-p6. Як обхідний шлях захисту рекомендується встановити параметр «sysctl hw.usb.disable_enumeration=1».
Уразливість виявлена Andy Nguyen з компанії Google і не перетинається з іншою проблемою, нещодавно дослідниками з Університету Пердью та Федеральної політехнічної школи Лозанни. Дані дослідники розробили інструментарій USBFuzz, що симулює некоректний працюючий USB-пристрій для fuzzing-тестування USB-драйверів. USBFuzz найближчим часом планується . За допомогою нового інструменту було виявлено 26 уразливостей, з яких 18 Linux, 4 в Windows, 3 в macOS і одна у FreeBSD. Деталі про ці проблеми поки не розкриваються, згадано лише, що для 10 вразливостей отримані CVE-ідентифікатори, а виявляються в Linux 11 проблем вже виправлено. Подібна техніка fuzzing-тестування Андрій Коновалов із Google, який за останні кілька років в USB-стеку Linux.
Джерело: opennet.ru
