Microcode Decryptor, alat koji vam omogućuje dekodiranje mikrokoda Intel procesora

Skupina Objavili su sigurnosni istraživači iz tima uCode izdanje izvornog koda projekta dekriptor mikrokoda i to omogućuje da se radi točno ono što naziv sugerira: to je alat koji se sastoji od tri Python skripte i dostupan je na GitHubu.

Dekriptor mikrokoda omogućuje dekodiranje mikrokoda nekih Intelovih procesora kao što su Atom, Pentium i Celeron temeljeni na mikroarhitekturama Goldmont i Goldmont Plus, što otvara vrata različitim scenarijima, poput razumijevanja kako je Intel implementirao određene značajke procesora ili implementirao različite značajke i sigurnosne popravke.

Razvijena je tehnika Red Unlock od strane istih istraživača 2020 može se koristiti za izdvajanje šifriranog mikrokoda. Predložena mogućnost dešifriranja mikrokoda omogućuje istraživanje unutarnje strukture mikrokoda i metoda za implementaciju x86 strojnih instrukcija. Osim toga, istraživači su vratili format ažuriranja firmvera, algoritam šifriranja i ključ koji se koristi za zaštitu mikrokoda (RC4).

Da biste odredili koji ključ šifriranja koristiti, ranjivost u Intel TXE korištena je za omogućavanje nedokumentiranog načina otklanjanja pogrešaka, kodnog naziva "Red Unlock" od strane istraživača. U debug modu, uspjeli smo učitati dump s radnim mikrokodom izravno iz CPU-a i izdvojiti algoritam i ključeve iz njega.

Dekriptor mikrokoda omogućuje samo dešifriranje mikrokoda, ali ne dopušta njegovu promjenu, budući da se integritet mikrokoda dodatno provjerava digitalnim potpisom temeljenim na RSA algoritmu.

Što se tiče načina na koji je razvoj Microcode Decryptora bio moguć, spominju da se to dogodilo prije tri godine kada su Goryachy i Ermolov pronašli kritičnu ranjivost, indeksiranu kao Intel SA-00086, koja im je omogućila da izvrše kod po svom izboru unutar čipa neovisnog kernel.koji je uključivao podsustav poznat kao Intel Management Engine.

Intel je popravio grešku i izdao zakrpu, ali budući da se čipovi uvijek mogu vratiti na prethodnu verziju firmvera i zatim iskoristiti, ne postoji način da se učinkovito ukloni ranjivost.

Nakon toga (prije pet mjeseci), trio znanstvenika uspio je iskoristiti ranjivost za pristup servisnom načinu rada ugrađenom u Intelove čipove, u znaku filma The Matrix, istraživači su nazvali svoj alat za pristup ovom alatu za otklanjanje pogrešaka prethodno nedokumentirani Chip Red Pilula, jer omogućuje istraživačima da iskuse unutarnji rad čipa koji je obično nedostupan.

Intelov glasnogovornik rekao je sljedeće:

"Ne bi trebalo postojati sigurnosni rizik" kao rezultat dostupnosti alata. Zapravo, tvrtka je rekla da bi dopuštanje većem broju ljudi da pregledaju Intelov mikrokod moglo pomoći proizvođaču čipova da identificira više ranjivosti u budućnosti. Za svakoga tko je u tome uspješan, to znači da potencijalno može zaraditi nešto novca kroz Intelov bug bounty program.

“Sposobnost istraživača da analiziraju mikrokod mogla bi omogućiti otkrivanje novih ranjivosti. Budući da je ovaj mikrokod razotkriven, Intel poziva istraživače da sudjeluju u programu nagrađivanja bugova mikrokoda u slučaju da se otkriju bilo kakvi problemi,” rekli su nam.

Sa svoje strane, programeri ovog alata komentirali su to

"Prilika za čitanje CPU mikrokoda mogla bi pomoći u razumijevanju kako je Intel implementirao tehnologije poput Intel Trusted Execution Technology (TXT) ili ublažio ozbiljne ranjivosti kao što su Meltdown i Spectre."

Yermolov, jedan od drugih znanstvenika, dodao da dostupnost alata znači da je narod sada možete istražiti XuCode, 86-bitna x64 varijanta koda koja se koristi za implementaciju dijelova Intel SGX-a koji se preuzima kao ažuriranje mikrokoda. SGX je Intelova tehnologija za stvaranje sigurnih memorijskih enklava: To su zaštićena područja u koja drugi programi i korisnici, uključujući operativni sustav ili hipervizor, ne mogu ometati.

XuCode je vrlo zanimljiv: upute specifične za x86 za upravljanje SGX enklavama toliko su složene da su raščlanjene na nizove XuCode instrukcija koje izvode potrebne operacije.

Ove upute XuCode standardne su za 86-bitnu x64 arhitekturu s nekim proširenjima, a procesor ih rastavlja na uobičajene x86 mikrooperacije. Kada aplikacija koristi SGX instrukciju visoke razine, procesor može skočiti na svoj XuCode da radi.

Ove XuCode sekvence pohranjene su u mikrokodu i sada se mogu ekstrahirati s gornjim Python skriptama i analizirati standardnim x86 setovima za reverzni inženjering.

Konačno ako vas zanima više o tome Detalje o alatu možete provjeriti na sljedeći link.


Ostavite svoj komentar

Vaša email adresa neće biti objavljen. Obavezna polja su označena s *

*

*

  1. Odgovoran za podatke: AB Internet Networks 2008 SL
  2. Svrha podataka: Kontrola neželjene pošte, upravljanje komentarima.
  3. Legitimacija: Vaš pristanak
  4. Komunikacija podataka: Podaci se neće dostavljati trećim stranama, osim po zakonskoj obvezi.
  5. Pohrana podataka: Baza podataka koju hostira Occentus Networks (EU)
  6. Prava: U bilo kojem trenutku možete ograničiti, oporaviti i izbrisati svoje podatke.