Firejail ilovalarini izolyatsiya qilish tizimining chiqarilishi 0.9.72

Ishonchsiz yoki potentsial zaif dasturlarni ishga tushirishda asosiy tizimni buzish xavfini minimallashtirishga imkon beruvchi grafik, konsol va server ilovalarini izolyatsiya qilish tizimini ishlab chiqadigan Firejail 0.9.72 loyihasining relizi nashr etildi. Dastur C tilida yozilgan bo'lib, GPLv2 litsenziyasi bo'yicha tarqatiladi va yadrosi 3.0 dan katta bo'lgan har qanday Linux distributivida ishlashi mumkin. Tayyor Firejail paketlari deb (Debian, Ubuntu) va rpm (CentOS, Fedora) formatlarida tayyorlanadi.

Izolyatsiya qilish uchun Firejail Linuxda nom maydonlari, AppArmor va tizim chaqiruvlarini filtrlashdan (seccomp-bpf) foydalanadi. Ishga tushgandan so'ng, dastur va uning barcha asosiy jarayonlari yadro resurslarining alohida ko'rinishlaridan foydalanadi, masalan, tarmoq stegi, jarayonlar jadvali va o'rnatish nuqtalari. Bir-biriga bog'liq bo'lgan ilovalar bitta umumiy sandboxga birlashtirilishi mumkin. Agar so'ralsa, Firejail-dan Docker, LXC va OpenVZ konteynerlarini ishga tushirish uchun ham foydalanish mumkin.

Konteynerlarni izolyatsiyalash vositalaridan farqli o'laroq, firejailni sozlash juda oddiy va tizim tasvirini tayyorlashni talab qilmaydi - konteyner tarkibi joriy fayl tizimining mazmuni asosida tezda shakllanadi va dastur tugagandan so'ng o'chiriladi. Fayl tizimiga kirish qoidalarini o'rnatishning moslashuvchan vositalari taqdim etiladi; siz qaysi fayl va kataloglarga ruxsat berilgan yoki ruxsat berilmaganligini aniqlashingiz, ma'lumotlar uchun vaqtinchalik fayl tizimlarini (tmpfs) ulashingiz, fayllar yoki kataloglarga kirishni faqat o'qish uchun cheklashingiz, kataloglarni birlashtirishingiz mumkin. bind-mount va overlayfs.

Firefox, Chromium, VLC va Transmission kabi ko'plab mashhur ilovalar uchun tizim qo'ng'iroqlarini izolyatsiya qilish uchun tayyor profillar tayyorlangan. Sandbox muhitini o'rnatish uchun zarur bo'lgan imtiyozlarga ega bo'lish uchun firejail bajariladigan fayl SUID ildiz bayrog'i bilan o'rnatiladi (imtiyozlar ishga tushirilgandan so'ng qayta tiklanadi). Dasturni izolyatsiya rejimida ishga tushirish uchun dastur nomini firejail yordam dasturiga argument sifatida ko'rsatish kifoya, masalan, “firejail firefox” yoki “sudo firejail /etc/init.d/nginx start”.

Yangi nashrda:

  • Tizim qoʻngʻiroqlari uchun nomlar boʻshliqlarini yaratishni bloklaydigan seccomp filtri qoʻshildi (yoqish uchun “--cheklash-nomlar” opsiyasi qoʻshilgan). Yangilangan tizim qo'ng'iroqlari jadvallari va seccomp guruhlari.
  • Yangi jarayonlarning qo'shimcha imtiyozlarga ega bo'lishiga to'sqinlik qiluvchi takomillashtirilgan force-nonewprivs rejimi (NO_NEW_PRIVS).
  • O'zingizning AppArmor profillaringizdan foydalanish imkoniyati qo'shildi (ulanish uchun "--apparmor" opsiyasi taklif etiladi).
  • Har bir manzildan IP va trafik intensivligi haqidagi ma'lumotlarni aks ettiruvchi nettrace tarmoq trafigini kuzatish tizimi ICMP qo'llab-quvvatlashini amalga oshiradi va "--dnstrace", "--icmptrace" va "--snitrace" opsiyalarini taklif qiladi.
  • --cgroup va --shell buyruqlari o'chirildi (standart --shell=none). Firetunnel qurish sukut bo'yicha to'xtatiladi. /etc/firejail/firejail.config ichida chroot, private-lib va ​​tracelog sozlamalari o'chirilgan. grsecurity yordami to'xtatildi.

Manba: opennet.ru

a Izoh qo'shish