Линуксийн цөмийн сул талуудыг Bluetooth-ээр алсаас ашигладаг

Линуксийн цөмд (CVE-2022-42896) эмзэг байдал илэрсэн бөгөөд үүнийг Bluetooth-ээр тусгайлан боловсруулсан L2CAP пакет илгээх замаар цөмийн түвшинд алсын зайнаас кодын гүйцэтгэлийг зохион байгуулахад ашиглаж болно. Нэмж дурдахад, L2022CAP зохицуулагч дээр өөр нэг ижил төстэй асуудал (CVE-42895-2) илэрсэн бөгөөд энэ нь тохиргооны мэдээлэл бүхий пакетууд дахь цөмийн санах ойн агуулга алдагдахад хүргэж болзошгүй юм. Эхний эмзэг байдал 2014 оны 3.16-р сараас (цөм 2011), хоёр дахь нь 3.0 оны 6.1.0-р сараас (цөм 6.0.8) гарч байна. Линуксийн цөмийн хувилбаруудын 4.9.333, 4.14.299, 4.19.265, 5.4.224, 5.10.154, 5.15.78, XNUMX, XNUMX хувилбаруудад эмзэг байдлыг зассан. Та 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 параметрийг үнэн (анхдагчаар ашигладаггүй) болгох шаардлагатай.

Эх сурвалж: opennet.ru

сэтгэгдэл нэмэх