Pagkahuyang sa mga processor sa Intel nga nagdala sa pagtagas sa datos pinaagi sa mga agianan sa ikatulo nga partido

Usa ka grupo sa mga tigdukiduki gikan sa mga unibersidad sa China ug Amerikano ang nakaila sa usa ka bag-ong kahuyang sa mga processor sa Intel nga nagdala sa ikatulo nga partido nga pagtulo sa kasayuran bahin sa sangputanan sa mga espekulatibo nga operasyon, nga magamit, pananglitan, aron maorganisar ang usa ka tinago nga channel sa komunikasyon tali sa mga proseso o pag-ila sa mga pagtulo sa panahon sa pag-atake sa Meltdown.

Ang esensya sa pagkahuyang mao nga ang usa ka pagbag-o sa rehistro sa processor sa EFLAGS nga mahitabo ingon usa ka sangputanan sa espekulatibo nga pagpatuman sa mga panudlo makaapekto sa sunod nga oras sa pagpatuman sa mga panudlo sa JCC (paglukso kung natuman ang mga piho nga kondisyon). Ang mga espekulatibo nga operasyon wala makompleto ug ang resulta gilabay, apan ang gilabay nga pagbag-o sa EFLAGS mahimong matino pinaagi sa pag-analisar sa oras sa pagpatuman sa mga instruksyon sa JCC. Ang mga operasyon sa pagtandi nga gihimo sa speculative mode sa wala pa ang transisyon, kung malampuson, moresulta sa usa ka gamay nga paglangan nga mahimong masukod ug magamit ingon usa ka timaan alang sa pagpili sa sulud.

Pagkahuyang sa mga processor sa Intel nga nagdala sa pagtagas sa datos pinaagi sa mga agianan sa ikatulo nga partido

Dili sama sa ubang susama nga mga pag-atake sa side-channel, ang bag-ong pamaagi wala mag-analisar sa mga pagbag-o sa oras sa pag-access sa naka-cache ug wala'y cache nga datos ug wala magkinahanglan og usa ka yugto sa pag-reset sa EFLAGS nga rehistro sa una nga kahimtang niini, nga nagpalisud sa pag-ila ug pagbabag sa pag-atake. Isip usa ka demonstrasyon, gipatuman sa mga tigdukiduki ang usa ka variant sa pag-atake sa Meltdown, gamit ang usa ka bag-ong pamaagi aron makakuha og kasayuran mahitungod sa resulta sa usa ka espekulatibo nga operasyon. Ang operasyon sa pamaagi alang sa pag-organisar sa pagtagas sa impormasyon sa panahon sa pag-atake sa Meltdown malampuson nga gipakita sa mga sistema nga adunay Intel Core i7-6700 ug i7-7700 nga CPU sa usa ka palibot nga adunay Ubuntu 22.04 ug ang Linux kernel 5.15. Sa usa ka sistema nga adunay Intel i9-10980XE CPU, ang pag-atake kay partially lang gihimo.

Ang pagkahuyang sa Meltdown gibase sa kamatuoran nga sa panahon sa espekulatibo nga pagpatuman sa mga instruksyon, ang processor maka-access sa usa ka pribado nga lugar sa datos ug dayon isalikway ang resulta tungod kay ang gitakda nga mga pribilehiyo nagdili sa maong pag-access gikan sa proseso sa user. Sa programa, ang speculatively executed block gibulag gikan sa main code sa usa ka conditional branch, nga sa tinuod nga mga kondisyon kanunay nga nagdilaab, apan tungod sa kamatuoran nga ang conditional nga pahayag naggamit sa usa ka kalkulado nga bili nga wala mahibal-an sa processor sa panahon sa preemptive execution sa ang kodigo, ang tanan nga mga kapilian sa sanga gihimo nga espekulatibo.

Sa klasiko nga bersyon sa Meltdown, tungod kay ang parehas nga cache gigamit alang sa espekulatibo nga gipatuman nga mga operasyon sama sa naandan nga gipatuman nga mga panudlo, posible sa panahon sa espekulatibo nga pagpatuman aron magbutang mga marker sa cache nga nagpakita sa mga sulud sa indibidwal nga mga piraso sa usa ka sirado nga lugar sa panumduman, ug dayon determinado sa kasagarang gipatuman nga code ang ilang kahulogan pinaagi sa pagtuki sa oras sa pag-access sa cached ug uncached data. Ang bag-ong variant naggamit sa usa ka pagbag-o sa rehistro sa EFLAGS isip usa ka leak marker. Sa demonstrasyon sa tago nga channel, usa ka proseso ang nag-modulate sa datos nga gipasa aron makahimo og mga kondisyon alang sa pag-usab sa mga sulod sa EFLAGS nga rehistro, ug laing proseso ang nag-analisar sa pagbag-o sa oras sa pagpatuman sa pagtudlo sa JCC aron sa paghimo pag-usab sa datos nga gipasa sa unang proseso.

Source: opennet.ru

Idugang sa usa ka comment