Cara mengemas kini BIOS, UEFI atau Microcode dari Linux

Pukulan mati atau mikrograf Intel XEON E5

Kamu tahu cara mengemas kini BIOS dari PC anda? Dengan kerentanan seperti Specter, Meltdown, dan semua variannya serta lubang keselamatan lain yang dikesan dalam perkakasan, terutama di CPU, anda pasti telah banyak kali membaca bahawa banyak di antaranya diselesaikan dengan mengetahui cara mengemas kini BIOS atau UEFI komputer anda ., kerana pembaruan atau patch diperlukan untuk kod mikro yang digunakan oleh CPU dan dengan demikian mengubah cara Unit Kontrol CPU beroperasi sehingga tidak rentan terhadap ancaman tersebut.

Selain kelemahan, firmware boleh dikemas kini kerana banyak sebab lain, seperti kerosakan peranti perkakasan, kesalahan berterusan dalam perisian dengan cara yang tidak dapat dijelaskan, kemas kini untuk menambah beberapa fungsi, dll. Tetapi seperti yang saya katakan, dalam beberapa bulan terakhir kita telah mendengar istilah ini berkali-kali kerana masalah keselamatan yang cukup kritikal dalam beberapa kes dan yang berkaitan dengan cara mikropemproses moden menangani beberapa lonjakan, cache, FPU dan pelaksanaan spekulatif, walaupun dalam kes lain mereka telah dikesan di bahagian lain sistem seperti chipset atau pemproses keselamatan tertentu yang terintegrasi dalam platform ini ...

Apa itu firmware?

Cip BIOS papan induk

Kita semua cukup jelas mengenai apa perkakasan (bahagian fizikal dan elektronik dari komputer, iaitu elektronik) dan perisian (bahagian logik yang tidak dapat disentuh: program). Tetapi antara perkakasan dan perisian, atau lebih tepatnya, antara perkakasan dan kernel sistem operasi ada yang lain: firmware. Firmware terdapat di semua peranti dan bahagian komputer, dari tetikus, pemacu optik, hingga GPU dan CPU yang beroperasi dengan kod mikro.

Tetapi apa itu? Baiklah anda boleh mengatakan bahawa adalah kod, maksudnya, perisian dan oleh itu komponen logik tetapi kali ini ia tidak dapat diubah. Ia beroperasi pada tahap rendah, dan secara langsung mengawal fungsi litar elektronik. Firmware ini, dengan bantuan pengawal atau pemacu, memungkinkan bahawa apabila kernel sistem operasi memerintahkan perkakasan untuk melakukan tugas, ia akan melaksanakannya. Program atau kod ini telah direkodkan oleh pengeluar peranti dalam memori yang biasanya menyala, atau beberapa jenis ROM seperti EEPROM.

Tetapi salah satu firmware yang paling menarik minat kami dalam artikel ini adalah BIOS atau UEFI sistem, kerana ia adalah firmware yang sangat penting yang mempunyai pelbagai fungsi semasa permulaan dan operasi peralatan. Contohnya, kod ini bertanggungjawab untuk mengaktifkan mesin semasa memulakan, mengesan cakera keras atau media di mana terdapat sistem operasi yang tersedia, melakukan beberapa pemeriksaan yang mengganggu firmware komponen dan periferal lain, dan memberikan kawalan ke kernel ketika sistem dimulakan untuk mula ...

Mengapa mengemas kini mempengaruhi CPU?

Pin CPU

... Dan apa kaitannya dengan CPU, cukup baik. Ternyata CPU mempunyai unit kawalanUnit kawalan ini adalah litar yang bertanggung jawab untuk mengendalikan bahagian-bahagian mikropemproses atau CPU yang lain, seperti menyahkod arahan dan membuat data dengan pengoperasian pergi ke daftar yang sesuai dan kemudian mengaktifkan beberapa unit berfungsi seperti ALU atau FPU dan ia menjalankan beberapa operasi pada data bergantung pada jenis instruksi yang sedang dijalankan. Arahan ini pada gilirannya berasal dari program atau kod perisian yang sedang diproses pada waktu itu, kerana seperti yang anda harus tahu, program terdiri dari serangkaian petunjuk berurutan.

Seperti yang anda bayangkan, unit kawalan ini beroperasi dengan cara yang dibuat oleh pengeluar atau pereka bentuknya. Dalam beberapa kes tertentu, unit kawalan mungkin berwayar, iaitu, biasanya cukup cepat tetapi tidak terlalu fleksibel, kerana ia dilaksanakan secara langsung dengan litar yang sangat spesifik. Sebaliknya, ada juga yang dapat diprogramkan, iaitu litar yang lebih "terbuka" yang boleh beroperasi dalam satu cara atau yang lain mengikut kod mikro atau firmware. Oleh itu, jika kita mengubah firmware atau mikrokod kita dapat membuat unit kawalan dan oleh itu CPU dapat beroperasi secara berbeza atau memperbaiki beberapa bug atau kerentanan.

Saya tidak mahu terlalu teknikal, saya mahu artikel ini menjangkau seberapa banyak orang dan semua yang ingin saya sampaikan mudah difahami ... Dan di banyak mesin ternyata kod ini biasanya disatukan ke dalam BIOS atau UEFI , walaupun kadang kala mikrokode dapat diperbaharui oleh kernel selama setiap boot, menyimpan kemas kini atau tambalan dalam memori yang tidak stabil, yaitu, dalam RAM, menghindari perlunya mengubah BIOS / UEFI.

Bagaimana cara mengemas kini BIOS / UEFI dari Linux?

Antara muka UEFI ASUS

Untuk mengemas kini BIOS / UEFI dari Linux atau mikrokod, mari kita pecah kedua-dua prosedur.

Sebelum melakukan kemas kini mikrokod adalah sangat penting yang anda ada firmware BIOS / UEFI yang dikemas kinijika tidak, ia mungkin tidak berfungsi. Oleh itu, periksa laman web penyedia firma anda seperti Phoenix, Award, dll., Atau laman web sokongan teknikal model motherboard anda, yang biasanya mempunyai pakej untuk mengemas kini sistem ini.

Mengemas kini BIOS / UEFI adalah sesuatu yang sukar seperti yang anda lihat di bahagian terakhir mengenai risiko. Itulah sebabnya saya menasihati anda untuk tidak melakukannya sekiranya anda tidak pasti apa yang anda lakukan dan jika anda mahu mengemas kini atau anda memerlukannya, tetapi anda tidak mempunyai pengetahuan yang mencukupi, selalu berunding dengan profesional. Sebagai tambahan, saya mengesyorkan anda melihat projek seperti fwupd, BIOSDisck, Flashrom, dan lain-lain, yang merupakan alat yang sangat praktikal yang akan membantu kami dalam prosesnya.

Salah satu yang paling saya gemari adalah flashrom, ia tentang pakej yang memberi kita alat yang memungkinkan untuk mengenal pasti, membaca, menulis, mengesahkan, dan memadam cip kilat. Itu bukan sahaja berfungsi untuk mem-flash BIOS / UEFI / CoreBoot, tetapi juga berfungsi untuk mengubah memori flash kad jaringan, GPU, dan lain-lain, di peranti lain dengan firmware yang boleh diubah. Ia juga menyokong pelbagai sistem operasi dan banyak gear dan model peranti dan papan.

  • Pasang pakej flashrom dalam pengedaran anda menggunakan pengurus pakej yang biasanya anda gunakan, kerana ia adalah alat yang merupakan antara repositori pengedaran yang paling penting.
  • Usa akar atau sudo, kerana untuk menggunakannya, anda memerlukan hak istimewa untuk menjadi sesuatu yang halus.
  • Kenal pasti firmware yang kami gunakan dengan hanya menjalankan perintah:
flashrom

  • Saya mengesyorkan agar anda melakukan sandarkan ROM semasa anda, sekiranya anda mendapati bahawa kemas kini baru tidak berfungsi dan anda mahu kembali. Untuk ia:
flashrom -r copia_seguridad.bin

  • Ya saya tahu kami mempunyai ROM baru yang telah kami muat turun dari sumber yang RELIABLE, kami dapat menggunakan perintah berikut untuk melakukan flash, misalnya jika kemas kini baru kami disebut uefi-sm.bin:
flashrom -wv uefi-sm.bin

Untuk maklumat lebih lanjut, rujuk manual dengan lelaki flashrom.

Kemas kini kod mikro:

Untuk mengemas kini mikrokode CPU kami, tanpa menyentuh BIOS / UEFI, iaitu dengan modifikasi sederhana dalam kernel Linux, anda dapat memilih untuk memasang pakej yang diperlukan untuk CPU anda. Sebagai contoh, jika anda mempunyai CPU AMD moden, perkara biasa adalah pasang pakej dipanggil amd64-mikrokod, dan untuk Intel pakej intel-mikrokod (jika anda menggunakan openSUSE, SUSE, RHEL, CentOS, dll., pakej tersebut dipanggil mikrokod_ctl, dan untuk Arch intel-ucode atau amd-ucode ...) yang anda dapati di laman web yang dipercayai ... (bahawa jika ia adalah mesin x86, jika itu ARM atau berbeza, pergi ke laman web pengeluar). 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…

Dengan pakej tersebut dipasang dan tetapan sistem yang merujuk kemas kini dikonfigurasi dengan baik, lkemas kini keselamatan sendiri yang memasang sistem operasi sudah termasuk jenis tambalan ini untuk mikrokod sekiranya terdapat kerentanan serius yang dikesan, seperti Specter, Meltdown, dll.

Sekiranya anda mahu, anda boleh mendapatkan maklumat kod mikro dari distro anda menggunakan:

dmesg | grep microcode

Dan dengan itu kita akan memperoleh perincian kod mikroSebenarnya, jika kita telah melaksanakan perintah ini sebelum memasang pakej yang saya sebutkan sebelumnya (setelah memasangnya perlu untuk dimulakan semula) dan selepas itu, kita akan melihat bahawa ia menunjukkan kepada kita perubahan jika ada kemas kini yang tersedia yang telah dipasang.

Kadang-kadang AMD, Intel, dan pengeluar atau pereka CPU lain menyediakan tarballs dengan gumpalan binari untuk mengemas kini kod mikro atau firmware. Sekiranya anda telah memuat turun salah satu pakej ini dari tempat yang boleh dipercayai, ikuti arahan yang diberikan oleh pengedar atau rujuk fail README.

Bahaya dan petua sebelum mengemas kini BIOS

Papan induk untuk kitar semula

Kemas kini firmware atau mikrokod CPU menganggap dalam kebanyakan kes untuk mengemas kini kod tertutup yang menyediakan pembekal CPU yang kita ada, pemacu kernel tertutup (gumpalan binari), dll. Saya ingin menjelaskannya, kerana kandungan dan cara pengoperasiannya tidak diketahui dan nampaknya logik bahawa anda harus tahu. Pada prinsipnya, jika anda tidak menggunakan perkakasan percuma, anda tidak mempunyai pilihan selain mempercayai pengeluar atau pereka CPU atau motherboard anda, tetapi ya, jangan sekali-kali memuat turun kod mikro atau firmware dari laman web tidak rasmi, kerana ini adalah sesuatu yang sangat halus.

Sebenarnya bukan sahaja itu halus untuk keselamatan, kerana anda juga boleh menjadikan peralatan itu tidak dapat digunakan sepenuhnya. Walaupun anda telah memuat turun firmware dari laman web yang mempunyai reputasi baik, mungkin ada yang tidak kena semasa prosesnya, misalnya terdapat gangguan bekalan elektrik dan menyebabkan pemasangan kemas kini dan firmware rosak sepenuhnya, yang bermaksud bahawa anda mungkin sudah memikirkan membelanjakan wang untuk membeli papan induk baru.

Inilah yang dikenali dengan istilah bata dalam slanga perkakasan, biarkan perkakasan anda seperti batu bata, tanpa sebarang jenis utiliti. Dengan ini saya ingin memberitahu anda untuk berhati-hati dan bahawa kami tidak bertanggungjawab terhadap apa yang mungkin berlaku sekiranya anda memutuskan untuk mengemas kini firmware atau mem-flash BIOS / EFI. Tetapi berhati-hatilah, ini tidak selalu menyiratkan risiko, seperti yang saya katakan sebelumnya, tidak semestinya "menyentuh" ​​BIOS / EFI, ada juga kemas kini yang hanya pada peringkat OS dan tidak menyiratkan risiko tersebut .. .

Saya harap tutorial ini berguna, sebarang pertanyaan atau cadangan, jangan lupa untuk meninggalkannya comments...


Tinggalkan komen anda

Alamat email anda tidak akan disiarkan. Ruangan yang diperlukan ditanda dengan *

*

*

  1. Bertanggungjawab untuk data: AB Internet Networks 2008 SL
  2. Tujuan data: Mengendalikan SPAM, pengurusan komen.
  3. Perundangan: Persetujuan anda
  4. Komunikasi data: Data tidak akan disampaikan kepada pihak ketiga kecuali dengan kewajiban hukum.
  5. Penyimpanan data: Pangkalan data yang dihoskan oleh Occentus Networks (EU)
  6. Hak: Pada bila-bila masa anda boleh menghadkan, memulihkan dan menghapus maklumat anda.

  1.   Ruben Horace Specogna kata

    halo selamat pagi saya mahu memasang xubuntu 14 pada buku nota saya, dan memuat turun fail, memasangnya tetapi apabila ia meminta untuk memulakan semula dari kekunci usb, saya memasukkan bios dan saya tidak dapat menemui memori kilat di menu but, seseorang boleh membantu Saya, terima kasih banyak.

  2.   Joseph Louis Mateo kata

    Hello kawan:

    Tampaknya artikel saya, sangat bagus walaupun "berbahaya" bagi kita yang lebih baru dan takut.

    Saya telah lama kehilangan artikel yang baik yang membuat kita memahami bagaimana sistem pencetak pelbagai fungsi seperti saya (Canon MG 7150) berfungsi melalui Wifi.

    Dengan Linux, saya tidak pernah berjaya sepenuhnya. Saya berjaya menjadikan pencetak disambungkan dengan USB agar berfungsi, tetapi tidak pernah menggunakan pengimbas, baik melalui Wi-Fi maupun melalui kabel.

    Itulah sebabnya hari ini saya mengangkat topik ini dan pada masa yang sama saya mengucapkan terima kasih kerana memberikan kami artikel yang berkualiti seperti yang ada sekarang; tetapi pada masa yang sama, saya ingin seseorang yang tahu bagaimana melakukannya, mempermudah kita membuat sistem tersebut di atas berfungsi.

    Terima kasih dan salam sejahtera

  3.   Gabriel kata

    Lihat pertama di BIOS jika ada pilihan MULTIBOOT (di mana anda harus mengaktifkannya), jika tidak, ia wujud, untuk boot dengan USB secara amnya semasa menghidupkan PC, anda harus menahan kekunci F8 untuk sementara waktu (di PC lain biasanya F12) dan di sana menu boot melompat menunjukkan pilihan: cakera keras, CD, USB. Sekiranya mempunyai UEFI, USB mesti dihasilkan dengan pilihan UEFI jika tidak, ia tidak dikenali.