AMD د سپیکٹر - STL برید ته د AMD Zen 3 CPUs احتمالي زیان منونکي تایید کړي

AMD د زین 3 لړۍ پروسیسرونو کې پلي شوي د PSF (د وړاندوینې پلورنځي فارورډینګ) امنیت تحلیل کولو راپور خپور کړی چې مطالعې په تیوریکي ډول د سپیکٹر - STL (Spectre-v4) برید میتود پلي کول تایید کړي ، چې په می 2018 کې پیژندل شوي. د PSF ټیکنالوژي، مګر په عمل کې، د کوډ ټیمپلیټونه چې د برید لامل کیدی شي لا تر اوسه ندي موندل شوي او عمومي خطر د پام وړ ارزول شوی.

راځئ چې په یاد ولرو چې د سپیکټر-v4 (Speculative Store Bypass) برید د ډیټا بیا رغولو پراساس دی چې د غیر مستقیم ادرس په کارولو سره د بدیل لیکلو او لوستلو عملیاتو پروسس کولو پرمهال د عملیاتو د قیاس اجرا کولو پایله له مینځه وړلو وروسته د پروسیسر کیچ کې ځای په ځای شوي. کله چې د لوستلو عملیات د لیکلو عملیات تعقیبوي (د بیلګې په توګه، mov [rbx + rcx]، 0x0؛ mov rax، [rdx + rsi])، د لوستلو پته د ورته عملیاتو د ترسره کولو له امله دمخه پیژندل کیدی شي (د لوستلو عملیات دي ډیر ځله ترسره کیږي او لوستل کیدی شي د کیچ څخه ترسره شي) او پروسیسر کولی شي په قیاس سره د لیکلو دمخه لوستل ترسره کړي پرته لدې چې د لیکلو غیر مستقیم آفسیټ محاسبه کیدو ته انتظار وکړي.

دا فیچر د لوستلو لارښوونې ته اجازه ورکوي چې په ځینې پته کې زاړه ارزښت ته لاسرسی ومومي پداسې حال کې چې د پلورنځي عملیات لاهم ندي بشپړ شوي. که چیرې د وړاندوینې تېروتنه شتون ولري، ناکامه اټکلي عملیات به له مینځه یوړل شي، مګر د هغې د اجرا کولو نښې به د پروسیسر په کیچ کې پاتې شي او د لاسرسي بدلونونو تحلیل پراساس د کیچ مینځپانګې ټاکلو لپاره د یوې میتود لخوا ترلاسه کیدی شي. د زیرمه شوي او غیر ذخیره شوي معلوماتو لپاره وخت.

د AMD Zen 3 پروسیسرونو کې اضافه شوي، PSF STLF (Store-to-Load-Forwarding) اصلاح کوي، کوم چې د لوستلو او لیکلو عملیاتو ترمنځ د اړیکو وړاندوینې سره د لوستلو عملیات په قیاس سره ترسره کوي. کله چې د کلاسیک STLF کاروئ، پروسیسر د "لوډ" عملیات ترسره کوي چې په مستقیم ډول د مخکینۍ "store" کمانډ څخه لیږل شوي، پرته له دې چې پایلې ته انتظار وکړي چې په حقیقت کې حافظې ته ولیکل شي، مګر ډاډ ترلاسه کړئ چې پتې په "لوډ" کې کارول کیږي. او "store" کمانډونه میچ کوي. د PSF اصلاح کول د پتې چک کول قیاس کوي او د "لوډ" عملیات ترسره کوي مخکې لدې چې د پتې معلومات محاسبه شي که چیرې د پلورنځي/لوډ جوړه د یو واحد پته اداره کولو دمخه اجرا شوي وي. که وړاندوینه ناکامه شي، دولت بیرته راګرځول کیږي، مګر ډاټا په زیرمه کې پاتې کیږي.

په PSF برید یوازې د امتیازاتو د یوې کچې په چوکاټ کې ممکن دی ، یوازې د اوسني پروسې شرایط پوښي او د پتې ځای جلا کولو میتودونو یا هارډویر سینڈ باکس میکانیزمونو لخوا بند شوی. په دې حالت کې، په پروسو کې د سافټویر سینڈ باکسینګ میتودونه په احتمالي توګه د ستونزې لخوا اغیزمن کیدی شي. برید سیسټمونو ته ګواښ رامینځته کوي لکه براوزرونه ، د کوډ اجرا کولو مجازی ماشینونه ، او JITs چې په یوه پروسه کې د دریمې ډلې کوډ اجرا کوي (برید کولی شي غیر باوري سینڈ باکس شوي کوډ ته اجازه ورکړي چې د پروسې نورو معلوماتو ته لاسرسی ومومي).

AMD د PSF بشپړ یا انتخابي غیر فعال کولو لپاره یو شمیر میتودونه چمتو کړي ، مګر د ډیری غوښتنلیکونو لپاره د نه منلو وړ خطر په پام کې نیولو سره ، وړاندیز کړی چې دا اصلاح کول په ډیفالټ غیر فعال نه شي. د پروسو په انتخابي توګه خوندي کولو لپاره چې د باور وړ کوډ اجرا کونکي جلا کوي، دا وړاندیز کیږي چې د انفرادي تارونو په ګډون د "SSBD" او "PSFD" MSR بټونو په ترتیبولو سره PSF غیر فعال کړي. پیچونه د "psfd" او "nopsfd" کمانډ لاین اختیارونو پلي کولو سره د لینکس کرنل لپاره چمتو شوي چې دا کنټرولوي چې څنګه PSF فعال او بند کیږي.

سرچینه: opennet.ru

Add a comment