Гол цөмд Linux Bluetooth-ээр тусгайлан боловсруулсан L2CAP пакетийг илгээх замаар цөмийн түвшний кодыг алсаас гүйцэтгэхэд ашиглаж болох эмзэг байдал (CVE-2022-42896) илэрсэн. Үүнтэй төстэй асуудал (CVE-2022-42895) нь L2CAP боловсруулагчид мөн илэрсэн бөгөөд энэ нь тохиргооны пакетуудад цөмийн санах ой алдагдахад хүргэж болзошгүй юм. Эхний эмзэг байдал 2014 оны 8-р сараас хойш (цөм 3.16), хоёр дахь нь 2011 оны 10-р сараас хойш (цөм 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 функцийг хэрэгжүүлэх явцад аль хэдийн суллагдсан санах ойн хэсэгт дараа нь үнэгүй хандсанаас үүдэлтэй. Шинэ_холболтыг буцаан дуудах замаар суваг үүсгэсний дараа түүнд зориулж түгжээг тавиагүй, харин таймерыг (__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 параметрийг үнэн гэж тохируулах шаардлагатай (анхдагчаар ашиглагддаггүй).
Эх сурвалж: opennet.ru
