Kwesbaarhede in die MMIO-meganisme van Intel-verwerkers

Intel het inligting oor 'n nuwe klas datalekkasies bekend gemaak deur mikroargitektoniese strukture van verwerkers, wat dit moontlik maak om, deur manipulasie van die MMIO (Memory Mapped Input Output)-meganisme, inligting te bepaal wat op ander SVE-kerne verwerk word. Kwesbaarhede laat byvoorbeeld toe dat data uit ander prosesse, Intel SGX-enklawes of virtuele masjiene onttrek word. Die kwesbaarhede is slegs spesifiek vir Intel SVE's; verwerkers van ander vervaardigers word nie deur die kwesbaarhede geraak nie.

Die kwesbaarhede verskyn in verskeie Intel SVE's, insluitend verwerkers gebaseer op Haswell, Skylake, IceLake, Broadwell, Lakefield, Kabylake, Cometlake en Rocketlake mikroargitekture, sowel as Xeon EP/EX, Scalable en sommige Atom-bedienerverwerkers. Om 'n aanval uit te voer, word toegang tot MMIO vereis, wat byvoorbeeld verkry kan word in virtualisasiestelsels wat die vermoë bied om toegang te verkry tot MMIO vir gasstelsels wat deur die aanvaller beheer word. 'n Regstelling kan ook nodig wees vir stelsels wat Intel SGX (Software Guard Extensions) geïsoleerde enklawes gebruik.

Om die kwesbaarheid te blokkeer, vereis beide 'n mikrokode-opdatering en die gebruik van addisionele sagtewarebeskermingsmetodes gebaseer op die gebruik van die VERW-instruksie om die inhoud van mikro-argitektoniese buffers skoon te maak wanneer teruggekeer word van die kern na gebruikersruimte of wanneer beheer na die gasstelsel oorgedra word. Soortgelyke beskerming word ook gebruik om voorheen geïdentifiseerde aanvalle van die MDS (Microarchitectural Data Sampling), SRBDS (Special Register Buffer Data Sampling) en TAA (Transactional Asynchronous Abort) klasse te blokkeer.

Aan die mikrokode-kant is die veranderinge wat nodig is om beskerming te implementeer, voorgestel in die Mei-mikrokode-opdatering vir Intel SVE's (IPU 2022.1). In die Linux-kern is beskerming teen 'n nuwe klas aanvalle ingesluit in vrystellings 5.18.5, 5.15.48, 5.10.123, 5.4.199, 4.19.248, 4.14.284 en 4.9.319. Om die stelsel se blootstelling aan kwesbaarhede in MMIO na te gaan en die aktiwiteit van sekere beskermingsmeganismes te evalueer, is die lêer “/sys/devices/system/cpu/vulnerabilities/mmio_stale_data” by die Linux-kern gevoeg. Om die insluiting van beskerming te beheer, is die kernselflaaiparameter "mmio_stale_data" geïmplementeer, wat die waardes "full" kan neem (maak die skoonmaak van buffers moontlik wanneer na gebruikersruimte en in die VM beweeg word), "full,nosmt" ( as “vol” + deaktiveer ook SBS/Hyper-Threads) en “af” (beskerming gedeaktiveer). Afsonderlike regstellings word aangebied vir die Xen-hypervisor en die Qubes-bedryfstelsel.

Die essensie van die geïdentifiseerde klas kwesbaarhede is dat sommige bewerkings lei tot die kopiëring of verskuiwing van data wat oorbly na uitvoering op ander SVE-kerns van een mikroargitektoniese buffer na 'n ander. Kwesbaarhede in MMIO laat toe dat hierdie oorblywende data van geïsoleerde mikroargitektoniese buffers na toepassingsigbare registers of SVE-buffers oorgedra word. Drie metodes is geïdentifiseer om oorblywende data deur MMIO te onttrek:

  • DRPW (Device Register Partial Write, CVE-2022-21166) is 'n probleem met die verkeerde hantering van skryfwerk aan sommige MMIO-registers. As die grootte van die data wat geskryf word kleiner is as die grootte van die register, dan word die oorblywende inligting van die vulbuffers ook na die register gekopieer. Gevolglik kan 'n proses wat 'n onvolledige skryfbewerking na die MMIO-register inisieer, data verkry wat in die mikroargitektoniese buffers oorbly van bewerkings wat op ander SVE-kerns uitgevoer word.
  • SBDS (Shared Buffers Data Sampling, CVE-2022-21125) is 'n lek van oorblywende data vanaf 'n kerngebonde vulbuffer wat voortspruit uit beweging vanaf intermediêre buffers wat algemeen is vir alle pitte.
  • SBDR (Shared Buffers Data Read, CVE-2022-21123) - die probleem is soortgelyk aan SBDS, maar verskil deurdat oorblywende data in SVE-strukture kan beland wat sigbaar is vir toepassings. SBDS- en SBDR-probleme verskyn slegs op verwerkers vir kliëntstelsels en op die Intel Xeon E3-bedienerfamilie.

Kwesbaarhede in die MMIO-meganisme van Intel-verwerkers


Bron: opennet.ru

Voeg 'n opmerking