Kërkuesit e Qendrës Helmholtz për Sigurinë e Informacionit (CISPA) publikuan rezultatet e një studimi mbi sigurinë e procesorëve të bazuar në arkitekturën RISC-V dhe zbuluan të dhëna mbi një vulnerabilitet me emrin kodues GhostWrite. Vulnerabiliteti prek procesorët RISC-V XuanTie C910, të prodhuar nga kompania kineze T-Head (nënshtrati Alibaba) dhe që zhvillohen në formën e projekteve të hapura. Ky vulnerabilitet i lejon një sulmuesi me qasje të kufizuar dhe të papranueshme në sistem të arrijë të lexojë dhe shkruajë në çdo hapësirë fiziologjike të memories, si dhe të aksesojë menaxhimin e pajisjeve periferike, si kartat rrjetë që përdorin MMIO (Memory-Mapped Input/Output).
Vulnerabiliteti shkaktohet nga mangësitë në arkitekturën e procesorit, të lidhura me izolimin e instruktimeve të shtuara nga prodhuesi, të cilat zgjasin arkitekturën e setit të komandave RISC-V dhe lejojnë qasje të drejtpërdrejtë në DRAM, duke shmangur mekanizmat e memories virtuale. Punimi i disa instruktimeve të zgjeruara drejtpërdrejt me memorien fizike në vend të memories virtuale krijon mundësinë për të anashkaluar izolimin e memories midis proceseve.
Teknika e përgatitur për kryerjen e sulmit është 100% e riprodhueshme dhe kërkon të ekzekutojë kodin e saj në vetëm disa mikrosekonda. Metodat programore të izolimit, siç janë kontejnerët dhe mjediset sandbox, nuk pengojnë shfrytëzimin e dobësisë. Për të bllokuar dobësinë ndihmon vetëm çaktivizimi i plotë i mbështetjes për zgjerimet vektoriale, i cili shkakton një rënie prej 33% në performancë në testet rvv-bench (në shënimin e raportit është e specifikuar 77%, ndërsa në faqen përmbledhëse është 33%, duke përmendur në detaje një rënie të performancës memcpy prej 33% dhe memset prej 8%), si dhe redukton në mënyrë të konsiderueshme setin e instruksioneve të procesorit të disponueshëm për aplikacionet deri në disa herë.
CPU XuanTie C910 janë disa nga çipat më me performancë RISC-V që ekzistojnë në treg dhe janë tashmë aktivisht të përdorur në serverë sistemet e cloud dhe laptopët. Për shembull, problemi shfaqet në serverat Scaleway Elastic Metal RV1, klasterët Lichee Cluster 4A, laptopin Lichee Book 4A, konsolën e lojërave Lichee Console 4A, kompjuterin portativ Lichee Pocket 4A, kompjuterët me një pllakë Sipeed Lichee Pi 4A, Milk-V Meles dhe BeagleV-Ahead.
Si një shembull, studiuesit kanë përgatitur një exploiti që lejon një përdorues jo të privilegjuar të fitojë të drejtat root në Linux. Exploiti ndryshon përmbajtjen e tabelës së faqeve në memorie, e cila përdoret për të përkthyer adresat virtuale në adresat fizikë, për të marrë adresat virtuale të lidhura me çdo adresë fizike. Po ashtu, është përgatitur një shembull exploiti për të lexuar përmbajtjen e memories së bërthamës dhe proceseve të tjera, çka lejon nxjerrjen e çelësave të enkriptimit dhe fjalëkalimeve të ruajtura në memorie.
Për më tepër, studiuesit kanë identifikuar edhe dy vulnerabilitete arkitekturore më pak të rrezikshme - një përfshin procesorët T-Head XuanTie C906, ndërsa tjetra T-Head XuanTie C908. Të dy vulnerabilitetet kufizohen në thirrjen e një shërbimi të dështuar për shkak të ndalimit të funksionimit të CPU-së. Vulnerabilitetet mund të përbëjnë rrezik për platformat e cloud-it të ndërtuara mbi çipat T-Head XuanTie, pasi nëse ka qasje në ekzekutimin e kodit në mjedisin e cloud-it, ka mundësi për të ndaluar funksionimin e përdoruesve të tjerë që shërbehen në të njëjtën serveri.
Problemet u identifikuan me ndihmën e kornizës RISCVuzz, e krijuar për testimin fuzzing të CPU. Korniza identifikon ndryshimet në zbatimin e të njëjtave instruksione të zgjeruara në CPU të ndryshme, sipas supozimit se për shkak të mungesës së një regjistri të përbashkët për zgjerimet e setit të komandave RISC-V, instruksionet e koduara njësoj në çipa të prodhuesve të ndryshëm mund të çojnë në kryerjen e veprimeve të ndryshme. Kontrolli përfshinte krahasimin e sjelljes gjatë përpunimit të instruksioneve të procesorëve në CPU të ndryshme RISC-V dhe analizimin e mundësive të dobësive në situatat ku u vërejt një shkurorëzim i sjelljes.
Burimi: opennet.ru
