Liberasyon Bubblewrap 0.4.0, yon kouch pou kreye anviwΓ²nman izole

Disponib Π½ΠΎΠ²Ρ‹ΠΉ выпуск инструмСнтария Wrap jarΓ¨t 0.4.0, ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π½ΠΎΠ³ΠΎ для ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΈΠ·ΠΎΠ»ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠΉ Π² Linux ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½ΠΈΡ€ΡƒΡŽΡ‰ΠΈΠΉ Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π½Π΅ΠΏΡ€ΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ. На ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ΅ Bubblewrap ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠΌ Flatpak Π² качСствС прослойки для изоляции запускаСмых ΠΈΠ· ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. Код ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° написан Π½Π° языкС Π‘ΠΈ ΠΈ distribiye pa ΠΏΠΎΠ΄ Π»ΠΈΡ†Π΅Π½Π·ΠΈΠ΅ΠΉ LGPLv2+.

Pou izòlman, yo itilize teknoloji tradisyonèl Linux kontenè Virtualization, ki baze sou itilizasyon cgroups, namespaces, Seccomp ak SELinux. Pou fè operasyon privilejye pou konfigirasyon yon veso, Bubblewrap lanse ak dwa rasin (yon fichye ègzèkutabl ak yon drapo suid) ak Lè sa a, retabli privilèj apre veso a inisyalize.

Активация Π² систСмС пространств ΠΈΠΌΡ‘Π½ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠ² ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ (user namespaces), ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΡ… ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π² ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°Ρ… собствСнный ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΉ Π½Π°Π±ΠΎΡ€ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠ², для Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π½Π΅ трСбуСтся, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Π½Π΅ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΡ… дистрибутивах (Bubblewrap позиционируСтся ΠΊΠ°ΠΊ ограничСнная suid-рСализация подмноТСства возмоТностСй user namespaces β€” для ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ всСх ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠ² ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ ΠΈ процСссов ΠΈΠ· окруТСния, ΠΊΡ€ΠΎΠΌΠ΅ Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π³ΠΎ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Ρ€Π΅ΠΆΠΈΠΌΡ‹ CLONE_NEWUSER ΠΈ CLONE_NEWPID). Для Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ Π·Π°Ρ‰ΠΈΡ‚Ρ‹ исполняСмыС ΠΏΠΎΠ΄ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ
Bubblewrap ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π·Π°ΠΏΡƒΡΠΊΠ°ΡŽΡ‚ΡΡ Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ PR_SET_NO_NEW_PRIVS, Π·Π°ΠΏΡ€Π΅Ρ‰Π°ΡŽΡ‰Π΅ΠΌ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ Π½ΠΎΠ²Ρ‹Ρ… ΠΏΡ€ΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΠΉ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΏΡ€ΠΈ Π½Π°Π»ΠΈΡ‡ΠΈΠΈ Ρ„Π»Π°Π³Π° setuid.

Izolasyon nan nivo sistèm fichye akonpli lè yo kreye yon nouvo espas non mòn pa default, kote yo kreye yon patisyon rasin vid lè l sèvi avèk tmpfs. Si sa nesesè, patisyon FS ekstèn yo tache ak patisyon sa a nan mòd "mount —bind" (pa egzanp, lè yo lanse ak opsyon "bwrap -ro-bind /usr /usr", patisyon /usr la voye soti nan sistèm prensipal la. nan mòd lekti sèlman). Kapasite rezo yo limite a aksè nan koòdone loopback la ak izolasyon pile rezo atravè drapo yo CLONE_NEWNET ak CLONE_NEWUTS.

Diferans kle nan yon pwojΓ¨ menm jan an firejail, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ модСль запуска с ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ setuid, являСтся Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Π² Bubblewrap прослойка для создания ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΎΠ² Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹ΠΉ ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌ возмоТностСй, Π° всС Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ для запуска графичСских ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, взаимодСйствия с Ρ€Π°Π±ΠΎΡ‡ΠΈΠΌ столом ΠΈ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΠΈ ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠΉ ΠΊ Pulseaudio, вынСсСны Π½Π° сторону Flatpak ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ ΡƒΠΆΠ΅ послС сброса ΠΏΡ€ΠΈΠ²ΠΈΠ»Π΅Π³ΠΈΠΉ. Firejail ΠΆΠ΅ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΡΠ΅Ρ‚ Π² ΠΎΠ΄Π½ΠΎΠΌ исполняСмом Ρ„Π°ΠΉΠ»Π΅ всС ΡΠΎΠΏΡƒΡ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, Ρ‡Ρ‚ΠΎ услоТняСт Π΅Π³ΠΎ Π°ΡƒΠ΄ΠΈΡ‚ ΠΈ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠ°Π½ΠΈΠ΅ бСзопасности Π½Π° Π΄ΠΎΠ»ΠΆΠ½ΠΎΠΌ ΡƒΡ€ΠΎΠ²Π½Π΅.

Новый выпуск ΠΏΡ€ΠΈΠΌΠ΅Ρ‡Π°Ρ‚Π΅Π»Π΅Π½ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠ΅ΠΉ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ присоСдинСния ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… пространств ΠΈΠΌΡ‘Π½ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠ² ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ (user namespaces) ΠΈ процСссов (pid namespaces). Для управлСния ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ пространств ΠΈΠΌΡ‘Π½ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Ρ‹ Ρ„Π»Π°Π³ΠΈ Β«β€”usernsΒ», Β«β€”userns2Β» ΠΈ Β«β€”pidnsΒ».
Данная Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Π½Π΅ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ setuid ΠΈ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ примСнСния ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ Ρ€Π΅ΠΆΠΈΠΌΠ°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π±Π΅Π· получСния ΠΏΡ€Π°Π² root, Π½ΠΎ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ Π°ΠΊΡ‚ΠΈΠ²Π°Ρ†ΠΈΠΈ
user namespaces Π² систСмС (ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½Ρ‹ Π² Debian ΠΈ RHEL/CentOS) ΠΈ Π½Π΅ ΠΈΡΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ eksplwatasyon ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎ ΠΎΡΡ‚Π°ΡŽΡ‰ΠΈΡ…ΡΡ frajilite yo для ΠΎΠ±ΠΎΠ΄Π° ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠΉ Β«user namespacesΒ». Из Π½ΠΎΠ²Ρ‹Ρ… возмоТностСй Bubblewrap 0.4 Ρ‚Π°ΠΊΠΆΠ΅ отмСчаСтся Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ сборки с Π‘ΠΈ-Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΎΠΉ musl вмСсто glibc ΠΈ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° сохранСния ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ пространствах ΠΈΠΌΡ‘Π½ Π² Ρ„Π°ΠΉΠ» со статистикой Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ JSON.

Sous: opennet.ru

Add nouvo kòmantè