Google компаниясынын коопсуздук боюнча изилдөөчүсү Тавис Орманди Intel процессорлорунун Reptar коддуу жаңы кемчилигин (CVE-2023-23583) аныктады, ал негизинен түрдүү колдонуучулардын виртуалдык машиналарын иштеткен булут тутумдарына коркунуч туудурат. Алсыздык артыкчылыксыз конок системаларында белгилүү бир операциялар аткарылганда системанын илип кетишине же бузулушуна мүмкүндүк берет. Системаларыңызды сыноо үчүн, алсыздыктын көрүнүшү үчүн шарттарды түзгөн утилита жарык көрдү.
Теориялык жактан алсыздык артыкчылыктарды үчүнчүдөн нөлдүк коргоо шакекчесине (CPL0) көтөрүү жана обочолонгон чөйрөлөрдөн качуу үчүн колдонулушу мүмкүн, бирок микроархитектуралык деңгээлде мүчүлүштүктөрдү оңдоонун кыйынчылыктарынан улам бул сценарий иш жүзүндө азырынча тастыктала элек. Intel компаниясынын ички кароосу ошондой эле айрым шарттарда артыкчылыктарды күчөтүү үчүн аялуулукту пайдалануу мүмкүнчүлүгүн көрсөттү.
Изилдөөчүнүн айтымында, алсыздык Intel Ice Lake, Rocket Lake, Tiger Lake, Raptor Lake, Alder Lake жана Sapphire Rapids процессордук үй-бүлөлөрүндө бар. Intel отчетунда көйгөй Intel Core процессорлорунун 10-муундагы (Муз көлү) жана Xeon масштабдалуучу процессорлорунун үчүнчү муундагы, ошондой эле 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 and Denverton). Каралып жаткан аялуу кечээки микрокоддун 20231114 жаңыртылышында оңдолду.
Алсыздык белгилүү бир микроархитектуралык шарттарда “REP MOVSB” нускамасынын аткарылышы ашыкча “REX” префикси менен коддолгондугу менен шартталган, бул аныкталбаган жүрүм-турумга алып келет. Көйгөй ашыкча префикстерди тестирлөө учурунда табылган, алар теорияда этибарга алынбашы керек, бирок иш жүзүндө шартсыз бутактарга көңүл бурбоо жана xsave жана чакыруу инструкцияларында көрсөткүчтү сактоону бузуу сыяктуу кызыктай эффекттерге алып келди. Кийинки талдоо көрсөткөндөй, "REP MOVSB" инструкциясына ашыкча префикс кошуу инструкцияларга буйрутма берүү үчүн колдонулган ROB (ReOrder Buffer) буферинин мазмунунун бузулушуна алып келет.
Ката "MOVSB" инструкциясынын өлчөмүн туура эмес эсептөөдөн улам келип чыгат, бул ашыкча префикс менен MOVSBден кийин ROB буферине жазылган инструкциялардын дарегинин бузулушуна жана офсеттин бузулушуна алып келет деп эсептелет. көрсөтмө көрсөткүчүнүн. Мындай десинхронизациялоо интегралдык абалды кийинки калыбына келтирүү менен аралык эсептөөлөрдү бузуу менен чектелиши мүмкүн. Бирок бир эле учурда бир нече өзөктөрдү же SMT жиптерин бузуп алсаңыз, микроархитектуралык абалды кыйроого алып келиши мүмкүн.
Source: opennet.ru
