Mae AMD wedi cadarnhau bregusrwydd posibl CPUs AMD Zen 3 i ymosodiad Specter-STL

Mae AMD wedi cyhoeddi adroddiad yn dadansoddi diogelwch technoleg optimeiddio PSF (Predictive Store Forwarding) a weithredwyd ym mhroseswyr cyfres Zen 3. Cadarnhaodd yr astudiaeth yn ddamcaniaethol gymhwysedd dull ymosod Specter-STL (Spectre-v4), a nodwyd ym mis Mai 2018, i Technoleg PSF, ond yn ymarferol, nid oes unrhyw dempledi cod sy'n gallu arwain at ymosodiad wedi'u canfod eto ac asesir bod y perygl cyffredinol yn ddibwys.

Gadewch inni gofio bod ymosodiad Specter-v4 (Ffordd Osgoi Siop Ar hap) yn seiliedig ar adfer data sydd wedi setlo yn storfa'r prosesydd ar ôl cael gwared ar ganlyniad gweithredu hapfasnachol wrth brosesu gweithrediadau ysgrifennu a darllen am yn ail gan ddefnyddio cyfeiriadau anuniongyrchol. Pan fydd gweithrediad darllen yn dilyn gweithrediad ysgrifennu (e.e., mov [rbx + rcx], 0x0; mov rax, [rdx + rsi]), mae'n bosibl bod gwrthbwyso'r cyfeiriad darllen eisoes yn hysbys oherwydd bod gweithrediadau tebyg yn cael eu cyflawni (gweithrediadau darllen yw perfformio'n llawer amlach a gellir darllen o'r storfa) a gall y prosesydd berfformio darlleniadau ar hap cyn ysgrifennu heb aros i wrthbwyso cyfeiriadedd yr ysgrifennu gael ei gyfrifo.

Mae'r nodwedd hon yn caniatáu cyfarwyddyd darllen i gael mynediad at hen werth mewn rhyw gyfeiriad tra nad yw gweithrediad y storfa wedi'i gwblhau eto. Os oes gwall rhagfynegi, bydd y gweithrediad hapfasnachol aflwyddiannus yn cael ei ddileu, ond bydd olion ei weithrediad yn aros yn storfa'r prosesydd a gellir ei adfer trwy un o'r dulliau ar gyfer pennu cynnwys y storfa yn seiliedig ar ddadansoddiad o newidiadau mewn mynediad amser i ddata wedi'i storio a heb ei gadw.

Wedi'i ychwanegu at broseswyr AMD Zen 3, mae PSF yn gwneud y gorau o STLF (Store-To-Load-Forwarding), sy'n perfformio gweithrediadau darllen yn hapfasnachol trwy ragweld y berthynas rhwng gweithrediadau darllen ac ysgrifennu. Wrth ddefnyddio STLF clasurol, mae'r prosesydd yn perfformio gweithrediad "llwyth" ar y data a anfonwyd ymlaen yn uniongyrchol o'r gorchymyn "siop" blaenorol, heb aros i'r canlyniad gael ei ysgrifennu i'r cof, ond gan sicrhau bod y cyfeiriadau a ddefnyddir yn y "llwyth" a gorchmynion "siop" yn cyd-fynd. Mae'r optimeiddio PSF yn gwneud gwirio cyfeiriadau yn hapfasnachol ac yn cyflawni gweithrediad "llwyth" cyn i'r wybodaeth cyfeiriad gael ei chyfrifo os yw pâr storfa / llwyth sy'n trin un cyfeiriad wedi'i weithredu o'r blaen. Os bydd y rhagfynegiad yn methu, caiff y cyflwr ei rolio'n ôl, ond mae'r data yn aros yn y storfa.

Dim ond o fewn fframwaith un lefel o freintiau y mae ymosodiad ar PSF yn bosibl, mae'n cwmpasu cyd-destun y broses gyfredol yn unig ac mae'n cael ei rwystro gan ddulliau ynysu gofod cyfeiriad neu fecanweithiau blwch tywod caledwedd. Yn yr achos hwn, mae'n bosibl y bydd y broblem yn effeithio ar ddulliau bocsio tywod meddalwedd mewn prosesau. Mae'r ymosodiad yn fygythiad i systemau fel porwyr, peiriannau rhithwir gweithredu cod, a JITs sy'n gweithredu cod trydydd parti o fewn un broses (gallai'r ymosodiad ganiatáu i god blwch tywod nad yw'n ymddiried ynddo gael mynediad at ddata proses arall).

Mae AMD wedi darparu nifer o ddulliau ar gyfer analluogi PSF yn gyfan gwbl neu'n ddetholus, ond o ystyried y risg ddibwys ar gyfer y rhan fwyaf o gymwysiadau, mae wedi argymell na ddylid analluogi'r optimeiddio hwn yn ddiofyn. Er mwyn amddiffyn prosesau sy'n ynysu'r rhai sy'n gweithredu cod annibynadwy yn ddetholus, cynigir analluogi PSF trwy osod y darnau MSR “SSBD” a “PSFD”, gan gynnwys ar gyfer edafedd unigol. Mae clytiau wedi'u paratoi ar gyfer y cnewyllyn Linux gyda gweithrediad yr opsiynau llinell orchymyn “psfd” a “nopsfd” sy'n rheoli sut mae PSF yn cael ei droi ymlaen ac i ffwrdd.

Ffynhonnell: opennet.ru

Ychwanegu sylw