په ld.so OpenBSD کې زیانمنتیا

متحرک لوډر ld.soد OpenBSD سره شامل، کیدای شي د ځانګړو شرایطو لاندې، SUID/SGID- غوښتنلیکونه د LD_LIBRARY_PATH چاپیریال متغیر پریږدي او پدې توګه د دریمې ډلې کوډ ته اجازه ورکوي چې د پروسې په شرایطو کې پورته شي چې د لوړ امتیازاتو سره پرمخ ځي. هغه پیچونه چې زیانمنونکي حل کوي د خوشې کولو لپاره شتون لري 6.5 и 6.6. بائنری پیچونه (syspatch) د amd64، i386 او arm64 پلیټ فارمونو لپاره لا دمخه په تولید کې دي او د دې خبر خپریدو پورې باید د ډاونلوډ لپاره شتون ولري.

د ستونزې جوهر: د عملیاتو په جریان کې، ld.so لومړی له چاپیریال څخه د LD_LIBRARY_PATH متغیر ارزښت استخراجوي او د _dl_split_path() فنکشن په کارولو سره دا د تارونو په لړۍ بدلوي - لارښودونو ته لارې. که وروسته معلومه شي چې اوسنۍ پروسه د SUID/SGID غوښتنلیک لخوا پیل شوې، نو جوړ شوی سرې او په حقیقت کې د LD_LIBRARY_PATH متغیر پاک شوی. په ورته وخت کې ، که _dl_split_path() له حافظې څخه تیریږي (کوم چې د چاپیریال متغیرونو اندازې باندې د واضح 256 kB محدودیت له امله ستونزمن دی ، مګر په تیوریکي لحاظ ممکن دی) ، نو د _dl_libpath متغیر به NULL ارزښت ترلاسه کړي ، او ورپسې چکونه د دې متغیر ارزښت به _dl_unsetenv("LD_LIBRARY_PATH") ته زنګ پریږدي.

زیانمنتیا د متخصصینو لخوا وموندل شوه قدونه، همدارنګه څو مخکې افشا شوي ستونزې امنیتي څیړونکو چې زیانمنونکي یې پیژندلي یادونه وکړه چې ستونزه څومره ژر حل شوه: یو پیچ چمتو شوی و او د OpenBSD پروژې د خبرتیا ترلاسه کولو وروسته په دریو ساعتونو کې تازه معلومات خپاره شول.

اضافه کول: ستونزه یو شمیر ټاکل شوی CVE-2019-19726. د oss-امنیت بریښنالیک لیست کې جوړ شوی رسمي اعلانپه شمول د پروټوټایپ استحصال چې په OpenBSD 6.6، 6.5، 6.2 او 6.1 آرکیټیکچر کې روان دي
amd64 او i386 (استثنا د نورو جوړښتونو لپاره تطبیق کیدی شي).
دا مسله په ډیفالټ انسټالشن کې د ګټې اخیستنې وړ ده او یو غیر مستحق محلي کارونکي ته اجازه ورکوي چې د کتابتون بدیل له لارې د روټ په توګه کوډ اجرا کړي کله چې د chpass یا passwd suid اسانتیاو چلول. د عملیاتو لپاره اړین د ټیټ حافظې شرایطو رامینځته کولو لپاره ، د RLIMIT_DATA حد د setrlimit له لارې تنظیم کړئ.

سرچینه: opennet.ru

Add a comment