Осебиятҳо дар ядрои Linux аз фосилаи дур тавассути Bluetooth истифода мешаванд

Дар ядрои Linux осебпазирӣ (CVE-2022-42896) кашф шудааст, ки эҳтимолан метавонад барои иҷро кардани коди сатҳи ядро ​​аз фосилаи дур тавассути фиристодани бастаи махсус таҳияшудаи L2CAP тавассути Bluetooth истифода шавад. Мушкилоти шабеҳ (CVE-2022-42895) дар коркарди L2CAP низ кашф шудааст, ки метавонад боиси ихроҷи хотираи ядро ​​дар бастаҳои конфигуратсия гардад. Занияти аввал аз моҳи августи соли 2014 (ядро 3.16) ва дуввумӣ аз октябри соли 2011 (ядро 3.0) мавҷуд аст. Офтобҳо дар версияҳои ядрои Linux 6.1.0, 6.0.8, 4.9.333, 4.14.299, 4.19.265, 5.4.224, 5.10.154 ва 5.15.78 ислоҳ шудаанд. Шумо метавонед ислоҳро дар тақсимот дар саҳифаҳои зерин пайгирӣ кунед: Debian, Ubuntu, Gentoo, RHEL, SUSE, Fedora, Arch.

Барои нишон додани имкони анҷом додани ҳамлаи дурдаст, прототипҳои истисмор нашр шудаанд, ки дар Ubuntu 22.04 кор мекунанд. Барои анҷом додани ҳамла, ҳамлакунанда бояд дар доираи Bluetooth бошад - ҷуфткунии пешакӣ талаб карда намешавад, аммо Bluetooth бояд дар компютер фаъол бошад. Ҳамла донистани суроғаи MAC-и дастгоҳи ҷабрдидаро талаб мекунад, ки онро тавассути бӯй кардан ё дар баъзе дастгоҳҳо аз суроғаи Wi-Fi MAC ҳисоб кардан мумкин аст.

Ҳассосияти аввал (CVE-2022-42896) аз дастрасии бефоида ба минтақаи хотираи аллакай озодшуда ҳангоми амалисозии функсияҳои l2cap_connect ва l2cap_le_connect_req ба вуҷуд омадааст. Пас аз таъсиси канал тавассути занги new_connection, барои он қулф гузошта нашудааст, балки таймер (__set_chan_timer) насб карда шуд, ки пас аз ба охир расидани мӯҳлат функсияи l2cap_chan_timeout-ро даъват кард ва каналро бе тафтиши анҷоми кор бо канал дар функсияҳои l2cap_le_connect* тоза кард.

Муддати пешфарз 40 сония аст ва тахмин карда мешуд, ки шарти мусобиқа бо чунин таъхир рух дода наметавонад. Бо вуҷуди ин, маълум шуд, ки хатогии дигар дар коркарди SMP метавонад боиси фавран занг задани таймер гардад, ки дар натиҷа ҳолати мусобиқа ба вуҷуд омадааст. Камбудӣ дар l2cap_le_connect_req метавонад боиси ихроҷи хотираи ядро ​​гардад, дар ҳоле ки дар l2cap_connect он метавонад мундариҷаи хотираро аз нав нависад ва рамзи номуайянро иҷро кунад. Варианти аввалини ҳамла метавонад бо истифода аз Bluetooth LE 4.0 (аз соли 2009) ва дуввум бо истифода аз Bluetooth BR/EDR 5.2 (аз соли 2020) анҷом дода шавад.

Осебпазирии дуюм (CVE-2022-42895) аз ихроҷи хотираи боқимонда дар функсияи l2cap_parse_conf_req ба вуҷуд омадааст, ки онро метавон барои ба таври фосилавӣ ба даст овардани маълумот дар бораи нишондиҳандаҳои сохтори ядро ​​тавассути ирсоли дархостҳои конфигуратсияи махсус таҳияшуда истифода бурд. Функсияи l2cap_parse_conf_req сохтори l2cap_conf_efs-ро истифода бурд, ки барои он хотираи ҷудошуда қаблан оғоз карда нашудааст. Бо коркарди парчами FLAG_EFS_ENABLE имкон дошт, ки маълумоти кӯҳнаи стекро ба пакет дохил кунед. Мушкилот танҳо дар системаҳое зоҳир мешавад, ки ядро ​​бо опсияи CONFIG_BT_HS тартиб дода шудааст (бо нобаёнӣ ғайрифаъол аст, аммо дар баъзе тақсимотҳо, ба монанди Ubuntu фаъол аст). Ҳамлаи бомуваффақият инчунин танзим кардани параметри HCI_HS_ENABLED тавассути интерфейси идоракуниро ба true (бо нобаёнӣ истифода намешавад) талаб мекунад.

Манбаъ: opennet.ru

Илова Эзоҳ