Natukoy ang bagong variant ng pag-atake ng Zombieload sa mga processor ng Intel

Mga mananaliksik mula sa Technical University of Graz (Austria) walang takip impormasyon tungkol sa isang bagong paraan ng pag-atake sa pamamagitan ng mga third-party na channel Zombie Load 2.0 (CVE-2019-11135), na nagpapahintulot sa iyo na kumuha ng kumpidensyal na impormasyon mula sa iba pang mga proseso, ang operating system, mga virtual machine at mga protektadong enclave (TEE, Trusted Execution Environment). Ang problema ay nakakaapekto lamang sa mga processor ng Intel. Mga bahagi upang harangan ang problema iminungkahi sa kahapon pag-update ng microcode.

Ang problema ay kabilang sa klase ng MDS (Microarchitectural Data Sampling) at isang modernized na bersyon ginawang publiko sa Mayo pag-atake ng ZombieLoad. Ang ZombieLoad 2.0, tulad ng iba pang mga pag-atake sa MDS, ay umaasa sa aplikasyon ng mga side-channel analysis na diskarte sa data sa mga microarchitectural na istruktura (halimbawa, Line Fill Buffer at Store Buffer), na pansamantalang nag-iimbak ng data na ginamit sa proseso. gumaganap ng mga pagpapatakbo ng Load at Store) .

Bagong variant ng pag-atake ng Zombieload ay batay sa pagtagas na nangyayari sa panahon ng pagpapatakbo ng mekanismo para sa asynchronous na pagkagambala ng mga operasyon (TAA, TSX Asynchronous Abort), na ipinatupad sa extension ng TSX (Transactional Synchronization Extension), na nagbibigay ng mga tool para sa pagtatrabaho sa transactional memory, na nagbibigay-daan sa pagtaas ng pagganap ng mga multi-threaded na application sa pamamagitan ng dynamic na pag-aalis ng mga hindi kinakailangang operasyon ng pag-synchronize (mga sinusuportahang atomic na transaksyon na maaaring tanggapin o i-abort). Kung maabala, ang mga operasyong isinagawa sa rehiyon ng transactional memory ay ibabalik.

Ang pag-abort ng transaksyon ay nangyayari nang asynchronously, at sa panahong ito maaaring ma-access ng ibang mga thread ang cache, na ginagamit din sa itinapon na rehiyon ng memorya ng transaksyon. Sa panahon mula sa simula hanggang sa aktwal na pagkumpleto ng isang asynchronous na transaksyon ay naabort, posible na ang mga sitwasyon ay maaaring lumitaw kung saan ang processor, sa panahon ng speculative execution ng isang operasyon, ay maaaring magbasa ng data mula sa panloob na microarchitectural buffer at ilipat ito sa speculative operation. Ang salungatan ay makikita at ang haka-haka na operasyon ay itatapon, ngunit ang data ay mananatili sa cache at maaaring makuha gamit ang mga diskarte sa pagbawi ng cache sa side-channel.

Ang pag-atake ay bumababa sa pagbubukas ng mga transaksyon sa TSX at paglikha ng mga kundisyon para sa kanilang asynchronous na pagkagambala, kung saan lumitaw ang mga kundisyon para sa pagtulo ng mga nilalaman ng mga panloob na buffer na haka-haka na puno ng data mula sa mga operasyon ng memory read na isinagawa sa parehong core ng CPU. Ang pagtagas ay limitado sa kasalukuyang pisikal na CPU core (kung saan tumatakbo ang code ng attacker), ngunit dahil ang mga microarchitectural buffer ay ibinabahagi sa pagitan ng iba't ibang mga thread sa Hyper-Threading mode, posibleng mag-leak ng mga pagpapatakbo ng memory na ginagawa sa iba pang mga CPU thread.

Atake napapailalim sa ilang mga modelo ng ikawalo, ikasiyam at ikasampung henerasyon ng mga processor ng Intel Core, pati na rin ang Intel Pentium Gold, Intel Celeron 5000, Intel Xeon E, Intel Xeon W at ang pangalawang henerasyong Intel Xeon Scalable. Ang mga bagong processor ng Intel batay sa microarchitecture ng Cascade Lake na ipinakilala noong Abril, na sa una ay hindi madaling kapitan sa mga pag-atake ng RIDL at Fallout, ay madaling atakehin. Bilang karagdagan sa Zombieload 2.0, natukoy din ng mga mananaliksik ang posibilidad ng pag-bypass sa mga naunang iminungkahing pamamaraan ng proteksyon laban sa mga pag-atake ng MDS, batay sa paggamit ng pagtuturo ng VERW upang i-clear ang mga nilalaman ng microarchitectural buffer kapag bumabalik mula sa kernel patungo sa espasyo ng gumagamit o kapag naglilipat ng kontrol sa ang sistema ng panauhin.

Ang ulat ng Intel ay nagsasaad na sa mga system na may heterogenous load, ang kakayahang magsagawa ng pag-atake ay mahirap, dahil ang pagtagas mula sa mga istrukturang microarchitectural ay sumasaklaw sa lahat ng aktibidad sa system at hindi maimpluwensyahan ng umaatake ang pinagmulan ng nakuhang data, i.e. maaari lamang makaipon ng impormasyong lumalabas bilang resulta ng isang pagtagas at subukang tukuyin ang kapaki-pakinabang na impormasyon sa data na ito, nang walang kakayahang sinadyang maharang ang data na nauugnay sa mga partikular na address ng memorya. Gayunpaman, inilathala ng mga mananaliksik pagsamantalahan ang prototype, tumatakbo sa Linux at Windows, at nagpakita ng kakayahang gumamit ng pag-atake upang matukoy ang hash ng password ng root user.
Marahil nagsasagawa ng pag-atake mula sa isang guest system upang makaipon ng data na lumalabas sa mga operasyon ng iba pang mga guest system, ang host environment, ang hypervisor at Intel SGX enclaves.

Mga pag-aayos upang harangan ang kahinaan kasama sa Linux kernel codebase at kasama sa mga release 5.3.11, 4.19.84, 4.14.154, 4.9.201 at 4.4.201. Ang mga update sa kernel at microcode ay inilabas na rin para sa mga pangunahing distribusyon (Debian, SUSE/openSUSE, Ubuntu, RHEL, Fedora, FreeBSD). Ang problema ay natukoy noong Abril at isang pag-aayos ay pinag-ugnay sa pagitan ng Intel at ng mga developer ng operating system.

Ang pinakasimpleng paraan ng pagharang sa Zombieload 2.0 ay ang pag-disable ng TSX support sa CPU. Kasama sa iminungkahing pag-aayos para sa kernel ng Linux ang ilang mga opsyon sa proteksyon. Ang unang opsyon ay nag-aalok ng parameter na "tsx=on/off/auto" para makontrol kung pinagana ang extension ng TSX sa CPU (hindi pinapagana ng auto value ang TSX para lang sa mga vulnerable na CPU). Ang pangalawang opsyon sa proteksyon ay pinagana ng parameter na "tsx_async_abort=off/full/full,nosmt" at nakabatay sa pag-clear ng mga microarchitectural buffer sa panahon ng paglipat ng konteksto (ang nosmt flag ay hindi rin pinapagana ang SMT/Hyper-Threads). Upang suriin kung ang isang system ay madaling kapitan ng mga kahinaan, ibinibigay ng sysfs ang parameter na "/sys/devices/system/cpu/vulnerabilities/tsx_async_abort".

Din sa pag-update microcode inalis isa pa kahinaan (CVE-2018-12207) sa mga processor ng Intel, na naka-block din sa pinakabago pag-update Mga kernel ng Linux. kahinaan ay nagbibigay-daan sa isang unprivileged attacker na magpasimula ng pagtanggi sa serbisyo, na nagiging sanhi ng system na mag-hang sa "Machine Check Error" na estado.
Kasama ang pag-atake maaaring isagawa mula sa sistema ng panauhin.

Pinagmulan: opennet.ru

Magdagdag ng komento