Linux Netfilter цөмийн дэд систем дэх эмзэг байдал

Сүлжээний пакетуудыг шүүж, өөрчлөхөд ашигладаг Линуксийн цөмийн дэд систем болох Netfilter-д (CVE-2021-22555) эмзэг байдал илэрсэн бөгөөд энэ нь дотоод хэрэглэгчдэд тусгаарлагдсан контейнер дотор байх зэрэг систем дээр root эрх олж авах боломжийг олгодог. KASLR, SMAP, SMEP хамгаалалтын механизмуудыг давсан эксплойтийн ажлын загвар туршилтанд бэлтгэгдсэн. Эмзэг байдлыг олж илрүүлсэн судлаач kCTF кластерт Кубернетес савыг тусгаарлах аргыг олж илрүүлснийхээ төлөө Google-ээс 20 долларын шагнал хүртжээ.

Асуудал нь 2.6.19 жилийн өмнө гарсан цөмийн 15 хувилбараас хойш байсаар байгаа бөгөөд IPT_SO_SET_REPLACE болон IP6T_SO_SET_REPLACE зохицуулагчийн алдаанаас болж тусгай форматтай параметрүүдийг compat горимд setsockopt дуудлагаар илгээх үед буфер халихад хүргэдэг. Ердийн нөхцөлд зөвхөн үндсэн хэрэглэгч compat_setsockopt() руу залгах боломжтой боловч халдлагыг гүйцэтгэхэд шаардагдах эрхийг хэрэглэгчийн нэрийн орон зайг идэвхжүүлсэн систем дээрх эрхгүй хэрэглэгч авах боломжтой.

Хэрэглэгч тусдаа root хэрэглэгчтэй контейнер үүсгэж, тэндээс эмзэг байдлыг ашиглаж болно. Жишээлбэл, "хэрэглэгчийн нэрийн орон зай" нь Ubuntu болон Fedora дээр анхдагчаар идэвхжсэн боловч Debian болон RHEL дээр идэвхждэггүй. Эмзэг байдлыг зассан засварыг 13-р сарын XNUMX-нд Линуксийн цөмд нэвтрүүлсэн. Багцын шинэчлэлтийг Debian, Arch Linux болон Fedora төслүүд аль хэдийн үүсгэсэн. Ubuntu, RHEL болон SUSE дээр шинэчлэлтүүд бэлтгэгдэж байна.

32 битээс 64 битийн дүрслэл рүү хөрвүүлсний дараа цөмийн бүтцийг хадгалах үед санах ойн хэмжээг буруу тооцоолсны улмаас xt_compat_target_from_user() функцэд асуудал үүсдэг. Алдаа нь 0x4C офсетээр хязгаарлагдсан хуваарилагдсан буферээс цааш ямар ч байрлалд дөрвөн тэг байт бичих боломжийг олгодог. Энэ функц нь root эрх олж авах боломжийг бий болгоход хангалттай байсан - msg_msg бүтэц дэх m_list->дараагийн заагчийг арилгаснаар санах ойг сулласны дараа өгөгдөлд хандах нөхцлийг бүрдүүлсэн (үнэгүй ашиглах). Дараа нь msgsnd() системийн дуудлагыг удирдах замаар хаяг болон бусад бүтцийн өөрчлөлтийн талаарх мэдээллийг олж авахад ашигласан.

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

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