Уразлівасць ва FreeBSD, якая эксплуатуецца праз шкоднасную USB-прыладу

Ва 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 у бліжэйшы час плануецца апублікаваць на GitHub. Пры дапамозе новай прылады было выяўлена 26 уразлівасцяў, з якіх 18 у Linux, 4 у Windows, 3 у macOS і адна ва FreeBSD. Дэталі пра дадзеныя праблемы пакуль не расчыняюцца, згадана толькі, што для 10 уразлівасцяў атрыманы CVE-ідэнтыфікатары, а якія выяўляюцца ў Linux 11 праблем ужо выпраўленыя. Падобную тэхніку fuzzing-тэставанні прымяняе Андрэй Канавалаў з Google, які за апошнія некалькі гадоў выявіў 44 уразлівасці у USB-стэку Linux.

Крыніца: opennet.ru

Дадаць каментар