Käskluste täitmise aeg sõltub ARM ja Intel CPU-de andmetest

Eric Biggers, üks Adiantum šifri arendajatest ja Linuxi fscrypt alamüsteemi hooldaja, pakkus välja patšide kogumi, et lahendada turvaprobleemid, mis tulenevad Intel'i protsessorite eripärast, mis ei taga käskude täitmise aega erinevate töödeldavate andmete jaoks. Intel'i protsessorites ilmneb probleem Ice Lake'i perekonnast alates. Sarnane probleem esineb ka ARM protsessorites.

Käskude täitmise aja sõltuvust nendes käskudes töödeldavatest andmetest peetakse patšide autorite poolt protsessorite haavatavuseks, kuna selline käitumine ei saa garantiid krüptograafiliste operatsioonide turvalisuse osas. Paljud krüptograafiliste algoritmide rakendused on mõeldud nii, et andmed ei mõjuta käskude täitmise aega, ja selle käitumise rikkumine võib viia rünnakuteni külgkanalite kaudu, mis taastavad andmeid nende töötlemise aja analüüsi põhjal.

Potentsiaalselt võib ka täitmise aja sõltuvust andmetest kasutada rünnakute korraldamiseks, et määrata tuumandmeid kasutajaruumi kaudu. Eric Biggers'i sõnul ei tagata vaikimisi konstantset käitusaega isegi arvutustingimustes, mis teostavad liitmis- ja XOR-operatsioone, samuti spetsialiseeritud AES-NI käskude jaoks (teave ei ole teste kinnitatud, kuid teiste andmete kohaselt tekib vektorite korrutamise ja bittide lugemise puhul viivitus ühe tsükli võrra).

Intel'i ja ARM'i ettevõtted on soovitanud uusi lippe, et tuua tagasi vana käitumine konstantse käitusaegaga: ARM'i CPU jaoks PSTATE-bitt DIT (Data Independent Timing) ja Intel'i CPU jaoks MSR-bitt DOITM (Data Operand Independent Timing Mode), mis tagavad vana käitumise. Intel ja ARM soovitavad kaitse aktiveerida vajadusel eriti olulise koodi jaoks, kuid tegelikult võivad olulised arvutused esineda kõikjal tuumas ja kasutajaruumis, seetõttu kaalutakse DOITM ja DIT kohtade pidevat aktiveerimist kogu tuuma jaoks.

ARM'i protsessorite jaoks on Linuxi 6.2 tuumas juba vastu võetud patšid, mis muudavad tuuma käitumist, kuid neid patše peetakse ebapiisavaks, kuna need katavad ainult tuuma koodi ja ei muuda käitumist kasutajaruumi jaoks. Intel'i protsessorite puhul on kaitse aktiveerimine alles arvustamisstaadiumis. Patši mõju mõõtmist jõudlusele ei ole veel tehtud, kuid Intel'i dokumentatsiooni kohaselt vähendab DOITM režiimi aktiveerimine jõudlust (näiteksioon mõningate optimeerimiste, nagu teatud andmete jaoks ette laadimise, keelamise tõttu) ja tulevastes protsessorimudelites võib jõudluse vähenemine suureneda.

Allikas: opennet.ru

Osta usaldusväärne veebihosting DDoS kaitsega, VPS VDS serverid 🔥 Osta usaldusväärne veebihosting DDoS kaitsega, VPS VDS serverid | ProHoster