LVI ass eng nei Klass vun Attacken op de spekulativen Ausféierungsmechanismus an der CPU

Verëffentlecht Informatiounen iwwer eng nei Klass vun Attacken Lvi (Load Value Injection, CVE-2020-0551) op de spekulativen Ausféierungsmechanismus an Intel CPUs, déi benotzt kënne ginn fir Schlësselen a geheime Daten aus Intel SGX Enclaves an aner Prozesser ze lecken.

Eng nei Klass vun Attacken baséiert op Manipulatioun vun de selwechte mikroarchitektonesche Strukturen, déi an Attacken benotzt ginn MDS (Mikroarchitektural Daten Sampling), Spektrum a Meltdown. Zur selwechter Zäit ginn nei Attacke net duerch existéierend Methode vum Schutz géint Meltdown, Spectre, MDS an aner ähnlech Attacke blockéiert. Effektive LVI Schutz erfuerdert Hardware Ännerungen un der CPU. Wann Dir de Schutz programmatesch organiséiert, andeems Dir d'LFENCE-Instruktioun vum Compiler no all Laaschtoperatioun aus der Erënnerung bäidréit an d'RET-Instruktioun duerch POP, LFENCE a JMP ersetzt, gëtt ze vill Overhead opgeholl - laut Fuerscher wäert de komplette Softwareschutz zu enger Ofsenkung vun Leeschtung vun 2-19 Mol.

En Deel vun der Schwieregkeet fir de Problem ze blockéieren ass kompenséiert duerch d'Tatsaach datt den Attack momentan méi theoretesch wéi praktesch ass (den Attack ass theoretesch méiglech, awer ganz schwéier ze implementéieren an nëmmen a syntheteschen Tester reproduzéiert).
Intel ugepaakt de Problem huet eng moderéiert Niveau vun Gefor (5.6 vun 10) an entlooss d'Firmware an d'SDK fir d'SGX Ëmfeld aktualiséieren, an deem et probéiert huet d'Attack mat enger Léisung ze blockéieren. Déi proposéiert Attackemethoden sinn am Moment nëmme fir Intel Prozessoren applicabel, awer d'Méiglechkeet LVI fir aner Prozessoren unzepassen, op déi Meltdown-Klass Attacke applicabel sinn, kann net ausgeschloss ginn.

De Problem gouf am leschte Abrëll vum Fuerscher Jo Van Bulck vun der Uni Leuven identifizéiert, duerno mat der Participatioun vun 9 Fuerscher vun aneren Universitéite fënnef Basisattackmethoden entwéckelt goufen, déi all d'Existenz vu méi spezifeschen erlaben. Optiounen. Onofhängeg, am Februar vun dësem Joer, Fuerscher vu Bitdefender och entdeckt ee vun de LVI Attack Varianten a gemellt et zu Intel. D'Attackvarianten ënnerscheede sech duerch d'Benotzung vu verschiddene mikroarchitektonesche Strukturen, wéi zum Beispill de Späicherbuffer (SB, Store Buffer), Füllbuffer (LFB, Line Fill Buffer), FPU Kontextschalterbuffer an Éischtniveau Cache (L1D), virdru benotzt. bei Attacken wéi ZombieLoad, RIDL, Ausfalen, LazyFP, Virschau и Meltdown.

LVI ass eng nei Klass vun Attacken op de spekulativen Ausféierungsmechanismus an der CPU

D'Haaptrei Éieren De LVI géint MDS Attacken ass datt MDS d'Bestëmmung vum Inhalt vu mikroarchitektonesche Strukturen manipuléiert, déi am Cache bleiwen no spekulativ Feelerhandhabung oder Lueden a Store Operatiounen, wärend
LVI Attacke erlaben d'Daten vum Ugräifer an mikroarchitektonesche Strukturen agebaut ze ginn fir déi spéider spekulativ Ausféierung vum Code vum Affer ze beaflossen. Mat dëse Manipulatioune kann en Ugräifer d'Inhalter vu privaten Datestrukturen an anere Prozesser extrahéieren wann e bestëmmte Code um Zil-CPU Kär ausféiert.

LVI ass eng nei Klass vun Attacken op de spekulativen Ausféierungsmechanismus an der CPU

fir Ausbeutungsproblem am Code vum Afferprozess treffen soll speziell Sequenzen vu Code (Gadgeten) an deenen en Ugräifer-kontrolléierte Wäert gelueden ass, a lueden dëse Wäert verursaacht Ausnahmen (Feeler, Ofbriechen oder Assistent), d'Resultat ofginn an d'Instruktioun nei ausféieren. Wann eng Ausnahm veraarbecht gëtt, erschéngt eng spekulativ Fënster, während där d'Donnéeën, déi am Gadget veraarbecht ginn, auslafen. Besonnesch fänkt de Prozessor un e Stéck Code (Gadget) am spekulative Modus auszeféieren, bestëmmt dann datt d'Prognose net gerechtfäerdegt war a rullt d'Operatiounen zréck an hiren ursprénglechen Zoustand, awer d'Donnéeën, déi während der spekulativer Ausféierung veraarbecht ginn, ginn am L1D Cache deposéiert a mikroarchitektural Puffer an ass verfügbar fir aus hinnen zréckzekommen mat bekannte Methoden fir Reschtdaten duerch Drëtt Partei Channels ze bestëmmen.

D'"Assist" Ausnam, am Géigesaz zu der "Feeler" Ausnam, gëtt intern vum Prozessor gehandhabt ouni Software Handler ze ruffen. Assist ka geschéien, zum Beispill, wann den A (Zougänglech) oder D (Dirty) Bit an der Erënnerungssäit Tabelle muss aktualiséiert ginn. D'Haaptschwieregkeet fir en Attack op aner Prozesser auszeféieren ass wéi een d'Optriede vun der Hëllef initiéiert andeems een den Afferprozess manipuléiert. Et gi momentan keng zouverlässeg Weeër fir dëst ze maachen, awer et ass méiglech datt se an Zukunft fonnt ginn. D'Méiglechkeet fir en Attack auszeféieren ass bis elo nëmme fir Intel SGX Enclaves bestätegt ginn, aner Szenarie sinn theoretesch oder reproduzéierbar a syntheteschen Bedéngungen (erfuerdert verschidde Gadgeten un de Code bäizefügen)

LVI ass eng nei Klass vun Attacken op de spekulativen Ausféierungsmechanismus an der CPU

LVI ass eng nei Klass vun Attacken op de spekulativen Ausféierungsmechanismus an der CPU

Méiglech Attacke Vektoren:

  • Datenleckage vu Kernelstrukturen an de Benotzerniveau Prozess. De Linux Kernel Schutz géint Specter 1 Attacken, souwéi de SMAP (Supervisor Mode Access Prevention) Schutzmechanismus, reduzéieren d'Wahrscheinlechkeet vun engem LVI Attack wesentlech. Zousätzlech Schutz fir de Kernel bäizefügen kann néideg sinn wann méi einfach LVI Attackemethoden an Zukunft identifizéiert ginn.
  • Datenleckage tëscht verschiddene Prozesser. D'Attack erfuerdert d'Präsenz vu bestëmmte Coden an der Applikatioun an d'Definitioun vun enger Method fir eng Ausnam am Zilprozess ze werfen.
  • Datenleckage vum Hostëmfeld an de Gaaschtsystem. D'Attack ass als ze komplex klasséiert, erfuerdert verschidde schwiereg-ze-implementéieren Schrëtt a Prognosen vun Aktivitéit am System.
  • Dateauslafe tëscht Prozesser a verschiddene Gaaschtsystemer. Den Attackvektor ass no bei der Organisatioun vun Datenleckage tëscht verschiddene Prozesser, awer erfuerdert zousätzlech komplex Manipulatioune fir d'Isolatioun tëscht Gaaschtsystemer z'iwwergoen.

Verëffentlecht vun Fuerscher e puer Prototypen mat enger Demonstratioun vun de Prinzipien vun engem Ugrëff, mä si sinn nach net gëeegent fir real Attacken. Dat éischt Beispill erlaabt Iech spekulativ Code Ausféierung am Afferprozess ze redirectéieren, ähnlech wéi Retour-orientéiert Programméierung (ROP, Retour-orientéiert Programméierung). An dësem Beispill ass d'Affer e speziell virbereet Prozess deen déi néideg Gadgeten enthält (eng Attack op richteg Drëtt Partei Prozesser applizéieren ass schwéier). Dat zweet Beispill erlaabt eis d'Berechnungen während der AES Verschlësselung an der Intel SGX Enclave ze stéieren an eng Datelek während der spekulativer Ausféierung vun Instruktiounen z'organiséieren fir de Wäert vum Schlëssel fir d'Verschlësselung ze restauréieren.


Source: opennet.ru

Setzt e Commentaire