Reptar խոցելիությունը ազդում է Intel պրոցեսորների վրա

Google-ի անվտանգության հետազոտող Թևիս Օրմանդին հայտնաբերել է նոր խոցելիություն (CVE-2023-23583) Intel պրոցեսորներում՝ Reptar կոդային անունով, որը հիմնականում վտանգ է ներկայացնում տարբեր օգտատերերի վիրտուալ մեքենաներով աշխատող ամպային համակարգերի համար։ Խոցելիությունը թույլ է տալիս համակարգին կախվել կամ խափանվել, երբ որոշակի գործողություններ կատարվում են ոչ արտոնյալ հյուրերի համակարգերում: Ձեր համակարգերը փորձարկելու համար հրապարակվել է օգտակար ծրագիր, որը պայմաններ է ստեղծում խոցելիության դրսևորման համար։

Տեսականորեն, խոցելիությունը կարող է օգտագործվել արտոնությունները երրորդից մինչև զրոյական պաշտպանության օղակ (CPL0) բարձրացնելու և մեկուսացված միջավայրերից փախչելու համար, սակայն այս սցենարը գործնականում դեռ չի հաստատվել՝ միկրոճարտարապետական ​​մակարդակում վրիպազերծման դժվարությունների պատճառով: Intel-ի ներքին վերանայումը ցույց տվեց նաև խոցելիության օգտագործման ներուժը որոշակի պայմաններում արտոնությունների ընդլայնման համար:

Հետազոտողի խոսքով, խոցելիությունը առկա է Intel Ice Lake, Rocket Lake, Tiger Lake, Raptor Lake, Alder Lake և Sapphire Rapids պրոցեսորների ընտանիքներում։ Intel-ի զեկույցում նշվում է, որ խնդիրն առաջանում է Intel Core պրոցեսորների 10-րդ սերնդից (Ice Lake) և Xeon Scalable պրոցեսորների երրորդ սերնդից, ինչպես նաև Xeon E/D/W պրոցեսորներում (Ice Lake, Skylake, Haswell, Broadwell): , Skylake, Sapphire Rapids, Emerald Rapids, Cascade Lake, Cooper Lake, Comet Lake, Rocket Lake) և Atom (Apollo Lake, Jasper Lake, Arizona Beach, Alder Lake, Parker Ridge, Snow Ridge, Elkhart Lake և Denverton): Խնդրո առարկա խոցելիությունը շտկվել է երեկվա միկրոկոդի 20231114 թարմացմամբ։

Խոցելիությունը պայմանավորված է նրանով, որ որոշակի միկրոճարտարապետական ​​հանգամանքներում «REP MOVSB» հրահանգի կատարումը կոդավորված է չափազանց «REX» նախածանցով, ինչը հանգեցնում է անորոշ վարքի: Խնդիրը հայտնաբերվել է ավելորդ նախածանցների փորձարկման ժամանակ, որոնք տեսականորեն պետք է անտեսվեն, բայց գործնականում հանգեցրել են տարօրինակ էֆեկտների, ինչպիսիք են անվերապահ ճյուղերի անտեսումը և ցուցիչի խնայումը xsave-ում և զանգի հրահանգները: Հետագա վերլուծությունը ցույց է տվել, որ «REP MOVSB» հրահանգին ավելորդ նախածանց ավելացնելը հանգեցնում է հրահանգների պատվիրման համար օգտագործվող ROB (ReOrder Buffer) բուֆերի բովանդակության կոռուպցիայի:

Ենթադրվում է, որ սխալը պայմանավորված է «MOVSB» հրահանգի չափի սխալ հաշվարկով, ինչը հանգեցնում է MOVSB-ից հետո ROB բուֆերում գրված հրահանգների հասցեագրման խախտման՝ ավելորդ նախածանցով և օֆսեթով։ հրահանգի ցուցիչի: Նման ապասինխրոնիզացիան կարող է սահմանափակվել միջանկյալ հաշվարկների խախտմամբ՝ ինտեգրալ վիճակի հետագա վերականգնմամբ: Բայց եթե մի քանի միջուկներ կամ SMT թելեր միաժամանակ խափանեք, կարող եք այնքան վնասել միկրոճարտարապետական ​​վիճակը, որ խափանվի:

Source: opennet.ru

Добавить комментарий