Utoaji wa zana za kupanga kazi ya mazingira yaliyotengwa Bubblewrap 0.6 inapatikana, kwa kawaida hutumiwa kuzuia matumizi ya kibinafsi ya watumiaji wasio na haki. Kiutendaji, Bubblewrap hutumiwa na mradi wa Flatpak kama safu ya kutenga programu zilizozinduliwa kutoka kwa vifurushi. Msimbo wa mradi umeandikwa kwa C na unasambazwa chini ya leseni ya LGPLv2+.
Kwa kutengwa, teknolojia za uboreshaji za vyombo vya Linux za jadi hutumiwa, kulingana na matumizi ya vikundi, nafasi za majina, Seccomp na SELinux. Ili kutekeleza shughuli zilizobahatika kusanidi kontena, Bubblewrap inazinduliwa ikiwa na haki za mizizi (faili inayoweza kutekelezeka yenye alama ya suid) na kisha kuweka upya haki baada ya kontena kuanzishwa.
Uanzishaji wa nafasi za majina ya watumiaji katika mfumo wa nafasi ya majina, ambayo hukuruhusu kutumia seti yako tofauti ya vitambulisho kwenye vyombo, haihitajiki kwa operesheni, kwani haifanyi kazi kwa chaguo-msingi katika usambazaji mwingi (Bubblewrap imewekwa kama utekelezwaji mdogo wa suid. kikundi kidogo cha uwezo wa nafasi za majina ya watumiaji - kuwatenga vitambulishi vyote vya watumiaji na kuchakata kutoka kwa mazingira, isipokuwa hii ya sasa, CLONE_NEWUSER na CLONE_NEWPID modi zinatumika). Kwa ulinzi wa ziada, programu zinazotekelezwa chini ya Bubblewrap huzinduliwa katika hali ya PR_SET_NO_NEW_PRIVS, ambayo inakataza upataji wa haki mpya, kwa mfano, ikiwa bendera ya setuid iko.
Kutengwa katika kiwango cha mfumo wa faili kunakamilishwa kwa kuunda nafasi mpya ya jina kwa chaguo-msingi, ambapo mgawanyiko wa mizizi tupu huundwa kwa kutumia tmpfs. Ikihitajika, sehemu za nje za FS zimeambatishwa kwenye kizigeu hiki katika hali ya "mount -bind" (kwa mfano, inapozinduliwa na chaguo la "bwrap -ro-bind /usr /usr", kizigeu cha /usr kinatumwa kutoka kwa mfumo mkuu. katika hali ya kusoma tu). Uwezo wa mtandao una mipaka ya kufikia kiolesura cha nyuma kwa kutengwa kwa rafu ya mtandao kupitia CLONE_NEWNET na bendera za CLONE_NEWUTS.
Tofauti kuu kutoka kwa mradi kama huo wa Firejail, ambao pia hutumia modeli ya uzinduzi wa setuid, ni kwamba katika Bubblewrap safu ya uundaji wa kontena inajumuisha tu uwezo wa chini unaohitajika, na kazi zote za juu zinazohitajika kwa kuendesha programu za picha, kuingiliana na eneo-kazi na maombi ya kuchuja. kwa Pulseaudio, iliyohamishwa hadi upande wa Flatpak na kutekelezwa baada ya mapendeleo kuwekwa upya. Firejail, kwa upande mwingine, inachanganya kazi zote zinazohusiana katika faili moja inayoweza kutekelezwa, ambayo inafanya kuwa vigumu kukagua na kudumisha usalama katika kiwango sahihi.
Katika toleo jipya:
- ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΡΠ±ΠΎΡΠΎΡΠ½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ Meson. ΠΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΡΠ±ΠΎΡΠΊΠΈ ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ Autotools ΠΏΠΎΠΊΠ° ΡΠΎΡ ΡΠ°Π½Π΅Π½Π°, Π½ΠΎ Π±ΡΠ΄Π΅Ρ ΡΠ΄Π°Π»Π΅Π½Π° Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΈΠ· ΡΠ»Π΅Π΄ΡΡΡΠΈΡ Π²ΡΠΏΡΡΠΊΠΎΠ².
- Π Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° ΠΎΠΏΡΠΈΡ Β«βadd-seccompΒ» Π΄Π»Ρ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΡ Π±ΠΎΠ»Π΅Π΅ ΡΠ΅ΠΌ ΠΎΠ΄Π½ΠΎΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ seccomp. ΠΠΎΠ±Π°Π²Π»Π΅Π½ΠΎ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΠ΅ ΠΎ ΡΠΎΠΌ, ΡΡΠΎ ΠΏΡΠΈ ΠΏΠΎΠ²ΡΠΎΡΠ½ΠΎΠΌ ΡΠΊΠ°Π·Π°Π½ΠΈΠΈ ΠΎΠΏΡΠΈΠΈ Β«βseccompΒ» Π±ΡΠ΄Π΅Ρ ΠΏΡΠΈΠΌΠ΅Π½ΡΠ½ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΉ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ.
- ΠΠ΅ΡΠΊΠ° master Π² git-ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ ΠΏΠ΅ΡΠ΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½Π° Π² main.
- ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° ΡΠ°ΡΡΠΈΡΠ½Π°Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ REUSE, ΡΠ½ΠΈΡΠΈΡΠΈΡΡΡΡΠ΅ΠΉ ΠΏΡΠΎΡΠ΅ΡΡ ΡΠΊΠ°Π·Π°Π½ΠΈΡ ΡΠ²Π΅Π΄Π΅Π½ΠΈΠΉ ΠΎ Π»ΠΈΡΠ΅Π½Π·ΠΈΡΡ ΠΈ Π°Π²ΡΠΎΡΡΠΊΠΈΡ ΠΏΡΠ°Π²Π°Ρ . ΠΠΎ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΡΠ°ΠΉΠ»Ρ Ρ ΠΊΠΎΠ΄ΠΎΠΌ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Ρ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΈ SPDX-License-Identifier. Π‘Π»Π΅Π΄ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°ΡΠΈΡΠΌ REUSE ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠΏΡΠΎΡΡΠΈΡΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΊΠ°ΠΊΠ°Ρ Π»ΠΈΡΠ΅Π½Π·ΠΈΡ ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΡΡΡ ΠΊ ΠΊΠ°ΠΊΠΈΠΌ ΠΈΠ· ΡΠ°ΡΡΠ΅ΠΉ ΠΊΠΎΠ΄Π° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ.
- ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΡΡΡΡΡΠΈΠΊΠ° Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠΎΠ² ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ (argc) ΠΈ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ ΡΠΊΡΡΡΠ΅Π½Π½ΡΠΉ Π²ΡΡ ΠΎΠ΄ Π² ΡΠ»ΡΡΠ°Π΅ Π΅ΡΠ»ΠΈ ΡΡΡΡΡΠΈΠΊ ΡΠ°Π²Π΅Π½ Π½ΡΠ»Ρ. ΠΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²Π°ΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ Ρ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΡΡ, Π²ΡΠ·Π²Π°Π½Π½ΡΠ΅ Π½Π΅ΠΊΠΎΡΡΠ΅ΠΊΡΠ½ΠΎΠΉ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΎΠΉ ΠΏΠ΅ΡΠ΅Π΄Π°Π²Π°Π΅ΠΌΡΡ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠΎΠ² ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ CVE-2021-4034 Π² Polkit.
Chanzo: opennet.ru