Nakakita sila ng kahinaan sa mga processor ng Intel na humahantong sa pagtagas ng data

kahinaan

Kung pinagsasamantalahan, ang mga kapintasan na ito ay maaaring magbigay-daan sa mga umaatake na makakuha ng hindi awtorisadong pag-access sa sensitibong impormasyon o sa pangkalahatan ay magdulot ng mga problema

Isang pangkat ng Natukoy ng mga mananaliksik mula sa mga unibersidad sa Tsina at Estados Unidos ang isang bagong kahinaan sa mga processor Intel na humahantong sa pagtagas ng impormasyon sa resulta ng mga haka-haka na operasyon sa pamamagitan ng mga third-party na channel, na maaaring magamit, halimbawa, upang ayusin ang isang nakatagong channel ng komunikasyon sa pagitan ng mga proseso o makakita ng mga pagtagas sa panahon ng pag-atake ng Meltdown.

Ang kakanyahan ng kahinaan ay isang pagbabago sa rehistro ng processor ng EFLAGS, na naganap bilang resulta ng haka-haka na pagpapatupad ng mga tagubilin, ay nakakaapekto sa kasunod na oras ng pagpapatupad ng mga tagubilin ng JCC (tumalon kapag natugunan ang mga tinukoy na kundisyon).

Ang mga haka-haka na operasyon ay hindi nakumpleto at ang resulta ay itinapon, ngunit ang itinapon na pagbabago sa EFLAGS ay maaaring matukoy sa pamamagitan ng pagsusuri sa oras ng pagpapatupad ng mga tagubilin ng JCC. Ispekulatibo na isinagawa ang mga pagpapatakbo ng paghahambing na pre-jump, kung matagumpay ang paghahambing, magreresulta sa isang maliit na pagkaantala na maaaring masukat at magamit bilang isang tampok sa pagtutugma ng nilalaman.

Ang transient execution attack ay isang uri ng pag-atake na nagsasamantala sa kahinaan ng mga teknolohiya sa pag-optimize ng CPU. Mabilis na lumitaw ang mga bagong pag-atake. Ang side channel ay isang mahalagang bahagi ng mga lumilipas na pag-atake sa pagpapatupad upang i-exfiltrate ang data.

Sa gawaing ito, natuklasan namin ang isang kahinaan na nagpabago sa rehistro ng EFLAGS sa pansamantalang pagpapatupad na maaaring magkaroon ng side effect sa pagtuturo ng Jcc (Jump Condition Code) sa mga Intel CPU. Batay sa aming natuklasan, nagmumungkahi kami ng bagong pag-atake sa side channel na sinasamantala ang pansamantalang timing ng pagpapatupad at mga tagubilin ng Jcc para maghatid ng data.

Ang pag-atakeng ito ay nag-e-encrypt ng lihim na data sa pamamagitan ng pagpapalit ng registry na nagiging sanhi ng bahagyang mas mabagal na oras ng pagpapatupad at na maaaring masukat ng attacker upang mag-decode ng data. Ang pag-atake na ito ay hindi nakadepende sa cache system.

Hindi tulad ng ibang pag-atake katulad sa pamamagitan ng mga third-party na channel, hindi sinusuri ng bagong paraan ang pagbabago sa oras ng pag-access sa naka-cache na data at hindi naka-cache at hindi nangangailangan ng hakbang ng pag-reset ng EFLAGS record sa paunang estado, na nagpapahirap sa pagtukoy at pagharang sa pag-atake.

para sa demo, nagpatupad ang mga mananaliksik ng variant ng Meltdown attack, gamit dito ang isang bagong paraan upang makakuha ng impormasyon tungkol sa resulta ng isang haka-haka na operasyon. Ang pagpapatakbo ng paraan upang ayusin ang pagtagas ng impormasyon sa panahon ng pag-atake ng Meltdown ay matagumpay na naipakita sa mga system na may Intel Core i7-6700 at i7-7700 na mga CPU sa isang kapaligiran na may Ubuntu 22.04 kernel at Linux 5.15. Sa isang system na may Intel i9-10980XE CPU, ang pag-atake ay bahagyang matagumpay lamang.

Ang kahinaan ng Meltdown ay batay sa katotohanan na sa panahon ng haka-haka na pagpapatupad ng mga tagubilin, maaaring ma-access ng processor ang isang pribadong lugar ng data at pagkatapos ay itapon ang resulta, dahil ipinagbabawal ng mga nakatakdang pribilehiyo ang naturang pag-access mula sa proseso ng user.

Sa isang programa, ang isang speculatively executed block ay pinaghihiwalay mula sa pangunahing code sa pamamagitan ng isang conditional jump, na sa totoong mga kondisyon ay palaging na-trigger, ngunit dahil sa ang katunayan na ang conditional statement ay gumagamit ng isang nakalkula na halaga na hindi alam ng processor sa panahon ng preemptive code . pagpapatupad, ang lahat ng mga opsyon sa sangay ay isinasagawa sa haka-haka.

Sa classic na Meltdown, dahil ang parehong cache ay ginagamit para sa speculatively executed operations tulad ng para sa normal na executed instructions, posible sa panahon ng speculative execution na magtakda ng mga marker sa cache na sumasalamin sa mga content ng indibidwal na bits sa closed memory area, at pagkatapos ay sa normal na executed. code upang matukoy ang kahulugan nito sa pamamagitan ng pagsusuri ng oras ng pag-access sa naka-cache at hindi naka-cache na data.

Ginagamit ng bagong variant ang pagbabago sa EFLAGS registry bilang isang marker ng isang pagtagas. Sa demo ng Covert Channel, isang proseso ang nagmodulate sa data na ipinapadala upang baguhin ang mga nilalaman ng EFLAGS record, at isa pang proseso ang nag-parse ng pagbabago sa JCC runtime upang muling likhain ang data na ipinadala ng unang proseso.

Panghuli, kung interesado kang malaman ang tungkol dito, maaari kang kumunsulta sa mga detalye sa sumusunod na link.


Iwanan ang iyong puna

Ang iyong email address ay hindi nai-publish. Mga kinakailangang patlang ay minarkahan ng *

*

*

  1. Responsable para sa data: AB Internet Networks 2008 SL
  2. Layunin ng data: Kontrolin ang SPAM, pamamahala ng komento.
  3. Legitimation: Ang iyong pahintulot
  4. Komunikasyon ng data: Ang data ay hindi maiparating sa mga third party maliban sa ligal na obligasyon.
  5. Imbakan ng data: Ang database na naka-host ng Occentus Networks (EU)
  6. Mga Karapatan: Sa anumang oras maaari mong limitahan, mabawi at tanggalin ang iyong impormasyon.