Linux 5.4 цөм нь цөмийн дотоод хэсгүүдэд root хандалтыг хязгаарлах засваруудыг хүлээн авсан

Линус Торвалдс хүлээн зөвшөөрсөн Линукс 5.4 цөмийн удахгүй гарах хувилбарт засваруудын багц багтсан болно "lockdown" санал болгосон Дэвид Хоуэллс (Улаан малгайт) болон Мэттью Гарретт (Мэттью гаррет, Google-д ажилладаг) нь үндсэн хэрэглэгчийн цөмд хандах хандалтыг хязгаарлах. Түгжихтэй холбоотой функцууд нь нэмэлт ачаалагдсан LSM модульд багтсан болно (Линуксийн аюулгүй байдлын модуль), UID 0 ба цөмийн хооронд саад тотгор учруулж, доод түвшний зарим функцийг хязгаарладаг.

Хэрэв халдагчид root эрхтэй кодын гүйцэтгэлд хүрсэн бол тэр өөрийн кодоо цөмийн түвшинд, жишээлбэл, kexec ашиглан цөмийг солих эсвэл /dev/kmem-ээр дамжуулан санах ойг унших/бичих зэргээр ажиллуулж болно. Ийм үйл ажиллагааны хамгийн тод үр дагавар нь байж болно тойрч гарах UEFI Secure Boot буюу цөмийн түвшинд хадгалагдсан нууц мэдээллийг сэргээх.

Эхэндээ эх хязгаарлах функцийг баталгаажуулсан ачааллын хамгаалалтыг бэхжүүлэх хүрээнд боловсруулсан бөгөөд түгээлтүүд нь UEFI Secure Boot-ийг тойрч гарахыг хориглохын тулд гуравдагч талын засваруудыг ашиглаж байна. Үүний зэрэгцээ ийм хязгаарлалтыг цөмийн үндсэн бүрэлдэхүүнд оруулаагүй болно санал зөрөлдөөн тэдгээрийн хэрэгжилт, одоо байгаа системийг тасалдуулахаас айдаг. "Түгжигдэх" модуль нь тархалтад аль хэдийн ашиглагдаж байсан засваруудыг шингээсэн бөгөөд тэдгээрийг UEFI Secure Boot-тай холбоогүй тусдаа дэд систем хэлбэрээр дахин боловсруулсан.

Түгжих горим нь /dev/mem, /dev/kmem, /dev/port, /proc/kcore, debugfs, kprobes дебаг горим, mmiotrace, tracefs, BPF, PCMCIA CIS (Картын мэдээллийн бүтэц), зарим ACPI интерфэйсүүд болон CPU-д хандах хандалтыг хязгаарладаг. MSR регистр, kexec_file болон kexec_load дуудлагууд хаагдсан, унтах горимыг хориглосон, PCI төхөөрөмжүүдийн DMA хэрэглээ хязгаарлагдмал, EFI хувьсагчаас ACPI код импортлохыг хориглосон,
Цуваа портын тасалдлын дугаар болон оролт гаралтын портыг өөрчлөх зэрэг оролт/гаралтын портуудтай ажиллахыг хориглоно.

Өгөгдмөл байдлаар түгжих модуль идэвхгүй бөгөөд үүнийг kconfig-д SECURITY_LOCKDOWN_LSM сонголтыг зааж өгсөн үед бүтээгдсэн бөгөөд "lockdown=" цөмийн параметр, "/sys/kernel/security/lockdown" хяналтын файл эсвэл угсралтын сонголтуудаар идэвхждэг. ЦӨМИЙГ_ДООГДУУЛАХ_ХҮЧ_*"Бүрэн бүтэн байдал" ба "нууцлал" гэсэн утгыг авч болно. Эхний тохиолдолд хэрэглэгчийн орон зайгаас ажиллаж байгаа цөмд өөрчлөлт оруулах боломжуудыг хаасан, хоёр дахь тохиолдолд цөмөөс эмзэг мэдээллийг гаргаж авах функцийг мөн идэвхгүй болгосон.

Түгжигдэх нь зөвхөн цөмд нэвтрэх стандарт хандалтыг хязгаарладаг боловч эмзэг байдлын ашиглалтын үр дүнд өөрчлөлт оруулахаас хамгаалахгүй гэдгийг анхаарах нь чухал юм. Openwall төсөлд эксплойт ашиглах үед ажиллаж байгаа цөмд өөрчлөлт оруулахыг хориглох хөгжиж байна тусдаа модуль LKRG (Linux Kernel Runtime Guard).

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

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