Нашри системаи изолятсияи барномаҳои Firejail 0.9.72

Нашри лоиҳаи Firejail 0.9.72 нашр шуд, ки системаи иҷрои ҷудогонаи барномаҳои графикӣ, консолӣ ва сервериро таҳия мекунад, ки имкон медиҳад, ки хатари осебпазирии системаи асосӣ ҳангоми иҷрои барномаҳои нобовар ё эҳтимолан осебпазир кам карда шавад. Барнома дар C навишта шудааст, ки зери иҷозатномаи GPLv2 паҳн шудааст ва метавонад дар ҳама гуна тақсимоти Linux бо ядрои калонтар аз 3.0 кор кунад. Бастаҳои тайёри Firejail дар форматҳои deb (Debian, Ubuntu) ва rpm (CentOS, Fedora) омода карда мешаванд.

Барои ҷудокунӣ, Firejail фазои номҳо, AppArmor ва филтркунии зангҳои системаро (seccomp-bpf) дар Linux истифода мебарад. Пас аз оғоз шудан, барнома ва ҳамаи равандҳои кӯдаки он намуди ҷудогонаи захираҳои ядроро истифода мебаранд, ба монанди стеки шабака, ҷадвали раванд ва нуқтаҳои пайвасткунӣ. Барномаҳое, ки аз ҳамдигар вобастаанд, метавонанд дар як қуттии умумӣ муттаҳид карда шаванд. Агар хоҳед, Firejail инчунин метавонад барои идора кардани контейнерҳои Docker, LXC ва OpenVZ истифода шавад.

Баръакси асбобҳои ҷудокунии контейнер, firejail барои танзим хеле содда аст ва омода кардани тасвири системаро талаб намекунад - таркиби контейнер дар асоси мундариҷаи системаи файлии ҷорӣ ташаккул меёбад ва пас аз анҷоми барнома нест карда мешавад. Воситаҳои фасеҳи муқаррар кардани қоидаҳои дастрасӣ ба системаи файлӣ пешниҳод карда мешаванд; шумо метавонед муайян кунед, ки кадом файлҳо ва директорияҳо дастрасанд ё манъ карда шудаанд, системаҳои муваққатии файлиро (tmpfs) барои маълумот пайваст кунед, дастрасиро ба файлҳо ё директорияҳо барои танҳо барои хондан маҳдуд кунед, директорияҳоро тавассути bind-mount ва overlayfs.

Барои шумораи зиёди барномаҳои маъмул, аз ҷумла Firefox, Chromium, VLC ва Transmission, профилҳои изолятсияи зангҳои системавӣ омода карда шудаанд. Барои ба даст овардани имтиёзҳое, ки барои таъсиси муҳити қумӣ заруранд, файли иҷрошавандаи firejail бо парчами решаи SUID насб карда мешавад (имтиёзҳо пас аз оғозёбӣ аз нав барқарор карда мешаванд). Барои иҷро кардани барнома дар ҳолати ҷудокунӣ, танҳо номи барномаро ҳамчун далел ба утилитаи firejail муайян кунед, масалан, "firejail firefox" ё "sudo firejail /etc/init.d/nginx start".

Дар нашри нав:

  • Филтри seccomp барои зангҳои системавӣ илова карда шуд, ки эҷоди фазоҳои номҳоро манъ мекунад (барои фаъол кардани имконоти "--restrict-names" илова карда шудааст). Ҷадвалҳои зангҳои системавӣ ва гурӯҳҳои seccomp навшуда.
  • Ҳолати такмилёфтаи force-nonewprivs (NO_NEW_PRIVS), ки равандҳои навро аз гирифтани имтиёзҳои иловагӣ пешгирӣ мекунад.
  • Имконияти истифодаи профилҳои AppArmor-и худ илова карда шуд (барои пайвастшавӣ опсияи "--apparmor" пешниҳод карда мешавад).
  • Системаи пайгирии трафики шабакавии nettrace, ки маълумотро дар бораи IP ва шиддати трафик аз ҳар як суроға нишон медиҳад, дастгирии ICMP-ро амалӣ мекунад ва имконоти "--dnstrace", "--icmptrace" ва "--snitrace" -ро пешниҳод мекунад.
  • Фармонҳои --cgroup ва --shell хориҷ карда шуданд (пешфарз --shell=none аст). Сохтани Firetunnel бо нобаёнӣ қатъ карда мешавад. Танзимоти chroot, private-lib ва tracelog дар /etc/firejail/firejail.config ғайрифаъол карда шудааст. дастгирии grsecurity қатъ карда шуд.

Манбаъ: opennet.ru

Илова Эзоҳ