Intel phát hành Microcode cho CPU Linux để khắc phục Meltdown và Spectre

Bài viết này nằm trong series: Toàn cảnh lỗ hổng trên chip Intel, AMD, ARM: Meltdown và Spectre. Mời bạn đọc toàn bộ các bài viết trong series để nắm thông tin cũng như có các bước bảo vệ thiết bị của mình trước hai lỗ hổng bảo mật nghiêm trọng này.

Vào ngày 8/1, Intel phát hành các tập tin dữ liệu vi mã cho vi xử lý Linux để giảm nhẹ ảnh hưởng của lỗ hổng Meltdown và Spectre trên CPU của mình. Bằng các tập tin vi mã, hệ điều hành có thể khắc phục lỗi mà không cần thực hiện cập nhật BIOS trên máy tính.

Theo Intel, lần phát hành này dùng được cho 40 bản Linux và 2371 vi xử lý Intel, từ những chiếc mới nhất cho tới Pentium Processor 150 Mhz từ năm 1995.

Bản phát hành các tập tin vi mã này chỉ khắc phục được lỗi trên một số vi xử lý nhất định. Dưới đây là danh sách các vi xử lý được cập nhật, cột đầu tiên là loại vi xử lý, loại thứ 2 là viết tắt của ghi chú phát hành và cuối cùng là số bản phát hành mới.

Bảng vi xử lý Intel
Bảng vi xử lý và bản cập nhật

Người dùng Windows cũng có thể dùng các bản cập nhật vi mã này những cần được Microsoft kiểm tra trước và phát hành cập nhật sau. Bản cập nhật vi mã cuối cùng được phát hành vào năm 2015. Hiện chưa biết Microsoft có ý định phát hành cập nhật hay không.

Ứng dụng các tập tin dữ liệu vi mã vào Linux

Trên Linux, việc dùng các tập tin này khá dễ vì các bản phân phối Linux đều phát hành dưới dạng cập nhật. Để cài, cách tốt nhất là dùng công cụ quản lý gói Package Manager trong bản phân phối Linux.

Với DebianUbuntu, nên dùng APT để cài. Package Manager cũng cài các thành phần phụ thuộc nếu cầu, như incode-tool chẳng hạn. RedhatCentos cần dùng Yum và tìm microcodt_ctl. 

Nếu không thể cập nhật qua Package Manager, bạn có thể cài thủ công. Trên các bản phân phối Linux hiện đại thường chỉ cần sao chép thư mục intel-ucode đã tải về, rồi cho vào /lib/firmware, sau đó chạy lệnh echo 1 > /sys/devices/system/cpu/microcode/reload. Có thể xem ví dụ cập nhật Ubuntu thủ công tại đây. https://www.bleepingcomputer.com/forums/t/667654/latest-ubuntu-meltdownspectre-updates-break-my-pc/?p=4420456

Ubuntu sử dụng vi mã microcode
Ubuntu sử dụng vi mã microcode

Đây là hướng dẫn cài vi mã của Intel

-- Hướng dẫn cập nhật vi mã --
Gói này có chứa các tập tin vi mã dưới 2 định dạng:
* microcode.dat
* thư mục intel-ucode

microcode.dat là tập tin dạng text vẫn được dùng trên một số bản phân phối Linux. Có thể cập nhật hệ thống qua giao diện cập nhật trên kernel bằng
CONFIG_MICROCODE_OLD_INTERFACE=y.

Để cập nhật microcode.dat cho hệ thống, cần:
1. Đảm bảo có /dev/cpu/microcode
2. Viết microcode.dat lên tập tin, ví dụ
dd if=microcode.dat of=/dev/cpu/microcode bs=1M

Thư mục intel-ucode chứa các tập tin vi mã nhị phân đặt tên theo mẫu
family-model-stepping. Tập tin được hỗ trợ trên hầu hết nhân Linux, thường nằm trong thư mục /lib/firmware và có thể cập nhật qua giao diện reload vi mã.

Để cập nhật gói intel-ucode cần:
1. Đảm bảo có /sys/devices/system/cpu/microcode/reload
2. Sao chép thư mục intel-ucode vào /lib/firmware, viết đè lên các tập tin trong
/lib/firmware/intel-ucode/
3. Viết trên giao diện reload là 1 để tải lại tập tin vi mã, ví dụ
echo 1 > /sys/devices/system/cpu/microcode/reload

Xem thêm:

Thứ Tư, 31/01/2018 16:26
31 👨 366