මෙවලම් කට්ටලයේ නව නිකුතුව හුදකලා පරිසරවල වැඩ සංවිධානය කිරීම සඳහා නිර්මාණය කර ඇත Linux සහ වරප්රසාද නොලත් පරිශීලකයින් සඳහා යෙදුම් මට්ටමින් ක්රියාත්මක වේ. ප්රායෝගිකව, පැකේජ වලින් දියත් කරන ලද යෙදුම් හුදකලා කිරීම සඳහා ස්ථරයක් ලෙස Flatpak ව්යාපෘතිය විසින් Bubblewrap භාවිතා කරයි. ව්යාපෘතියේ කේතය C සහ LGPLv2+ යටතේ බලපත්ර ලබා ඇත.
පරිවරණය සඳහා සාම්ප්රදායික ද්රව්ය භාවිතා වේ. Linux cgroups, namespaces, Seccomp සහ SE භාවිතය මත පදනම් වූ බහාලුම් අථත්යකරණ තාක්ෂණයන්Linuxවරප්රසාදිත බහාලුම් වින්යාස මෙහෙයුම් සිදු කිරීම සඳහා, Bubblewrap මූල වරප්රසාද සමඟ ක්රියාත්මක වේ (ක්රියාත්මක කළ හැකි ගොනුවේ suid ධජය සක්රීය කර ඇත) සහ බහාලුම් ආරම්භ කිරීම අවසන් වූ පසු වරප්රසාද අතහැර දමයි.
බොහෝ බෙදාහැරීම්වල පෙරනිමියෙන් ක්රියා නොකරන බැවින්, බහාලුම්වල ඔබේම වෙනම හඳුනාගැනීම් කට්ටලයක් භාවිතා කිරීමට ඉඩ සලසන නාම අවකාශ පද්ධතියේ පරිශීලක නාම අවකාශයන් ක්රියාත්මක කිරීම ක්රියාත්මක කිරීම සඳහා අවශ්ය නොවේ (Bubblewrap සීමිත suid ක්රියාත්මක කිරීමක් ලෙස ස්ථානගත කර ඇත. පරිශීලක නාම අවකාශ හැකියාවන්ගේ උප කුලකය - දැනට පවතින එක හැර, සියලුම පරිශීලක සහ ක්රියාවලි හඳුනාගැනීම් පරිසරයෙන් බැහැර කිරීමට, CLONE_NEWUSER සහ CLONE_NEWPID මාතයන් භාවිතා වේ). අතිරේක ආරක්ෂාව සඳහා, පාලනය යටතේ ක්රියාත්මක කළ හැක
Bubblewrap වැඩසටහන් PR_SET_NO_NEW_PRIVS ආකාරයෙන් දියත් කෙරේ, එය නව වරප්රසාද ලබා ගැනීම තහනම් කරයි, උදාහරණයක් ලෙස, setuid ධජය තිබේ නම්.
ගොනු පද්ධති මට්ටමින් හුදකලා කිරීම සිදු කරනු ලබන්නේ පෙරනිමියෙන් නව මවුන්ට් නාම අවකාශයක් නිර්මාණය කිරීමෙනි, එහිදී tmpfs භාවිතයෙන් හිස් මූල කොටසක් සාදනු ලැබේ. අවශ්ය නම්, බාහිර FS කොටස් මෙම කොටසට “mount —bind” ආකාරයෙන් අමුණා ඇත (උදාහරණයක් ලෙස, “bwrap —ro-bind /usr /usr” විකල්පය සමඟ දියත් කළ විට, /usr කොටස ප්රධාන පද්ධතියෙන් ඉදිරියට යවනු ලැබේ. කියවීමට පමණක් මාදිලියේ). ජාල හැකියාවන් CLONE_NEWNET සහ CLONE_NEWUTS ධජ හරහා ජාල අට්ටි හුදකලා සමග loopback අතුරුමුහුණත වෙත ප්රවේශ වීමට සීමා වේ.
සමාන ව්යාපෘතියකින් ප්රධාන වෙනස , එය setuid දියත් කිරීමේ ආකෘතියක් ද භාවිතා කරයි, Bubblewrap හි බහාලුම් නිර්මාණය කිරීමේ ස්ථරයට අවශ්ය අවම හැකියාවන් පමණක් ඇතුළත් වන අතර චිත්රක යෙදුම් ධාවනය කිරීමට, ඩෙස්ක්ටොප් සමඟ අන්තර් ක්රියා කිරීමට සහ Pulseaudio වෙත ඇමතුම් පෙරීමට අවශ්ය සියලුම උසස් කාර්යයන් Flatpak බාහිරින් ලබාගෙන ක්රියාත්මක වේ. වරප්රසාද යළි පිහිටුවීමෙන් පසුව. අනෙක් අතට, ෆයර්ජේල්, එක් ක්රියාත්මක කළ හැකි ගොනුවක් තුළ අදාළ සියලුම කාර්යයන් ඒකාබද්ධ කරයි, එමඟින් විගණනය සහ ආරක්ෂාව පවත්වා ගැනීම අපහසු වේ .
නව නිකුතුව දැනට පවතින පරිශීලක නාම අවකාශයන් හා ක්රියාවලි pid නාම අවකාශ හා සම්බන්ධ වීම සඳහා සහය ක්රියාත්මක කිරීම සඳහා කැපී පෙනේ. නාම අවකාශයන් සම්බන්ධ කිරීම පාලනය කිරීම සඳහා, "--පරිශීලකයින්", "--පරිශීලකයින්2" සහ "-pidns" කොඩි එකතු කර ඇත.
මෙම විශේෂාංගය setuid මාදිලියේ ක්රියා නොකරන අතර මූල හිමිකම් ලබා නොගෙන ක්රියා කළ හැකි වෙනම මාදිලියක් භාවිතා කිරීම අවශ්ය වේ, නමුත් සක්රිය කිරීම අවශ්ය වේ
පද්ධතියේ පරිශීලක නාම අවකාශයන් (පෙරනිමියෙන් අක්රීය කර ඇත Debian සහ RHEL/CentOS) සහ හැකියාව බැහැර නොකරයි "පරිශීලක නාම අවකාශ" සීමා මායිම සඳහා. Bubblewrap 0.4 හි නව විශේෂාංග අතර glibc වෙනුවට musl C පුස්තකාලය සමඟ ගොඩ නැගීමේ හැකියාව සහ JSON ආකෘතියෙන් සංඛ්යාලේඛන සහිත ගොනුවකට නාම අවකාශයේ තොරතුරු සුරැකීමට සහාය වේ.
මූලාශ්රය: opennet.ru
