AMD ti jẹrisi ailagbara ti o pọju ti AMD Zen 3 CPUs si ikọlu Specter-STL

AMD ti ṣe atẹjade ijabọ kan ti n ṣatupalẹ aabo ti imọ-ẹrọ iṣapeye ti PSF (Idari Ile-itaja Asọtẹlẹ) ti a ṣe imuse ni awọn olutọsọna jara Zen 3 naa ni imọ-jinlẹ jẹrisi iwulo ti ọna ikọlu Specter-STL (Spectre-v4), ti a damọ ni Oṣu Karun ọdun 2018. Imọ-ẹrọ PSF, ṣugbọn ni iṣe, ko si awọn awoṣe koodu ti o lagbara lati yori si ikọlu sibẹsibẹ a ti rii ati pe eewu gbogbogbo jẹ aibikita.

Jẹ ki a ranti pe ikọlu Specter-v4 (Speculative Store Bypass) da lori mimu-pada sipo data ti o ti gbe sinu kaṣe ero isise lẹhin yiyọkuro abajade ti ipaniyan ipaniyan ti awọn iṣẹ nigba ṣiṣe kikọ yiyan ati ka awọn iṣẹ ṣiṣe ni lilo adirẹsi taara. Nigbati iṣẹ kika ba tẹle iṣẹ kikọ kan (fun apẹẹrẹ, mov [rbx + rcx], 0x0; mov rax, [rdx + rsi]), aiṣedeede ti adirẹsi kika le ti mọ tẹlẹ nitori awọn iṣẹ ṣiṣe ti o jọra (awọn iṣẹ kika jẹ ṣe pupọ nigbagbogbo ati kika le ṣee ṣe lati kaṣe) ati pe ero isise le ṣe akiyesi awọn kika ṣaaju ki o to kọ laisi iduro fun aiṣedeede aiṣedeede kikọ lati ṣe iṣiro.

Ẹya yii ngbanilaaye itọnisọna kika lati wọle si iye atijọ ni adirẹsi kan lakoko ti iṣẹ ile itaja ko ti pari. Ti aṣiṣe asọtẹlẹ ba wa, iṣẹ akiyesi ti ko ni aṣeyọri yoo jẹ asonu, ṣugbọn awọn ipaniyan ti ipaniyan rẹ yoo wa ninu kaṣe ero isise ati pe o le gba pada nipasẹ ọkan ninu awọn ọna fun ṣiṣe ipinnu awọn akoonu ti kaṣe ti o da lori itupalẹ awọn ayipada ninu iraye si. akoko lati cache ati data ti a ko fi pamọ.

Fi kun si awọn ilana AMD Zen 3, PSF ṣe iṣapeye STLF (Ipamọ-To-Fifuye-Fifiranṣẹ), eyiti o ṣe awọn iṣẹ kika ni akiyesi nipa asọtẹlẹ ibatan laarin awọn iṣẹ kika ati kikọ. Nigbati o ba nlo STLF Ayebaye, ero isise naa ṣe iṣẹ “fifuye” kan lori data ti a firanṣẹ taara lati aṣẹ “itaja” iṣaaju, laisi iduro fun abajade lati kọ gangan si iranti, ṣugbọn rii daju pe awọn adirẹsi ti a lo ninu “fifuye” naa. ati "itaja" ase baramu. Iṣapejuwe PSF jẹ ki wiwa adirẹsi adirẹsi jẹ arosọ ati ṣe iṣẹ “fifuye” ṣaaju ki alaye adirẹsi naa ti ṣe iṣiro ti o ba jẹ pe bata itaja / fifuye ti n ṣakoso adirẹsi kan ti ṣiṣẹ tẹlẹ. Ti asọtẹlẹ ba kuna, ipinle naa ti yiyi pada, ṣugbọn data naa wa ninu kaṣe.

Ikọlu lori PSF ṣee ṣe nikan laarin ilana ti ipele kan ti awọn anfani, ni wiwa nikan ilana ilana lọwọlọwọ ati pe o dina nipasẹ awọn ọna ipinya aaye adirẹsi tabi awọn ọna ẹrọ apoti iyanrin. Ni ọran yii, awọn ọna sandboxing sọfitiwia ni awọn ilana le ni ipa nipasẹ iṣoro naa. Ikọlu naa jẹ irokeke ewu si awọn eto bii awọn aṣawakiri, awọn ẹrọ foju ipaniyan koodu, ati awọn JIT ti o ṣe koodu ẹni-kẹta laarin ilana kan (kolu naa le gba koodu apoti iyanrin ti a ko gbẹkẹle lati ni iraye si data ilana miiran).

AMD ti pese awọn ọna pupọ fun piparẹ PSF patapata tabi yiyan, ṣugbọn fun eewu aifiyesi fun ọpọlọpọ awọn ohun elo, ti ṣeduro pe iṣapeye yii ko ni alaabo nipasẹ aiyipada. Lati yan aabo awọn ilana ti o ya sọtọ awọn ti n ṣiṣẹ koodu ti ko ni igbẹkẹle, o ni imọran lati mu PSF kuro nipa tito awọn “SSBD” ati “PSFD” MSR bits, pẹlu fun awọn okun kọọkan. A ti pese awọn abulẹ fun ekuro Linux pẹlu imuse ti awọn aṣayan laini aṣẹ “psfd” ati “nopsfd” ti o ṣakoso bii PSF ti wa ni titan ati pipa.

orisun: opennet.ru

Fi ọrọìwòye kun