د برید میتود وړاندیز شوی چې په سرور کې د حافظې ټوټې په لرې ډول مشخص کړي

د ګرز د تخنیکي پوهنتون (آسټریا) د څیړونکو یوې ډلې، چې مخکې د MDS، NetSpectre، Throwhammer او ZombieLoad بریدونو د پراختیا لپاره پیژندل شوی و، د حافظې - ډیپلیکیشن میکانیزم په وړاندې د غاړې چینل برید نوی میتود (CVE-2021-3714) خپور کړی. ، کوم چې تاسو ته اجازه درکوي د ځینې ډیټا په حافظه کې شتون مشخص کړئ ، د حافظې مینځپانګې بایټ بایټ لیک تنظیم کړئ ، یا د پتې پراساس تصادفي (ASLR) محافظت ته د بای پاس کولو لپاره د حافظې ترتیب وټاکئ. نوې میتود د HTTP/1 او HTTP/2 پروتوکولونو له لارې برید کونکي ته لیږل شوي غوښتنو ته د ځواب وخت کې بدلون د معیار په توګه په کارولو سره د بهرني کوربه څخه د برید په ترسره کولو سره د تخریب میکانیزم باندې د بریدونو دمخه ښودل شوي ډولونو څخه توپیر لري. د برید ترسره کولو وړتیا د لینوکس او وینډوز پراساس د سرورونو لپاره ښودل شوې.

د حافظې د نقل کولو میکانیزم باندې بریدونه د لیکلو عملیاتو پروسس کولو وخت کې توپیر د چینل په توګه کاروي ترڅو معلومات لیک کړي په داسې شرایطو کې چیرې چې په ډیټا کې بدلون د کاپي-آن-رایټ (COW) میکانیزم په کارولو سره د نقل شوي حافظې پاڼې کلون کولو لامل کیږي. . د عملیاتو په جریان کې، کرنل د مختلف پروسو څخه ورته حافظې پاڼې کشف کوي او یوځای کوي، د ورته حافظې پاڼې د فزیکي حافظې په یوه ساحه کې نقشه کوي ترڅو یوازې یوه کاپي ذخیره کړي. کله چې یوه پروسه هڅه کوي د ډیپلیټ شوي پا pagesو پورې اړوند ډیټا بدل کړي ، نو یو استثنا (د مخ غلطۍ) رامینځته کیږي او د کاپي پر لیکلو میکانیزم په کارولو سره ، د حافظې پا pageې جلا کاپي په اوتومات ډول رامینځته کیږي ، کوم چې پروسې ته ټاکل کیږي. اضافي وخت د کاپي په بشپړولو کې لګول کیږي، کوم چې کیدای شي د معلوماتو بدلونونو نښه وي چې د بلې پروسې سره مداخله کوي.

څیړونکو ښودلې چې د COW میکانیزم په پایله کې ځنډونه نه یوازې په محلي توګه نیول کیدی شي، بلکې په شبکه کې د ځواب رسولو په وختونو کې د بدلونونو تحلیل کولو سره هم نیول کیدی شي. د HTTP/1 او HTTP/2 پروتوکولونو کې د غوښتنو د اجرا کولو وخت تحلیل کولو سره د لیرې کوربه څخه د حافظې مینځپانګې ټاکلو لپاره ډیری میتودونه وړاندیز شوي. د ټاکل شوي ټیمپلیټونو خوندي کولو لپاره ، معیاري ویب غوښتنلیکونه کارول کیږي چې په غوښتنلیکونو کې ترلاسه شوي معلومات په حافظه کې ذخیره کوي.

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

د برید میتود وړاندیز شوی چې په سرور کې د حافظې ټوټې په لرې ډول مشخص کړي

د تجربو په جریان کې، د معلوماتو د لیکو اعظمي کچه په ساعت کې 34.41 بایټس وه کله چې د نړیوالې شبکې له لارې برید کیږي او په هر ساعت کې 302.16 بایټس کله چې د محلي شبکې له لارې برید کیږي، کوم چې د دریمې ډلې چینلونو له لارې د معلوماتو استخراج د نورو میتودونو په پرتله ګړندی دی (د مثال په توګه، د NetSpectre په برید کې، د معلوماتو لیږد کچه په یوه بجه کې 7.5 بایټه ده).

د برید درې کاري اختیارونه وړاندیز شوي. لومړی اختیار تاسو ته اجازه درکوي د ویب سرور په حافظه کې ډاټا وټاکئ چې میمکیچ کاروي. برید د میمکیچ ذخیره کې د ډیټا ځینې سیټونو بارولو ته وده ورکوي ، د نقل شوي بلاک پاکول ، د ورته عنصر بیا لیکل او د بلاک مینځپانګې بدلولو سره د COW کاپي کولو لپاره شرایط رامینځته کول. د Memcached سره د تجربې په جریان کې، دا ممکنه وه چې په 166.51 ثانیو کې معلومه کړئ چې د libc نسخه په سیسټم کې نصب شوی په مجازی ماشین کې.

دوهم اختیار دا ممکنه کړه چې په ماریا ډی بی DBMS کې د ریکارډونو مینځپانګې ومومئ ، کله چې د InnoDB ذخیره وکاروئ ، د بایټ په واسطه د مینځپانګې بیا جوړولو سره. برید د ځانګړو تعدیل شویو غوښتنو په لیږلو سره ترسره کیږي، په پایله کې د حافظې په پاڼو کې د واحد بایټ نیمګړتیا او د غبرګون وخت تحلیل کوي ترڅو معلومه کړي چې د بایټ منځپانګې په اړه اټکل سم و. د داسې لیک کچه ټیټه ده او په هر ساعت کې 1.5 بایټس ته رسیږي کله چې د محلي شبکې څخه برید کیږي. د میتود ګټه دا ده چې دا د نامعلوم حافظې مینځپانګې بیرته ترلاسه کولو لپاره کارول کیدی شي.

دریم اختیار دا امکان رامینځته کړی چې په 4 دقیقو کې د KASLR محافظت میکانیزم په بشپړ ډول تیر کړئ او د مجازی ماشین کرنل عکس د حافظې آفسیټ په اړه معلومات ترلاسه کړئ ، په داسې حالت کې چې د آفسیټ پته د حافظې پا pageه کې وي چیرې چې نور معلومات نه بدلیږي. برید د برید شوي سیسټم څخه 14 هپس کې موقعیت لرونکي کوربه څخه ترسره شوی. د وړاندې شوي بریدونو پلي کولو لپاره د کوډ مثالونه ژمنه شوې چې په GitHub کې به خپاره شي.

سرچینه: opennet.ru

Add a comment