Kako posodobiti BIOS, UEFI ali Microcode iz Linuxa

Posnetek ali mikrofotografija Intel XEON E5

Ti veš kako posodobiti BIOS iz računalnika? Z ranljivostmi, kot so Spectre, Meltdown in vse njegove različice ter druge varnostne luknje, zaznane v strojni opremi, zlasti v CPE-jih, ste zagotovo že velikokrat prebrali, da jih je veliko rešiti z vedenjem, kako posodobiti BIOS ali UEFI računalnika ., ker je za mikrokodo, ki jo uporablja CPU, potrebna posodobitev ali popravek in s tem spremeniti način delovanja nadzorne enote CPU, tako da ni občutljiva na omenjene grožnje.

Poleg ranljivosti vdelano programsko opremo lahko posodobite zaradi številnih drugih razlogov, kot so okvare strojne naprave, nerazložljive stalne napake v programski opremi, posodobitve za dodajanje nekaterih funkcij itd. A kot sem rekel, smo v zadnjih mesecih ta izraz slišali že prevečkrat zaradi varnostnih težav, ki so v nekaterih primerih precej kritične in so povezane z načinom, kako sodobni mikroprocesorji obvladujejo nekaj preskokov, predpomnilnika, FPU in špekulativne izvedbe, čeprav so bili v drugih primerih zaznani v drugih delih sistema, kot so nabori čipov ali nekateri varnostni procesorji, integrirani v te platforme ...

Kaj je vdelana programska oprema?

BIOS čip matične plošče

Vsi smo povsem jasni glede tega, kaj sta strojna oprema (fizični in otipljivi del računalnika, torej elektronika) in programska oprema (tisti logični del, ki se ga ni mogoče dotakniti: programi). Toda med strojno in programsko opremo, oziroma med strojno opremo in jedrom operacijskega sistema, je nekaj drugega: vdelano programsko opremo. Vdelana programska oprema je prisotna v vseh napravah in delih računalnika, od miške, optičnega pogona do GPU in CPU, ki delujejo z mikro kodo.

Kaj pa je? No, to lahko rečete je koda, torej programska oprema in zato logična komponenta, ki pa je tokrat nespremenljiva. Deluje na nizki ravni in neposredno nadzira funkcionalnost elektronskih vezij. Ta vdelana programska oprema s pomočjo krmilnikov ali gonilnikov omogoča, da jo jedro operacijskega sistema ukaže strojni opremi za izvedbo naloge. Ta program ali kodo je proizvajalec naprave zabeležil v pomnilnik, ki je običajno flash, ali v neke vrste ROM-a, kot je EEPROM.

Toda ena od vdelanih programov, ki nas v tem članku najbolj zanima, je BIOS ali UEFI sistema, saj gre za zelo pomembno vdelano programsko opremo, ki ima različne funkcije med zagonom in delovanjem opreme. Ta koda je na primer odgovorna za aktiviranje naprave med zagonom, zaznavanje trdih diskov ali nosilcev podatkov, kjer je na voljo operacijski sistem, izvajanje nekaterih pregledov, ki posegajo v drugo vdelano programsko opremo komponent in zunanjih naprav ter nadzor jedra, ko sistem začne se začeti ...

Zakaj posodobitev vpliva na CPU?

CPU zatiči

... in to je povezano s CPU, dovolj dobro. Izkazalo se je, da imajo CPU krmilna enota, Ta krmilna enota je vezje, ki je odgovorno za nadzor nad ostalimi deli mikroprocesorja ali CPE, na primer za dekodiranje navodil in preusmeritev podatkov z operandi v ustrezne registre in nato aktiviranje neke funkcionalne enote, kot je ALU ali FPU in da izvede določeno operacijo s podatki, odvisno od vrste navodila, ki se izvaja. Ta navodila nato izvirajo iz programske ali programske kode, ki je v tem trenutku v obdelavi, saj so, kot bi morali vedeti, programi sestavljeni iz vrste zaporednih navodil.

Kot si lahko predstavljate, ta krmilna enota deluje tako, da jo je ustvaril proizvajalec ali oblikovalec. V nekaterih posebnih primerih je krmilna enota lahko ožičena, to pomeni, da je običajno precej hitra, vendar ne preveč prilagodljiva, saj se izvaja neposredno z zelo specifičnim vezjem. Po drugi strani pa obstajajo tudi programabilna, to je nekoliko bolj "odprta" vezja, ki lahko delujejo tako ali drugače v skladu z mikrokodo ali vdelano programsko opremo. Iz tega sledi, da če spremenimo vdelano programsko opremo ali mikrokodo, lahko naredimo krmilno enoto in zato lahko CPU deluje drugače ali odpravi nekatere napake ali ranljivosti.

Ne želim biti preveč tehničen, želim, da ta članek doseže čim več ljudi in da je vse, kar želim povedati, enostavno razumljivo ... In v mnogih strojih se izkaže, da je ta koda običajno integrirana v BIOS ali UEFI , čeprav je včasih mogoče mikrokodo posodobiti skozi jedro med vsakim zagonom, pri čemer se posodobitev ali popravek shrani v nestanoviten pomnilnik, torej v RAM, pri čemer se izognemo spreminjanju BIOS-a / UEFI.

Kako posodobiti BIOS / UEFI iz Linuxa?

UEFI ASUS vmesnik

Če želite posodobiti BIOS / UEFI iz Linuxa ali mikrokode, razčlenimo oba postopka.

Pred posodobitvijo mikrokode je zelo pomembno, da jo imate posodobljena vdelana programska oprema BIOS / UEFIsaj drugače morda ne bo delovalo. Preverite torej spletno mesto ponudnika vdelane programske opreme, kot je Phoenix, Award itd., Ali spletno mesto za tehnično podporo vašega modela matične plošče, ki običajno vsebuje pakete za posodobitev teh sistemov.

Posodobitev BIOS-a / UEFI je nekaj občutljivega, kot lahko vidite v zadnjem poglavju o tveganjih. Zato vam svetujem, da tega ne počnete, če niste prepričani, kaj počnete in če želite posodobiti ali pa ga potrebujete, vendar nimate dovolj znanja, se vedno posvetujte s strokovnjakom. Poleg tega vam priporočam, da si ogledate projekte, kot so fwupd, BIOSDisck, Flashrom itd., Ki so zelo praktična orodja, ki nam bodo v pomoč pri tem procesu.

Eden tistih, ki mi je najbolj všeč, je flashrom, je približno paket, ki nam daje orodje ki omogoča prepoznavanje, branje, pisanje, preverjanje in brisanje flash čipov. To ne služi samo za bliskavico BIOS-a / UEFI / CoreBoot, temveč tudi za spreminjanje drugih bliskovnih pomnilnikov omrežnih kartic, grafičnih procesorjev itd., V drugih napravah s spremenljivo vdelano programsko opremo. Podpira tudi različne operacijske sisteme ter množico zobnikov in modelov naprav in plošč.

  • Namestite paket flashrom v vaši distribuciji z upraviteljem paketov, ki ga običajno uporabljate, saj gre za orodje, ki je med repozitoriji najpomembnejših distribucij.
  • Usa koren ali sudo, saj za njegovo uporabo potrebujete privilegije, da bi bili nekaj občutljivega.
  • Prepoznajte vdelano programsko opremo ki ga uporabimo s preprostim izvajanjem ukaza:
flashrom

  • Priporočam, da naredite a varnostno kopirajte svoj trenutni ROM, če ugotovite, da nova posodobitev ne deluje in se želite vrniti nazaj. Za to:
flashrom -r copia_seguridad.bin

  • ja, vem imamo nov ROM ki smo ga prenesli iz ZANESLJIVEGA vira, lahko za utripanje uporabimo naslednji ukaz, na primer, če se naša nova posodobitev imenuje uefi-sm.bin:
flashrom -wv uefi-sm.bin

Za več informacij glejte priročnik z človek flashrom.

Posodobitev mikrokode:

Če želite posodobiti mikrokodo našega CPU-ja, ne da bi se dotaknili BIOS-a / UEFI, torej s preprosto spremembo v jedru Linuxa, lahko izberete namestitev potrebnih paketov za vaš CPU. Na primer, če imate sodoben procesor AMD, običajno namestite paket imenuje amd64-mikrokoda, za Intel pa paket intel-mikrokoda (če uporabljate openSUSE, SUSE, RHEL, CentOS itd., se pokliče paket microcode_ctl, in za Arch intel-ucode ali amd-ucode ...), ki jih lahko najdete na zaupanja vrednih spletnih mestih ... (to je, če gre za stroj x86, če je ARM ali drugačen, obiščite spletno mesto proizvajalca). Insisto a pesar de parecer un pesado, no descargues este tipo de paquetes desde fuentes desconocidas, es muy importante. Bien, ahora que ya lo tenemos descargado e instalado, puede que el procedimiento sea diferente en cada distribución y que implique activar algunos paquetes o actualizaciones restringidos como los propietarios…

Z nameščenimi paketi in dobro nastavljenimi sistemskimi nastavitvami, ki se sklicujejo na posodobitve, llastne varnostne posodobitve ki namesti operacijski sistem, bo že vključeval to vrsto popravkov mikrokode, če je bila odkrita resna ranljivost, kot so Spectre, Meltdown itd.

Če želite, lahko informacije o mikrokodah dobite iz distribucijskega sistema z uporabo:

dmesg | grep microcode

In s tem bomo dobili podrobnosti mikrokodeČe smo ta ukaz izvedli pred namestitvijo paketov, ki sem jih omenil prej (po namestitvi je treba znova zagnati), in kasneje bomo videli, da nam pokaže spremembe, če je bila nameščena razpoložljiva posodobitev.

Včasih proizvajalci ali oblikovalci procesorjev AMD, Intel in drugi CPU nudijo tarballs z binarnimi blobs za posodobitev mikrokode ali vdelane programske opreme. Če ste enega od teh paketov prenesli z zanesljivega mesta, sledite navodilom distributerja ali si oglejte datoteke README.

Nevarnosti in nasveti pred posodobitvijo BIOS-a

Matične plošče za recikliranje

Posodobitev vdelane programske opreme ali mikrokode CPU v večini primerov pomeni posodobitev zaprtih kod, ki jih dobimo pri ponudnikih CPU, ki jih imamo, zaprtih gonilnikov jedra (binarni blobs) itd. To želim pojasniti, saj njegova vsebina in način delovanja ni znan in se zdi logično, da bi morali vedeti. Če načeloma ne uporabljate brezplačne strojne opreme, vam ne preostane drugega, kot da zaupate proizvajalcu ali oblikovalcu vašega CPU-ja ali matične plošče, toda ja, nikoli ne prenašajte mikrokode ali vdelane programske opreme z neuradnih spletnih mest, saj gre za nekaj zelo občutljivega.

Pravzaprav ne samo je občutljivo iz varnostnih razlogov, saj lahko tudi opremo popolnoma neuporabite. Tudi če ste vdelano programsko opremo prenesli z uglednega spletnega mesta, se lahko med postopkom kaj zalomi, na primer izpad električne energije, zaradi česar je namestitev posodobitve in vdelana programska oprema popolnoma pokvarjena, kar pomeni, da morda že razmišljate o porabi denarja. za nakup nove matične plošče.

To je tisto, kar je znano pod izrazom opeka v slengu strojne opreme, to pomeni, da svojo strojno opremo pustite kot opeko, brez kakršnih koli pripomočkov. S tem vam želim povedati, da bodite previdni in da nismo odgovorni za to, kaj se lahko zgodi, če se odločite za posodobitev vdelane programske opreme ali posodobitev BIOS-a / EFI. Toda pozor, to ne pomeni vedno tveganj, kot sem vam že povedal, ni vedno treba, da se "dotikate" BIOS-a / EFI, obstajajo tudi posodobitve, ki so samo na ravni OS in teh tveganj ne pomenijo. .

Upam, da je bila ta vadnica koristna, če imate kakršna koli vprašanja ali predloge, ne pozabite zapustiti komentarji...


Pustite svoj komentar

Vaš e-naslov ne bo objavljen. Obvezna polja so označena z *

*

*

  1. Odgovoren za podatke: AB Internet Networks 2008 SL
  2. Namen podatkov: Nadzor neželene pošte, upravljanje komentarjev.
  3. Legitimacija: Vaše soglasje
  4. Sporočanje podatkov: Podatki se ne bodo posredovali tretjim osebam, razen po zakonski obveznosti.
  5. Shranjevanje podatkov: Zbirka podatkov, ki jo gosti Occentus Networks (EU)
  6. Pravice: Kadar koli lahko omejite, obnovite in izbrišete svoje podatke.

  1.   Ruben Horace Specogna je dejal

    pozdrav, dobro jutro, želel sem v svoj prenosnik namestiti xubuntu 14 in prenesti datoteke, jih namestiti, toda ko zahteva ponovni zagon s tipke usb, vstopim v bios in ne najdem bliskovnega pomnilnika v zagonskem meniju, lahko nekdo pomaga jaz, od že najlepša hvala.

  2.   Joseph Louis Matthew je dejal

    Pozdravljeni prijatelji:

    Članek se mi zdi izvrsten, čeprav "nevaren" za tiste, ki smo bolj začetniki in se bojimo.

    Že dolgo pogrešam dober članek, zaradi katerega razumemo, kako večnamenski tiskalniški sistem, kot je moj (Canon MG 7150), deluje prek Wi-Fi.

    Z Linuxom še nikoli nisem delal v celoti. Uspelo mi je delati tiskalnik, ki je povezan prek USB-ja, vendar skenerja ne prek wifi-ja ali kabla.

    Zato danes omenjam to temo in se hkrati zahvaljujem, da ste nam priskrbeli izdelke takšne kakovosti, kot je sedanji; toda hkrati bi rad, da nekdo, ki ve, kako to storiti, olajša nam delovanje omenjenega sistema.

    Hvala in prisrčen pozdrav

  3.   Gabriel je dejal

    Najprej poglejte v BIOS, če obstaja možnost MULTIBOOT (kjer jo morate aktivirati), če pa ne, obstaja, da se zažene z USB-jem, na splošno ob vklopu računalnika nekaj časa držite tipko F8 ( v drugih osebnih računalnikih je običajno F12) in tam skoči zagonski meni, ki prikazuje možnosti: trdi disk, CD, USB. V primeru, da imate UEFI, mora biti USB ustvarjen z možnostjo UEFI, če ga ne prepozna.