Chaidh so-leòntachd eile a chomharrachadh ann am pròiseasairean AMD a leigeas le ionnsaighean clas Meltdown

Tha sgioba de luchd-rannsachaidh bho Oilthigh Teicnigeach Graz (An Ostair) agus Ionad Helmholtz airson Tèarainteachd Fiosrachaidh (CISPA) air fiosrachadh fhoillseachadh mu so-leòntachd (CVE-2021-26318) anns a h-uile pròiseasar AMD a tha ga dhèanamh comasach clas Meltdown a dhèanamh. ionnsaighean taobh-seanail (an toiseach bhathas a’ gabhail ris nach eil so-leòntachd Meltdown a’ toirt buaidh air pròiseasairean AMD). Gu practaigeach, faodar an ionnsaigh a chleachdadh gus seanalan conaltraidh falaichte a stèidheachadh, sùil a chumail air gnìomhachd san kernel, no fiosrachadh fhaighinn mu sheòlaidhean ann an cuimhne kernel gus faighinn seachad air dìon KASLR fhad ‘s a thathar a’ gabhail brath air so-leòntachd san kernel.

Tha AMD den bheachd gu bheil e neo-iomchaidh ceumannan sònraichte a ghabhail gus an duilgheadas a bhacadh, leis gu bheil an so-leòntachd, mar ionnsaigh coltach ris a chaidh a lorg san Lùnastal, glè bheag de fheum ann an suidheachaidhean fìor, air a chuingealachadh le crìochan gnàthach àite seòlaidh a ’phròiseis agus tha feum air làthaireachd sònraichte. sreathan de stiùireadh deiseil (innealan) anns an kernel. Gus an ionnsaigh a nochdadh, chuir an luchd-rannsachaidh am modal kernel aca fhèin le inneal a chaidh a chuir ris gu saor-thoileach. Ann an suidheachaidhean fìor, faodaidh luchd-ionnsaigh a bhith a’ cleachdadh, mar eisimpleir, so-leòntachd gu cunbhalach ann am fo-shiostam eBPF gus na sreathan riatanach a chuir an àite.

Gus dìon an-aghaidh an seòrsa ionnsaigh ùr seo, mhol AMD a bhith a’ cleachdadh dhòighean còdaidh tèarainte a chuidicheas le bhith a’ cuir casg air ionnsaighean Meltdown, leithid a bhith a’ cleachdadh stiùireadh LFENCE. Tha an luchd-rannsachaidh a chomharraich an duilgheadas a’ moladh a bhith a’ comasachadh iomallachd clàr duilleag cuimhne nas cruaidhe (KPTI), nach deach a chleachdadh roimhe seo ach airson pròiseasairean Intel.

Rè an deuchainn, chaidh aig an luchd-rannsachaidh air fiosrachadh a leigeil a-mach bhon kernel gu pròiseas ann an àite luchd-cleachdaidh aig astar 52 bytes gach diog, leis gu robh inneal anns an kernel a bhios a ’coileanadh an obrachaidh“ ma tha (cuir dheth < data_len) tmp = LUT[data[offset] * 4096];”. Chaidh grunn dhòighean a mholadh airson fiosrachadh fhaighinn air ais tro shianalan taobh a thig gu crìch san tasgadan aig àm cur gu bàs tuairmeasach. Tha a 'chiad dòigh stèidhichte air a bhith a' mion-sgrùdadh gluasadan ann an ùine cur an gnìomh an stiùireadh pròiseasar "PREFETCH" (Prefetch + Time), agus an dàrna fear air atharrachadh an atharrachadh ann an caitheamh lùtha nuair a chur an gnìomh "PREFETCH" (Prefetch + Power).

Cuimhnich gu bheil so-leòntachd clasaigeach Meltdown stèidhichte air an fhìrinn gum faod am pròiseasar faighinn gu raon dàta prìobhaideach aig àm cur an gnìomh tuairmeasach agus an toradh a chuir air falbh, leis gu bheil na sochairean suidhichte a’ toirmeasg ruigsinneachd mar sin bho phròiseas an neach-cleachdaidh. Anns a ’phrògram, tha am bloc a chaidh a chuir gu bàs gu tuairmeasach air a sgaradh bhon phrìomh chòd le meur cumhach, a bhios ann an suidheachaidhean fìor an-còmhnaidh a’ losgadh, ach air sgàth gu bheil an aithris chumha a ’cleachdadh luach àireamhaichte nach eil fios aig a’ phròiseasar fhad ‘s a tha e a’ coileanadh ro-làimh. an còd, tha a h-uile roghainn meur air a dhèanamh le tuairmeasach.

Leis gu bheil gnìomhachd a thèid a chuir gu bàs gu tuairmeasach a’ cleachdadh an aon tasgadan ri stiùiridhean a thèid a chuir gu bàs gu h-àbhaisteach, tha e comasach rè coileanadh tuairmeasach comharran a shuidheachadh san tasgadan a tha a’ nochdadh susbaint pìosan fa leth ann an raon cuimhne prìobhaideach, agus an uairsin ann an còd a thèid a chuir gu bàs gu h-àbhaisteach gus an luach a dhearbhadh tro àm ruigsinneachd mion-sgrùdadh air dàta taisgte agus neo-thasgadh.

Source: fosgailtenet.ru

Cuir beachd ann