Още една сериозна хардуерна уязвимост в процесорите на Intel
Открит е нов метод за хакване посредством непряк канал, който визира няколко генерации процесори на Intel. Тази техника за атакуване дава опция за добиване на всякаква сензитивна информация посредством регистъра EFLAGS и разбора на времето на осъществяване на някои указания. Всъщност тя е производна на уязвимостта Meltdown, която бе открита през 2018 година и визира голям брой x86-базирани микропроцесори, като по-късно бяха открити и редица други уязвимости от този вид.
Според откриватели от Университета Цинхуа и Университета на Мериленд новият способ за хакване употребява накърнимост във времевото осъществяване, която разрешава извличането на секретни данни от паметта на потребителското пространство посредством времеви разбор.
Изследователите допълват, че казусът се дължи на минус при смяната на регистъра EFLAGS при преходно осъществяване, което въздейства на времето за осъществяване на инструкциите JCC (Jump if Condition Is Met). Регистърът EFLAGS е указател на процесора, който съдържа другите знамена, свързани със положението на процесора, а инструкцията JCC е директива на процесора, която реализира конвенционален преход въз основа на наличието на регистъра EFLAGS. Атаката се прави на два стадия: първият е да се задейства времево осъществяване и шифроване на секретните данни посредством регистъра EFLAGS, а вторият – измерване на времето за осъществяване на инструкцията JCC, с цел да могат да се декодират данните.
Проведените опити демонстрираха, че офанзивата от този вид е извънредно рискова – извличат се 100% от данните при компютри, основани на Intel Core i7-6700 и Intel Core i7-7700. Малко по-малък е процентът на сполучливо реализиране на тази офанзива при процесора Intel Core i9-10980XE.
Тестовете са направени на компютър под ръководството на Linux дистрибуцията Ubuntu 22.04 jammy с ядрото Linux 5.15.0. Не са създавани експлойти за Windows, само че това е хардуерна накърнимост, която не зависи от операционната система. Експертите акцентират, че реализирането на тази офанзива е по-трудно спрямо офанзивата посредством непряк канал, в която се употребява положението на кеша, тъй като при най-новите процесори на Intel се постанова зацикляне от по към 1000 пъти. Но тя е тревожно ефикасна със своите 100% добиване на сензитивна информация – данните за онлайн банкиране, потребителски имена, пароли и така нататък
Интересно е, че експертите не знаят по какъв начин протича самият развой на тази офанзива – те просто са забелязали държанието на процесите на Intel и са основали съответните експлойти. Предполага се, че в модула за осъществяване на инструкциите в процесорите на Intel има специфичен спомагателен буфер, който има потребност от в допълнение време за връщане в начално положение, в случай че се постанова ненадейно преустановяване осъществяването на потока от указания за реализирането на конвенционален преход.
По-долу е даден опростеният логаритъм на експлойта. Естествено, някои неща не са указани напълно тъкмо, а други се премълчават, само че концепцията е ясна.
За решение на казуса се оферират прекомерно ексцентрични решения като да вземем за пример смяна в реализацията на инструкцията JCC, с цел да не може да се употребява спортното осъществяване на инструкцията, без значение от изискванията. Другият препоръчан способ е презаписването на EFLAGS, с цел да се избегне неговото времево въздействие на инструкцията JCC, само че това сигурно ще забави процесорите.




