د سنیپ بسته مدیریت وسیلې کې ځایی ریښې زیانمننې

Qualys په سنیپ کنفینټ یوټیلیټ کې دوه زیانمنونکي (CVE-2021-44731, CVE-2021-44730) په ګوته کړي، چې د SUID روټ بیرغ سره چمتو شوي او د snapd پروسې لخوا ویل شوي ترڅو په ځان کې موجود کڅوړو کې وړاندې شوي غوښتنلیکونو لپاره د اجرا وړ چاپیریال رامینځته کړي. په snap بڼه. زیان منونکي محلي بې ګټې کارونکي ته اجازه ورکوي چې په سیسټم کې د روټ امتیازاتو سره کوډ اجرا کړي. مسلې د اوبنټو 21.10، 20.04 او 18.04 لپاره د نن ورځې سنیپډ پیکج تازه کولو کې حل شوي.

لومړی زیانمنتیا (CVE-2021-44730) د هارډ لینک مینځلو له لارې برید ته اجازه ورکوي، مګر د سیسټم د هارډ لینک محافظت غیر فعالولو ته اړتیا لري (د sysctl fs.protected_hardlinks ترتیب کول 0). ستونزه د snap-update-ns او snap-discard-ns مرستندویه پروګرامونو د اجرا وړ فایلونو موقعیت ناسم تایید له امله رامینځته کیږي چې د روټ په توګه چلیږي. د دې فایلونو لاره په sc_open_snapd_tool() فنکشن کې د /proc/self/exe څخه د هغې د لارې پراساس محاسبه شوې ، کوم چې تاسو ته اجازه درکوي په خپل لارښود کې د سنیپ - محدودولو لپاره سخت لینک رامینځته کړئ او د سنیپ - خپل نسخې ځای په ځای کړئ. په دې ډایرکټر کې تازه معلومات او سنیپ یوټیلیټونه discard-ns. د سخت لینک له لارې د چلولو وروسته، د روټ حقونو سره سنیپ-کنفینټ به د اوسني ډایرکټر څخه سنیپ-تازه-این ایس او سنیپ-ډیسکارډ-NS فایلونه پیل کړي، د برید کونکي لخوا بدل شوي.

دوهم زیان د ریس حالت له امله رامینځته شوی او د اوبنټو ډیسټاپ ډیفالټ ترتیب کې کارول کیدی شي. د اوبنټو سرور کې په بریالیتوب سره کار کولو لپاره ، تاسو باید د نصب کولو پرمهال د "ځانګړي سرور سنیپس" برخې څخه یو له کڅوړو څخه غوره کړئ. د ریس حالت په setup_private_mount() فنکشن کې څرګند دی چې د سنیپ کڅوړې لپاره د ماونټ پوائنټ نوم ځای چمتو کولو پرمهال ویل کیږي. دا فنکشن یو لنډمهاله ډایرکټر "/tmp/snap.$SNAP_NAME/tmp" رامینځته کوي یا په دې کې د سنیپ کڅوړې لپاره د ماونټ ډایرکټرونو د تړلو لپاره موجوده یوه کاروي.

څنګه چې د لنډمهاله لارښود نوم د وړاندوینې وړ دی ، برید کونکی کولی شي د مالک له چک کولو وروسته خپل مینځپانګې د سمبولیک لینک سره بدل کړي ، مګر مخکې له دې چې د ماونټ سیسټم زنګ ووهي. د مثال په توګه، تاسو کولی شئ په /tmp/snap.lxd ډایرکټر کې یو سیم لینک "/tmp/snap.lxd/tmp" جوړ کړئ چې خپل سري ډایرکټر ته اشاره کوي، او mount() ته زنګ به symlink تعقیب کړي او ډایرکټر په کې نصب کړي. د نوم ځای انځور کړئ. په ورته ډول، تاسو کولی شئ خپل مینځپانګې په /var/lib کې نصب کړئ او د /var/lib/snapd/mount/snap.snap-store.user-fstab په ځای کولو سره، د نوم ځای کې د خپل /etc ډایرکټر نصب کول تنظیم کړئ. سنیپ بسته د /etc/ld.so.preload په ځای کولو سره ستاسو د کتابتون بارولو تنظیم کولو لپاره د روټ حقونو سره.

د یادونې وړ ده چې د استحصال رامینځته کول یو غیر معمولي کار وګرځید ، ځکه چې د سنیپ کنفائن افادیت په Go کې د خوندي برنامې تخنیکونو په کارولو سره لیکل شوی ، د AppArmor پروفایلونو پراساس محافظت لري ، د فلټر سیسټم کالونه د seccomp میکانیزم پراساس ، او کارول د جلا کولو لپاره د ماونټ نوم ځای. په هرصورت، څیړونکي وتوانیدل چې په سیسټم کې د ریښو حقونو ترلاسه کولو لپاره کاري استحصال چمتو کړي. د استحصال کوډ به په څو اونیو کې خپور شي وروسته له دې چې کاروونکي چمتو شوي تازه معلومات نصب کړي.

سرچینه: opennet.ru

Add a comment