Spectre/Meltdown - обновить микрокод

Я пытаюсь вручную обновить микрокод для Intel i5-2410M.

Dell XPS 15z 2011 - Intel i5-2410M (Сэнди Бридж).

Ubuntu 18.04 (Debian) | Гном | Grub2 | Systemd

Я установил некоторый предварительно упакованный микрокод из репозитория Ubuntu, но я не знаю, относится ли он ко мне:

apt install intel-microcode

dmsg | grep microcode

[0.000000] микрокод: микрокод обновлен досрочно до версии 0x2d, дата = 2018-02-07

[1.259590] микрокод: sig=0x206a7, pf=0x10, версия = 0x2d

[1.259643] микрокод: драйвер обновления микрокода: v2.2.

Обратите внимание, что дата - 7 февраля 2018 года. У Intel более поздняя версия для i5-2410M, 25 апреля 2018 года.

https://downloadcenter.intel.com/download/27776/Linux-Processor-Microcode-Data-File?product=52224


CVE-2018-3640 [мошенническое чтение системного регистра] aka 'Вариант 3a'

  • Микрокод ЦП смягчает уязвимость: НЕТ

СОСТОЯНИЕ: Уязвим (требуется современный микрокод ЦП для устранения этой уязвимости)

Как исправить: микрокод вашего процессора должен быть обновлен, чтобы смягчить эту уязвимость. Обычно это делается во время загрузки вашим ядром (обновление не происходит постоянно после перезагрузки, поэтому оно выполняется при каждой загрузке). Если вы используете дистрибутив, убедитесь, что вы в курсе, так как обновления микрокода обычно поставляются вместе с ядром дистрибутива. Доступность обновления микрокода для вашей модели процессора зависит от вашего поставщика процессора. Обычно вы можете узнать в Интернете, доступно ли обновление микрокода для вашего процессора, выполнив поиск вашего CPUID (указан в разделе "Проверка оборудования"). Достаточно обновить микрокод, никаких дополнительных изменений ОС, ядра или программного обеспечения не требуется.

CVE-2018-3639 [спекулятивный обход магазина] aka 'Вариант 4'

  • Смягчается в соответствии с интерфейсом / sys: НЕТ (Уязвимый)

  • Ядро поддерживает обход хранилища спекуляций: ДА (находится в /proc/self/status)

СТАТУС: Уязвим (ваш процессор не поддерживает SSBD)

Как исправить: ваше ядро ​​достаточно недавно, чтобы использовать функции микрокода ЦП для смягчения, но ваш микрокод ЦП фактически не предоставляет необходимые функции для использования ядром. Микрокод вашего процессора, следовательно, должен быть обновлен. Обычно это делается во время загрузки вашим ядром (обновление не происходит постоянно после перезагрузки, поэтому оно выполняется при каждой загрузке). Если вы используете дистрибутив, убедитесь, что вы в курсе, так как обновления микрокода обычно поставляются вместе с ядром дистрибутива. Доступность обновления микрокода для вашей модели процессора зависит от вашего поставщика процессора. Обычно вы можете узнать в Интернете, доступно ли обновление микрокода для вашего процессора, выполнив поиск вашего CPUID (указан в разделе "Проверка оборудования").


» grep . /sys/devices/system/cpu/vulnerabilities/*

/ sys / devices / system / cpu / уязвимости / распад: Смягчение: PTI

/ SYS / устройства / системы / CPU / Уязвимости /spec_store_bypass: Уязвимые

/ sys / devices / system / cpu / уязвимости /spectre_v1: Смягчение: __user-очистка указателя

/ sys / devices / system / cpu / уязвимости /spectre_v2: Смягчение: Полный универсальный ретполин, IBPB, IBRS_FW

Может, кто-нибудь предоставит вам крошку для того, что я должен исследовать, я сейчас застрял довольно хорошо. Я ценю ваше время.

1 ответ

Краткий ответ: у вас самая последняя версия. Эта загрузка имеет обновления микрокода для многих процессоров. По крайней мере, один обновился, но не для вашего процессора.

Подробности:

Примечание. Микрокод sig - 0x206a7, версия 2d. Загрузите обновления микрокода и распакуйте их. Посмотри в файле под названием list для линии с 06-2a-07. (Почему числа меняются местами и дополняются нулями, мне не подходит.)

06-2a-07/00000012       0000002d        2018-02-07

Таким образом, у вас есть последняя версия.

Вам нужно будет поставить свою ОС, но по крайней мере с Gentoo обновление микрокода легко. Вы делаете initramfs с микрокодом через:

iucode_tool -S --write-earlyfw=/boot/early_ucode.cpio /lib/firmware/intel-ucode/*

Gentoo исправил grub для автоматического включения этого initramfs.

Если вы хотите проверить это для своей ОС: найдите все, что использует ваша система initramfs. Извлеките это с cpio -idv < foo.img, Микрокод будет называться kernel/x86/microcode/GenuineIntel.bin Затем вы можете сравнить его с тем, что было в архиве. Например:

md5sum kernel/x86/microcode/GenuineIntel.bin
63b77e80b39b5a3ed81a30682ef2c5ab  kernel/x86/microcode/GenuineIntel.bin

Из каталога intel-ucode, созданного при извлечении архива:

md5sum * | grep 63b77e80b39b5a3ed81a30682ef2c5ab
63b77e80b39b5a3ed81a30682ef2c5ab  06-2a-07
Другие вопросы по тегам