Bag-ong pag-atake sa mga istruktura sa microarchitectural sa mga processor sa Intel ug AMD

Usa ka grupo sa mga tigdukiduki gikan sa Unibersidad sa Virginia ug sa Unibersidad sa California nagpresentar sa usa ka bag-ong matang sa pag-atake sa mga istruktura sa microarchitectural sa mga processor sa Intel ug AMD, nga giila sa panahon sa reverse engineering sa dili dokumentado nga mga kapabilidad sa CPU. Ang gisugyot nga paagi sa pag-atake naglakip sa paggamit sa usa ka intermediate micro-op cache sa mga processor, nga magamit sa pagkuha sa impormasyon nga natipon sa panahon sa espekulatibo pagpatuman sa mga instruksyon.

Alang sa mga katuyoan sa pag-optimize, ang processor nagsugod sa pagpatuman sa pipila ka mga instruksyon sa speculative mode, nga wala maghulat sa mga naunang kalkulasyon nga makompleto, ug kung kini matino nga ang panagna dili makatarunganon, kini ibalik ang operasyon ngadto sa orihinal nga kahimtang niini, apan ang datos nga giproseso sa panahon ang espekulatibo nga pagpatay gideposito sa usa ka cache, ang mga sulod niini mahimong matino.

Namatikdan nga ang bag-ong pamaagi labi ka makalabaw sa pag-atake sa Spectre v1, naghimo sa pag-atake nga lisud mahibal-an ug wala gibabagan sa mga naglungtad nga mga pamaagi sa pagpanalipod batok sa mga pag-atake sa kilid nga channel nga gidisenyo aron babagan ang mga kahuyangan tungod sa espekulatibo nga pagpatuman sa mga panudlo (pananglitan, ang paggamit sa LFENCE instruksiyon bloke leaks sa katapusan nga ang-ang sa speculative pagpatay, apan dili pagpanalipod batok sa leakage pinaagi sa microarchitectural istruktura).

Ang pamaagi makaapekto sa Intel ug AMD processor nga mga modelo nga gipagawas sukad 2011, lakip ang Intel Skylake ug AMD Zen series. Ang mga modernong CPU nagbungkag sa komplikadong mga instruksiyon sa processor ngadto sa mas simple nga RISC-like micro-operations, nga gi-cache sa usa ka bulag nga cache. Kini nga cache lahi sa sukaranan gikan sa mas taas nga lebel nga mga cache, dili direkta nga ma-access ug naglihok ingon usa ka stream buffer alang sa dali nga pag-access sa mga resulta sa pag-decode sa mga panudlo sa CISC ngadto sa RISC microinstructions. Bisan pa, ang mga tigdukiduki nakakaplag usa ka paagi sa paghimo og mga kondisyon nga motumaw kung ang mga panagsumpaki sa pag-access sa cache ug gitugotan ang usa nga hukman ang sulud sa cache sa micro-operasyon pinaagi sa pag-analisar sa mga kalainan sa oras sa pagpatuman sa pipila nga mga aksyon.

Bag-ong pag-atake sa mga istruktura sa microarchitectural sa mga processor sa Intel ug AMD

Ang micro-operation cache sa Intel processors gibahin nga may kalabutan sa CPU threads (Hyper-Threading), samtang ang AMD Zen processors naggamit og shared cache, nga nagmugna og mga kondisyon alang sa data leakage dili lamang sulod sa usa ka execution thread, kondili usab tali sa lain-laing mga thread sa SMT (posibleng data leakage tali sa code nga nagdagan sa lain-laing lohikal nga CPU cores).

Gisugyot sa mga tigdukiduki ang usa ka sukaranan nga pamaagi alang sa pag-ila sa mga pagbag-o sa micro-operation cache ug daghang mga senaryo sa pag-atake nga nagtugot sa paghimo sa mga tinago nga mga channel sa transmission sa datos ug paggamit sa huyang nga code aron ma-leak ang kompidensyal nga datos, pareho sa sulod sa usa ka proseso (pananglitan, aron ma-leak ang mga datos sa proseso kung ipatuman. code sa ikatulo nga partido sa mga makina nga adunay JIT ug sa mga virtual nga makina), ug taliwala sa kernel ug mga proseso sa wanang sa tiggamit.

Kung nag-organisar sa usa ka variant sa pag-atake sa Spectre gamit ang micro-operation cache, ang mga tigdukiduki nakahimo sa pagkab-ot sa performance sa 965.59 Kbps nga adunay error rate nga 0.22% ug 785.56 Kbps sa dihang naggamit sa error correction, sa kaso sa pag-organisar sa usa ka leak sulod sa samang address. luna ug lebel sa pribilehiyo. Uban sa usa ka leak nga naglangkob sa lain-laing mga lebel sa pribilehiyo (tali sa kernel ug userspace), ang performance mao ang 85.2 Kbps uban sa error correction gidugang ug 110.96 Kbps uban sa usa ka error rate sa 4%. Kung giatake ang mga processor sa AMD Zen, nga nagmugna usa ka pagtulo tali sa lainlaing mga lohikal nga mga core sa CPU, ang pasundayag mao ang 250 Kbps nga adunay rate sa sayup nga 5.59% ug 168.58 Kbps nga adunay pagtul-id sa sayup. Kung itandi sa klasiko nga pamaagi sa Spectre v1, ang bag-ong pag-atake 2.6 ka beses nga mas paspas.

Gilauman nga ang pagpanalipod batok sa usa ka pag-atake sa micro-op cache magkinahanglan mga pagbag-o nga makapakunhod sa pasundayag labaw pa sa kung imong gipagana ang proteksyon sa pag-atake sa Specter. Ingon usa ka kamalaumon nga pagkompromiso, gisugyot nga babagan ang ingon nga mga pag-atake dili pinaagi sa pag-disable sa caching, apan sa lebel sa pag-monitor sa mga anomaliya ug pag-ila sa mga estado sa cache nga kasagaran sa mga pag-atake.

Sama sa mga pag-atake sa Spectre, ang pag-organisar sa usa ka pagtulo gikan sa kernel o uban pang mga proseso nanginahanglan sa pagpatuman sa usa ka piho nga pagkasunod-sunod sa mga mando (gadget) sa kilid sa mga proseso sa biktima, nga nagdala sa espekulatibo nga pagpatuman sa mga panudlo. Mga 100 ka susama nga gadgets ang nakit-an sa Linux kernel, nga tangtangon, apan ang mga workaround alang sa ilang henerasyon matag karon ug unya makita, pananglitan, nga may kalabutan sa pagpadagan sa espesyal nga gidisenyo nga mga programa sa BPF sa kernel.

Source: opennet.ru

Idugang sa usa ka comment