4

У меня есть T440s. CVE-2017-5689 / INTEL-SA-00075 приближается. Lenovo выпустила обновления:

https://support.lenovo.com/us/en/product_security/LEN-14963

Их обновления BIOS материнской платы обычно имеют как обязательную для Windows опцию, так и опцию обновления через USB. Однако у этого есть только обязательная опция Windows, как я проверяю сейчас. Они даже не выпустили обновления для всех моделей оборудования, так что, возможно, все только в работе, но они не указали так ни в одном, что я видел.

В то же время я нашел эти инструкции в некоторых вики:

http://www.thinkwiki.org/wiki/Intel_Active_Management_Technology_(AMT)#Firmware_update

Но они кажутся вовлеченными и несколько сбивающими с толку, и мне интересно, если это, кроме того, устарело. Будучи вики, это может измениться, но в настоящее время кажется, что мне нужно:

  • Установите Windows PE на USB-накопитель
  • Извлеките 2 файла из некоторого другого файла прошивки с веб-сайта IBM, используя Wine:
    • CMD я буду запускать, чтобы сделать обновление
    • Драйвер мне нужно выяснить, как загрузить.

Это кажется отрывочным для меня. Кто-нибудь может подтвердить это? Есть ли другой способ сделать это?

С другой стороны, разве Lenovo не настолько ответственна, чтобы позаботиться о недостатках своего продукта? Или я договорился где-то в контракте, что я использую только Windows? Отсутствие поддержки, прозрачности и готовности кажется мне совершенно неприемлемым для такого серьезного дефекта в их продукте.

2 ответа2

1

Рецепт (точная редакция на тот момент была этой) работал для моего Thinkpad X2 x 0 (с оригинальной ОС, обновленной до GNU/Linux и OpenBSD) с небольшими изменениями.

Подготовка winpe3_x86.iso была относительно простой. Я загрузил его, и необходимые упомянутые обновления прошивки и драйвера "пакеты", которые я имел на флешке USB в виде двух .exe файлов.

  • CMD я буду запускать, чтобы сделать обновление

Вы найдете файл CMD в каждом "пакете" обновления прошивки после извлечения, запустив exe-файл при загрузке в среде WinPE. Для T440 желаемый вариант с исправлением уязвимости, скорее всего, https://pcsupport.lenovo.com/downloads/DS038194

  • Драйвер мне нужно выяснить, как загрузить.

В рецепте упоминается: ... вам нужно загрузить драйвер HECI с помощью "drvload HECI.inf" и связать его с интерфейсом Intel AMT Management Engine для Windows. Ссылка (перенаправление) была нарушена, однако ее можно найти для его / ее платформы с полем поиска на https://support.lenovo.com.

Драйвер был успешно загружен с помощью команды drvload (он был извлечен в C:\DRIVERS\WIN\AMT\MEI\MEI\HECI.inf ; C: был моим USB-накопителем), однако он как-то не работал, MEUpdate.CMD не удалось.

Мне удалось использовать другой "пакет": Intel Management Engine Interface 7.1 и драйвер Serial Over LAN (SOL). После загрузки файла HECI.inf (который был извлечен в c:\DRIVERS\WIN\AMT\ME_SW\Drivers\MEI\HECI.inf) я также загрузил C:\DRIVERS\WIN\AMT\ME_SW\Drivers\SOL\mesrle.inf , но я не уверен на 100%, что это было необходимо - я не хочу повторять эксперимент.

Кстати, не забудьте включить Intel AMT в настройках BIOS перед обновлением прошивки, а затем отключить ее;)

0

Я нашел способ использовать нативный Linux (или даже DOS/EFI: просто используйте соответствующие инструменты в загрузке System Tools вместо Linux).

Lenovo предоставляет нам две вещи: интерфейс модуля управления (MEI) или программное обеспечение модуля управления и встроенное программное обеспечение модуля управления (ME). Первый нужен для предоставления драйвера (HECI) для доступа и прошивки ME, второй - это утилита флэш-памяти плюс образ флэш-памяти. Поскольку мы используем Linux, нам нужны только флэш-инструменты и прошивки. В моем случае это называлось « r0dmu01w.exe », теперь я буду использовать « FWPkg.exe ».

  1. Извлеките прошивку, используя innoextract $ innoextract FWPkg.exe или wine $ wine FWPkg.exe
  2. Это создаст некоторую папку « app » в вашем текущем каталоге (innoextract) или папку « ME » в каталоге « C:\DRIVERS\ » винного корня, который будет создан при необходимости (wine). Нас будут интересовать только файлы " ME_<version>_[Consumer/Corporate]_*_Production.bin " (образ прошивки) и " MEUpdate.CMD "Flash-скрипт, который вызывает" FWUpdLcl(64).exe ".

Корпорация Intel предоставляет дистрибьюторам версию этого инструмента для Linux, однако мы можем скачать ее здесь (неофициально!). Это Intel ME System Tools, у меня ME v11, поэтому я скачал "Intel CSME System Tools v11", теперь я буду называть его « METools.rar ».

  1. Извлеките файлы $ unrar x METools.rar
  2. Внутри извлеченного каталога будет находиться файл « FWUpdate/LINUX(64)/Portable/FWUpdLcl ».
  3. Перейдите к пути указанного файла и добавьте права на выполнение: $ chmod +x FWUpdLcl
  4. Посмотрите на " MEUpdate.CMD "скрипт со строкой, которая должна выглядеть примерно так:

    %~dp0FWUpdLcl64.exe -F %~dp0ME_<version>_[Consumer/Corporate]_*_Production.BIN -OEMID XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX -generic -allowsv
    

    Нас интересует только OEMID-флаг, я буду называть его $OEMID . В качестве альтернативы вы можете использовать утилиту " MEInfo ", однако для этого необходимо iomem=relaxed в командной строке загрузки ядра.

  5. Теперь используйте инструмент Linux в качестве администратора и обновите свою прошивку, вы используете потребительский вариант, если ваше устройство не поддерживает Intel AMT (ЦП с поддержкой AMT имеют логотип "vPro"):

    # FWUpdLcl -F <path/to/binfile> -OEMID $OEMID -allowsv
    

    Общий флаг недоступен в Linux, единственная документация, которую я смог найти, была "Выполнить обновление через MEI без учетных данных" - но нам это, похоже, не нужно. AllowSV позволяет обновления той же версии.

Теперь у вас должна быть обновленная прошивка ME.


Изменить: я только что обнаружил, что кто-то уже нашел такое же решение (на немецком языке), связанные для полноты.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .