April-Patch nutzt Microcode-Updates für AMD-CPUs mit Spectre-Schutz

Gestern Abend unse­rer Zeit hat Micro­soft sein kumu­la­ti­ves Update für April 2018 ver­öf­fent­licht. Neben der übli­chen klei­ne­ren Sicher­heits­up­dates ent­hält das Paket nun auch Spect­re-Schutz für AMD-Pro­zes­so­ren bis zurück zu Bulldozer:

Pro­vi­des sup­port to con­trol usa­ge of Indi­rect Branch Pre­dic­tion Bar­ri­er (IBPB) within some AMD pro­ces­sors (CPUs) for miti­ga­ting CVE-2017–5715, Spect­re Vari­ant 2 when swit­ching from user con­text to ker­nel con­text (See AMD Archi­tec­tu­re Gui­de­lines around Indi­rect Branch Con­trol and AMD Secu­ri­ty Updates for more details). Fol­low ins­truc­tions out­lined in KB4073119 for Win­dows Cli­ent (IT Pro) gui­dance to enable usa­ge of IBPB within some AMD pro­ces­sors (CPUs) for miti­ga­ting Spect­re Vari­ant 2 when swit­ching from user con­text to ker­nel context.

Dazu hat AMD ein White­pa­per ver­öf­fent­licht, das die Schutz­maß­nah­men gegen die Spect­re Vari­an­te 2 erläu­tert. Genau wie Intel setzt AMD unter Win­dows zwangs­wei­se auch auf neue Befeh­le, die per Micro­code in die CPUs ein­ge­bracht wer­den müs­sen. Aller­dings legt AMD – anders als Intel – nahe, von den drei neu­en Befeh­len nur die Indi­rect Branch Pre­dic­tion Bar­ri­er (IBPB) zu nut­zen. Die bei­den ande­ren Befeh­le Indi­rect Branch Rest­ric­ted Spe­cu­la­ti­on (IBRS) und Sin­gle Thread Indi­rect Branch Pre­dic­tor (STIBP) hält AMD in Sachen Per­for­mance für nicht zweckmäßig.

Damit Win­dows den Spect­re-Schutz nut­zen kann, gibt es zwei Mög­lich­kei­ten. Ent­we­der der Main­board-Her­stel­ler ver­öf­fent­licht ein neu­es BIOS, das den Micro­code auf die neu­es­te Ver­si­on aktua­li­siert, oder aber man lässt Win­dows das Micro­code-Update nach­la­den, was ins­be­son­de­re für älte­re Platt­for­men (Bull­do­zer, Piledri­ver, etc.) sinn­voll wäre, wo kei­ne BIOS-Updates mehr zu erwar­ten sind. Aller­dings ist aktu­ell noch offen ob dies für AMD-CPUs gesche­hen wird. Anders als bei Intel muss bei AMD der Schutz zudem manu­ell akti­viert wer­den. Die detail­lier­te Vor­ge­hens­wei­se ist unter KB4073119 beschrie­ben. Zusam­men­ge­fasst müs­sen fol­gen­de Wer­te in der Regis­try gesetzt werden:

reg add “HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Manage­ment” /v Fea­ture­Set­tings­Over­ri­de /t REG_DWORD /d 64 /f

reg add “HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Manage­ment” /v Fea­ture­Set­tings­Over­ri­de­Mask /t REG_DWORD /d 3 /f

Der­zeit ist der Spect­re-Schutz für AMD-Pro­zes­so­ren nur für Win­dows 10 v1709 erhält­lich, dürf­te jedoch auch in v1803 kom­men, sobald offi­zi­ell erhält­lich. Ob älte­re Win­dows-Ver­sio­nen – auch älte­re Win­dows-10-Ver­sio­nen – noch ver­sorgt wer­den, wur­de noch nicht kom­mu­ni­ziert. Gegen Spect­re Vari­an­te 1 waren auch AMD-Pro­zes­so­ren bis­her schon per Soft­ware geschützt, für Melt­down waren AMD-Pro­zes­so­ren im Gegen­satz zu Intel-CPUs nie anfällig.