හුදකලා බහාලුමකින් ගැලවීමට ඉඩ සලසන cgroups v1 හි අවදානම

ලිනක්ස් කර්නලයේ cgroups v2022 සම්පත් සීමා කිරීමේ යාන්ත්‍රණය ක්‍රියාත්මක කිරීමේදී අවදානමක් (CVE-0492-1) පිළිබඳ විස්තර අනාවරණය කර ඇත, එය හුදකලා බහාලුම් වලින් ගැලවීමට භාවිතා කළ හැකිය. ගැටලුව Linux කර්නලය 2.6.24 සිට පවතින අතර කර්නල් නිකුතු 5.16.12, 5.15.26, 5.10.97, 5.4.177, 4.19.229, 4.14.266, සහ 4.9.301 හි නිරාකරණය කර ඇත. ඔබට මෙම පිටු වල බෙදාහැරීම් වල පැකේජ යාවත්කාලීන ප්‍රකාශන අනුගමනය කළ හැක: Debian, SUSE, Ubuntu, RHEL, Fedora, Gentoo, Arch Linux.

සම්පූර්ණ වරප්‍රසාද සහිතව හසුරුවන්න ක්‍රියාත්මක කිරීමේදී නිසි පරීක්‍ෂාවන් සිදු කිරීමට අපොහොසත් වන release_agent ගොනු හසුරුවෙහි තාර්කික දෝෂයක් හේතුවෙන් අවදානමට ලක් වේ. Cgroup එකක ක්‍රියාවලියක් අවසන් වූ විට කර්නලය මඟින් ක්‍රියාත්මක කළ යුතු වැඩසටහන නිර්වචනය කිරීමට release_agent ගොනුව භාවිතා කරයි. මෙම වැඩසටහන root ලෙස ක්‍රියාත්මක වන අතර root namespace හි ඇති සියලුම "හැකියාවන්" සමඟින් ක්‍රියාත්මක වේ. මුදා හැරීමේ_නියෝජිත සැකසුම වෙත ප්‍රවේශය ඇත්තේ පරිපාලකයාට පමණක් බව උපකල්පනය කරන ලදී, නමුත් ඇත්ත වශයෙන්ම චෙක්පත් මූල පරිශීලකයාට ප්‍රවේශය ලබා දීමට සීමා වූ අතර, පරිපාලක අයිතිවාසිකම් නොමැතිව (CAP_SYS_ADMIN) කන්ටේනරයෙන් හෝ root පරිශීලකයෙකු විසින් වෙනස් කරන ලද සිටුවම බැහැර නොකළේය. )

මීට පෙර, එවැනි විශේෂාංගයක් අවදානමක් ලෙස වටහා නොගනු ඇත, නමුත් පරිශීලක නාම අවකාශයන් (පරිශීලක නාම අවකාශයන්) පැමිණීමත් සමඟ තත්වය වෙනස් වී ඇති අතර එමඟින් මූල පරිශීලකයා සමඟ අතිච්ඡාදනය නොවන බහාලුම්වල වෙනම මූල පරිශීලකයින් නිර්මාණය කිරීමට ඔබට ඉඩ සලසයි. ප්රධාන පරිසරය. ඒ අනුව, ප්‍රහාරයක් සඳහා, වෙනම පරිශීලක හැඳුනුම් ඉඩක් තුළ තමන්ගේම root පරිශීලකයෙකු ඇති බහාලුමක් තුළ ඔබේ release_agent හසුරුවන්නා සම්බන්ධ කිරීම ප්‍රමාණවත් වේ, එය ක්‍රියාවලිය සම්පූර්ණ කිරීමෙන් පසු ප්‍රධාන පරිසරයේ පූර්ණ වරප්‍රසාද සහිතව ක්‍රියාත්මක වේ.

පෙරනිමියෙන්, cgroupfs කන්ටේනරයක කියවීමට පමණක් සවිකර ඇත, නමුත් ඔබට CAP_SYS_ADMIN හිමිකම් තිබේ නම් හෝ බෙදා නොගැනීමේ පද්ධති ඇමතුම භාවිතා කර වෙනම පරිශීලක නාම අවකාශයක් සහිත කැදැලි කන්ටේනරයක් සෑදීමෙන් මෙම ව්‍යාජ ලිපිගොනු ලිවීමේ ප්‍රකාරයේදී නැවත සවිකිරීමේ ගැටලුවක් නොමැත. සාදන ලද බහාලුම සඳහා CAP_SYS_ADMIN හිමිකම් තිබේ.

හුදකලා බහාලුමකින් ගැලවීමට ඉඩ සලසන cgroups v1 හි අවදානම

ඔබට හුදකලා බහාලුමක් තුළ මූල වරප්‍රසාද තිබේ නම් හෝ අතිරේක වරප්‍රසාද ලබා ගැනීම තහනම් කරන no_new_privs ධජය නොමැතිව කන්ටේනරයක් ධාවනය කරන විට ප්‍රහාරය සිදු කළ හැක. පද්ධතියට පරිශීලක නාම අවකාශයන් සක්‍රීය කර තිබිය යුතුය (උබුන්ටු සහ ෆෙඩෝරා හි පෙරනිමියෙන් සක්‍රීය කර ඇත, නමුත් ඩේබියන් සහ ආර්එච්ඊඑල් හි සක්‍රිය කර නැත) සහ මූල cgroup v1 වෙත ප්‍රවේශය තිබිය යුතුය (උදාහරණයක් ලෙස, ඩොකර් මූල RDMA cgroup හි බහාලුම් ධාවනය කරයි). ඔබට CAP_SYS_ADMIN වරප්‍රසාද තිබේ නම්, ප්‍රහාරය ද හැකි ය, මෙම අවස්ථාවෙහිදී පරිශීලක නාම අවකාශයන් සඳහා සහය සහ cgroup v1 මූල ධුරාවලියට ප්‍රවේශය අවශ්‍ය නොවේ.

හුදකලා බහාලුමකින් ගැලවීමට අමතරව, "හැකියාවන්" නොමැතිව මූල පරිශීලකයෙකු විසින් හෝ CAP_DAC_OVERRIDE හිමිකම් ඇති ඕනෑම පරිශීලකයෙකු විසින් දියත් කරන ලද ක්‍රියාවලි වලටද අවදානම ඉඩ සලසයි (ප්‍රහාරයට /sys/fs/cgroup/*/release_agent ගොනුවට ප්‍රවේශය අවශ්‍ය වේ. මූල සතු) සියලු පද්ධතිමය "හැකියාවන්" වෙත ප්රවේශය ලබා ගැනීමට.

Seccomp විසින් unshare() පද්ධති ඇමතුමට ප්‍රවේශය අවහිර කරන බැවින් සහ AppArmor සහ SELinux ලිවීමේ මාදිලියේ cgroupfs සවි කිරීමට ඉඩ නොදෙන බැවින්, බහාලුම්වල අමතර හුදකලා කිරීම සඳහා Seccomp, AppArmor හෝ SELinux ආරක්ෂණ යාන්ත්‍රණ භාවිතා කරන විට අවදානම ප්‍රයෝජනයට ගත නොහැකි බව සටහන් වේ.

මූලාශ්රය: opennet.ru

අදහස් එක් කරන්න