Mae rhyddhau offer ar gyfer trefnu gwaith amgylcheddau ynysig Bubblewrap 0.6 ar gael, a ddefnyddir fel arfer i gyfyngu ar gymwysiadau unigol defnyddwyr difreintiedig. Yn ymarferol, mae Bubblewrap yn cael ei ddefnyddio gan brosiect Flatpak fel haen i ynysu cymwysiadau a lansiwyd o becynnau. Mae cod y prosiect wedi'i ysgrifennu yn C ac yn cael ei ddosbarthu o dan drwydded LGPLv2+.
Ar gyfer ynysu, defnyddir technolegau rhithwiroli cynhwysydd Linux traddodiadol, yn seiliedig ar ddefnyddio cgroups, gofodau enwau, Seccomp a SELinux. Er mwyn cyflawni gweithrediadau breintiedig i ffurfweddu cynhwysydd, mae Bubblewrap yn cael ei lansio gyda hawliau gwraidd (ffeil gweithredadwy gyda baner suid) ac yna'n ailosod breintiau ar Γ΄l i'r cynhwysydd gael ei gychwyn.
Nid oes angen actifadu gofodau enwau defnyddwyr yn y system gofod enwau, sy'n eich galluogi i ddefnyddio eich set ar wahΓ’n eich hun o ddynodwyr mewn cynwysyddion, ar gyfer gweithredu, gan nad yw'n gweithio'n ddiofyn mewn llawer o ddosbarthiadau (mae Bubblewrap wedi'i leoli fel gweithrediad siwt cyfyngedig o a is-set o alluoedd gofod enwau defnyddwyr - i eithrio pob dynodwr defnyddiwr a phroses o'r amgylchedd, ac eithrio'r un gyfredol, defnyddir y moddau CLONE_NEWUSER a CLONE_NEWPID). Ar gyfer amddiffyniad ychwanegol, mae rhaglenni a weithredir o dan Bubblewrap yn cael eu lansio yn y modd PR_SET_NO_NEW_PRIVS, sy'n gwahardd caffael breintiau newydd, er enghraifft, os yw'r faner setuid yn bresennol.
Cyflawnir ynysu ar lefel y system ffeiliau trwy greu gofod enw mowntio newydd yn ddiofyn, lle mae rhaniad gwraidd gwag yn cael ei greu gan ddefnyddio tmpfs. Os oes angen, mae rhaniadau FS allanol ynghlwm wrth y rhaniad hwn yn y modd βmount βbindβ (er enghraifft, pan gaiff ei lansio gyda'r opsiwn "bwrap βro-bind / usr / usr", anfonir y rhaniad /usr o'r brif system mewn modd darllen yn unig). Mae galluoedd rhwydwaith wedi'u cyfyngu i fynediad i'r rhyngwyneb loopback gydag ynysu stac rhwydwaith trwy'r baneri CLONE_NEWNET a CLONE_NEWUTS.
Y gwahaniaeth allweddol o'r prosiect tebyg Firejail, sydd hefyd yn defnyddio'r model lansio setuid, yw bod yr haen creu cynhwysydd yn Bubblewrap yn cynnwys y galluoedd lleiaf angenrheidiol yn unig, a'r holl swyddogaethau uwch sy'n angenrheidiol ar gyfer rhedeg cymwysiadau graffigol, rhyngweithio Γ’'r bwrdd gwaith a hidlo ceisiadau. i Pulseaudio, ei drosglwyddo i ochr Flatpak a'i ddienyddio ar Γ΄l i'r breintiau gael eu hailosod. Mae Firejail, ar y llaw arall, yn cyfuno'r holl swyddogaethau cysylltiedig mewn un ffeil weithredadwy, sy'n ei gwneud hi'n anodd archwilio a chynnal diogelwch ar y lefel gywir.
Yn y datganiad newydd:
- ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΡΠ±ΠΎΡΠΎΡΠ½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ Meson. ΠΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΡΠ±ΠΎΡΠΊΠΈ ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ Autotools ΠΏΠΎΠΊΠ° ΡΠΎΡ ΡΠ°Π½Π΅Π½Π°, Π½ΠΎ Π±ΡΠ΄Π΅Ρ ΡΠ΄Π°Π»Π΅Π½Π° Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΈΠ· ΡΠ»Π΅Π΄ΡΡΡΠΈΡ Π²ΡΠΏΡΡΠΊΠΎΠ².
- Π Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° ΠΎΠΏΡΠΈΡ Β«βadd-seccompΒ» Π΄Π»Ρ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΡ Π±ΠΎΠ»Π΅Π΅ ΡΠ΅ΠΌ ΠΎΠ΄Π½ΠΎΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ seccomp. ΠΠΎΠ±Π°Π²Π»Π΅Π½ΠΎ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΠ΅ ΠΎ ΡΠΎΠΌ, ΡΡΠΎ ΠΏΡΠΈ ΠΏΠΎΠ²ΡΠΎΡΠ½ΠΎΠΌ ΡΠΊΠ°Π·Π°Π½ΠΈΠΈ ΠΎΠΏΡΠΈΠΈ Β«βseccompΒ» Π±ΡΠ΄Π΅Ρ ΠΏΡΠΈΠΌΠ΅Π½ΡΠ½ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΉ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ.
- ΠΠ΅ΡΠΊΠ° master Π² git-ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ ΠΏΠ΅ΡΠ΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½Π° Π² main.
- ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° ΡΠ°ΡΡΠΈΡΠ½Π°Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ REUSE, ΡΠ½ΠΈΡΠΈΡΠΈΡΡΡΡΠ΅ΠΉ ΠΏΡΠΎΡΠ΅ΡΡ ΡΠΊΠ°Π·Π°Π½ΠΈΡ ΡΠ²Π΅Π΄Π΅Π½ΠΈΠΉ ΠΎ Π»ΠΈΡΠ΅Π½Π·ΠΈΡΡ ΠΈ Π°Π²ΡΠΎΡΡΠΊΠΈΡ ΠΏΡΠ°Π²Π°Ρ . ΠΠΎ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΡΠ°ΠΉΠ»Ρ Ρ ΠΊΠΎΠ΄ΠΎΠΌ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Ρ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΈ SPDX-License-Identifier. Π‘Π»Π΅Π΄ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°ΡΠΈΡΠΌ REUSE ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠΏΡΠΎΡΡΠΈΡΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΊΠ°ΠΊΠ°Ρ Π»ΠΈΡΠ΅Π½Π·ΠΈΡ ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΡΡΡ ΠΊ ΠΊΠ°ΠΊΠΈΠΌ ΠΈΠ· ΡΠ°ΡΡΠ΅ΠΉ ΠΊΠΎΠ΄Π° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ.
- ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΡΡΡΡΡΠΈΠΊΠ° Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠΎΠ² ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ (argc) ΠΈ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ ΡΠΊΡΡΡΠ΅Π½Π½ΡΠΉ Π²ΡΡ ΠΎΠ΄ Π² ΡΠ»ΡΡΠ°Π΅ Π΅ΡΠ»ΠΈ ΡΡΡΡΡΠΈΠΊ ΡΠ°Π²Π΅Π½ Π½ΡΠ»Ρ. ΠΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²Π°ΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ Ρ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΡΡ, Π²ΡΠ·Π²Π°Π½Π½ΡΠ΅ Π½Π΅ΠΊΠΎΡΡΠ΅ΠΊΡΠ½ΠΎΠΉ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΎΠΉ ΠΏΠ΅ΡΠ΅Π΄Π°Π²Π°Π΅ΠΌΡΡ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠΎΠ² ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ CVE-2021-4034 Π² Polkit.
Ffynhonnell: opennet.ru