Paglabas ng Bubblewrap 0.6, mga layer para sa paglikha ng mga sandboxed na kapaligiran

Available ang isang release ng mga tool para sa pag-aayos ng gawain ng mga nakahiwalay na kapaligiran Bubblewrap 0.6, kadalasang ginagamit upang paghigpitan ang mga indibidwal na aplikasyon ng mga walang pribilehiyong user. Sa pagsasagawa, ang Bubblewrap ay ginagamit ng proyekto ng Flatpak bilang isang layer upang ihiwalay ang mga application na inilunsad mula sa mga pakete. Ang code ng proyekto ay nakasulat sa C at ipinamamahagi sa ilalim ng lisensya ng LGPLv2+.

Para sa paghihiwalay, ginagamit ang tradisyonal na Linux container virtualization na teknolohiya, batay sa paggamit ng mga cgroup, namespace, Seccomp at SELinux. Para magsagawa ng mga privileged operation para mag-configure ng container, inilunsad ang Bubblewrap na may mga root rights (isang executable file na may flag ng suid) at pagkatapos ay i-reset ang mga pribilehiyo pagkatapos masimulan ang container.

Ang pag-activate ng mga namespace ng user sa system ng namespace, na nagbibigay-daan sa iyong gamitin ang iyong sariling hiwalay na hanay ng mga identifier sa mga container, ay hindi kinakailangan para sa operasyon, dahil hindi ito gumagana bilang default sa maraming mga distribusyon (Ang Bubblewrap ay nakaposisyon bilang isang limitadong pagpapatupad ng suid ng isang subset ng mga kakayahan ng user namespaces - upang ibukod ang lahat ng user at process identifiers mula sa kapaligiran, maliban sa kasalukuyan, ang CLONE_NEWUSER at CLONE_NEWPID mode ang ginagamit). Para sa karagdagang proteksyon, ang mga programang isinagawa sa ilalim ng Bubblewrap ay inilulunsad sa PR_SET_NO_NEW_PRIVS mode, na nagbabawal sa pagkuha ng mga bagong pribilehiyo, halimbawa, kung ang setuid na bandila ay naroroon.

Ang paghihiwalay sa antas ng file system ay nagagawa sa pamamagitan ng paglikha ng bagong mount namespace bilang default, kung saan ang isang walang laman na root partition ay nilikha gamit ang tmpfs. Kung kinakailangan, ang mga panlabas na partisyon ng FS ay nakakabit sa partisyon na ito sa mode na "mount β€”bind" (halimbawa, kapag inilunsad gamit ang opsyong "bwrap β€”ro-bind /usr /usr", ang /usr partition ay ipinapasa mula sa pangunahing system sa read-only mode). Ang mga kakayahan ng network ay limitado sa pag-access sa loopback interface na may network stack isolation sa pamamagitan ng CLONE_NEWNET at CLONE_NEWUTS na mga flag.

Ang pangunahing pagkakaiba sa katulad na proyekto ng Firejail, na gumagamit din ng setuid launch model, ay ang sa Bubblewrap, ang layer ng paggawa ng lalagyan ay kinabibilangan lamang ng mga kinakailangang minimum na kakayahan, at lahat ng mga advanced na function na kinakailangan para sa pagpapatakbo ng mga graphical na application, pakikipag-ugnayan sa desktop at mga kahilingan sa pag-filter. sa Pulseaudio, inilipat sa bahagi ng Flatpak at naisakatuparan pagkatapos ma-reset ang mga pribilehiyo. Ang Firejail, sa kabilang banda, ay pinagsasama ang lahat ng nauugnay na function sa isang executable file, na nagpapahirap sa pag-audit at pagpapanatili ng seguridad sa tamang antas.

Sa bagong release:

  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° сборочной систСмы Meson. ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° сборки ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ Autotools ΠΏΠΎΠΊΠ° сохранСна, Π½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ ΡƒΠ΄Π°Π»Π΅Π½Π° Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΈΠ· ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… выпусков.
  • Π Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° опция Β«β€”add-seccompΒ» для добавлСния Π±ΠΎΠ»Π΅Π΅ Ρ‡Π΅ΠΌ ΠΎΠ΄Π½ΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ seccomp. Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΎ ΠΏΡ€Π΅Π΄ΡƒΠΏΡ€Π΅ΠΆΠ΄Π΅Π½ΠΈΠ΅ ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎΠΌ ΡƒΠΊΠ°Π·Π°Π½ΠΈΠΈ ΠΎΠΏΡ†ΠΈΠΈ Β«β€”seccompΒ» Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€ΠΈΠΌΠ΅Π½Ρ‘Π½ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ послСдний ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€.
  • Π’Π΅Ρ‚ΠΊΠ° master Π² git-Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ ΠΏΠ΅Ρ€Π΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½Π° Π² main.
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° частичная ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° спСцификации REUSE, ΡƒΠ½ΠΈΡ„ΠΈΡ†ΠΈΡ€ΡƒΡŽΡ‰Π΅ΠΉ процСсс указания свСдСний ΠΎ лицСнзиях ΠΈ авторских ΠΏΡ€Π°Π²Π°Ρ…. Π’ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ Ρ„Π°ΠΉΠ»Ρ‹ с ΠΊΠΎΠ΄ΠΎΠΌ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Ρ‹ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΈ SPDX-License-Identifier. Π‘Π»Π΅Π΄ΠΎΠ²Π°Π½ΠΈΠ΅ рСкомСндациям REUSE позволяСт ΡƒΠΏΡ€ΠΎΡΡ‚ΠΈΡ‚ΡŒ автоматичСскоС ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ какая лицСнзия примСняСтся ΠΊ ΠΊΠ°ΠΊΠΈΠΌ ΠΈΠ· частСй ΠΊΠΎΠ΄Π° прилоТСния.
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° значСния счётчика Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ² ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строки (argc) ΠΈ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ экстрСнный Π²Ρ‹Ρ…ΠΎΠ΄ Π² случаС Ссли счётчик Ρ€Π°Π²Π΅Π½ Π½ΡƒΠ»ΡŽ. ИзмСнСниС позволяСт Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ с Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒΡŽ, Π²Ρ‹Π·Π²Π°Π½Π½Ρ‹Π΅ Π½Π΅ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΠΉ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΎΠΉ ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Π΅ΠΌΡ‹Ρ… Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ² ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строки, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ CVE-2021-4034 Π² Polkit.

Pinagmulan: opennet.ru

Magdagdag ng komento