Թողարկվել է Firejail 0.9.78 տարբերակը։ Այն մշակում է գրաֆիկական, կոնսոլային և սերվերային ծրագրերի մեկուսացված կատարման համակարգ՝ նվազագույնի հասցնելով հոսթ համակարգի վնասման ռիսկը՝ անվստահելի կամ պոտենցիալ խոցելի ծրագրեր գործարկելիս։ Ծրագիրը գրված է C լեզվով, տարածվում է GPLv2 լիցենզիայով և աշխատում է ցանկացած բաշխման վրա։ Linux 3.0-ից հին միջուկով։ Firejail-ով պատրաստի փաթեթները պատրաստվում են deb ձևաչափերով (Debian, Ubuntu) և պտույտ/րոպե (CentOS, Ֆեդորա)։
Firejail-ը մեկուսացման համար օգտագործում է անվանատարածքներ, AppArmor և համակարգային զանգերի ֆիլտրացում (seccomp-bpf): LinuxՄեկնարկելուց հետո ծրագիրը և դրա բոլոր ենթապրոցեսները օգտագործում են միջուկային ռեսուրսների առանձին ներկայացումներ, ինչպիսիք են ցանցային կուտակիչը, պրոցեսների աղյուսակը և միացման կետերը: Փոխկապակցված ծրագրերը կարող են միավորվել մեկ ընդհանուր ավազարկղի մեջ: Firejail-ը կարող է նաև օգտագործվել Docker, LXC և OpenVZ կոնտեյներներ աշխատեցնելու համար:
Ի տարբերություն կոնտեյներների մեկուսացման գործիքների, Firejail-ը չափազանց պարզ է կարգավորելու համար և չի պահանջում համակարգի պատկերի պատրաստում. կոնտեյների պարունակությունը ստեղծվում է անմիջապես՝ հիմնվելով ընթացիկ ֆայլային համակարգի բովանդակության վրա և ջնջվում է ծրագրի ավարտից հետո: Տրամադրվում են ֆայլային համակարգին մուտք գործելու ճկուն կանոններ, որոնք թույլ են տալիս սահմանել, թե որ ֆայլերին և գրացուցակներին է թույլատրվում կամ արգելվում մուտք գործել, տվյալների համար տեղադրել ժամանակավոր ֆայլային համակարգեր (tmpfs), սահմանափակել ֆայլերին կամ գրացուցակներին մուտքը միայն ընթերցման ռեժիմով և համատեղել գրացուցակները՝ օգտագործելով bind-mount և overlayfs:
Պատրաստի համակարգային կանչի մեկուսացման պրոֆիլներ են պատրաստվել բազմաթիվ հայտնի ծրագրերի համար, այդ թվում՝ Firefox, Chromium, VLC և Transmission: Մեկուսացված միջավայր ստեղծելու համար անհրաժեշտ արտոնությունները ստանալու համար firejail-ի կատարվող ֆայլը տեղադրվում է SUID root դրոշակով (արտոնությունները վերագործարկվում են նախնականացումից հետո): Ծրագիրը մեկուսացված ռեժիմով գործարկելու համար բավական է firejail ծրագրի համար որպես արգումենտ նշել ծրագրի անունը, օրինակ՝ «firejail firefox» կամ «sudo firejail /etc/init.d/nginx start»:
Նոր թողարկումում.
- arg-max-count, arg-max-len, env-max-count և env-max-len տարբերակները ավելացվել են firejail.config կոնֆիգուրացիայի ֆայլին՝ հրամանի տողի տարբերակների և միջավայրի փոփոխականների քանակի և չափի սահմանափակումները փոխելու համար: Ըստ լռելյայնի, արգումենտների քանակը սահմանափակվում է 128-ով, միջավայրի փոփոխականների քանակը՝ 256-ով, և յուրաքանչյուր արգումենտի չափը PATH_MAX է՝ սկսած limits.h-ից (in Linux 40196) + 32։
- Ավելացվել է "--xephyr-extra-params" տարբերակը՝ Xephyr-ի (որն օգտագործվում է պատուհանում աշխատող X11 sandbox միջավայրեր ստեղծելու համար) հրամանի տողում՝ առանց firejail.config ֆայլը փոփոխելու, լրացուցիչ տարբերակներ նշելու համար։
- Sandbox միջավայրում տեղադրված bwrap (bubblewrap) ծրագիրը փոխարինվել է fbwrap միջանկյալ ծրագրով, որը գործարկում է ծրագրերը առանց փորձարկման՝ լուծելու Firefox-ի, Thunderbird-ի և GIMP-ի գործարկման հետ կապված խնդիրները, որոնք առաջացել են glycin 2.0.0-ը gdk-pixbuf2-ից bwrap-ի միջոցով կանչելու պատճառով: Ավելացվել է "--allow-bwrap" տարբերակը՝ bwrap-ը միջանկյալ ծրագրաշարի փոխարեն պատճենելու համար:
- seccomp-ի համար թարմացված համակարգային կանչերի աղյուսակներ: Ավելացվել են նոր համակարգային կանչեր, ինչպիսիք են epoll_pwait2-ը և futex_wait-ը:
- «--disable-globalcfg» կառուցման տարբերակը հեռացվել է, և overlayfs-ի («--overlay») և IDS (Intrusion Detection System, «--ids») ռեժիմի աջակցությունը դադարեցվել է։
- Ավելացվել են մեկուսացման պրոֆիլներ ne տեքստային խմբագրիչի (տեքստային խմբագրիչ), Trivalent զննարկչի և OpenRA, quakespasm, gzdoom, lzdoom և uzdoom խաղային շարժիչների համար։
- Thunderbird, wine, qutebrowser, firefox, godot, wusc, mullvad-browser, blink, steam, ssh, brave և hashcat-ի թարմացված պրոֆիլները։
Source: opennet.ru
