Wie aktualisiere ich bei Linux-Installation die Firmware für Management Engine / AMT für Lenovo T440s?

2397
orblivion

Ich habe einen T440s. CVE-2017-5689 / INTEL-SA-00075 steht an. Von Lenovo veröffentlichte Updates:

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

Die BIOS-Updates für das Motherboard verfügen in der Regel sowohl über eine Windows-erforderliche Option als auch über eine Live-USB-Update-Option. Dieses hat jedoch nur die von Windows benötigte Option, da ich es jetzt überprüfe. Sie haben noch nicht einmal Updates für alle Hardwaremodelle veröffentlicht, also sind vielleicht noch Dinge in Arbeit, aber sie haben dies auch in keinem Fall angegeben.

In der Zwischenzeit habe ich diese Anweisungen in einem Wiki gefunden:

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

Aber sie wirken ein bisschen verwirrend und ich frage mich, ob es außerdem veraltet ist. Als Wiki könnte es sich ändern, aber momentan scheint es so zu sein:

  • Installieren Sie Windows PE auf einem USB-Stick
  • Extrahieren Sie mithilfe von Wine 2 Dateien aus einer anderen Firmwaredatei von der IBM-Website:
    • Ein CMD, das ich ausführen werde, um das Update durchzuführen
    • Ein Treiber muss ich herausfinden, wie man lädt.

Das erscheint mir unklar. Kann irgendjemand das bestätigen? Gibt es einen anderen Weg, um darüber zu gehen?

Nebenbei bemerkt, ist Lenovo nicht ein bisschen mehr dafür verantwortlich, Fehler in seinem Produkt zu beheben? Oder habe ich irgendwo in einem Vertrag zugestimmt, dass ich nur Windows betreibe? Der Mangel an Unterstützung, Transparenz und Bereitschaft erscheint mir für einen so gravierenden Mangel an ihrem Produkt völlig inakzeptabel.

4

2 Antworten auf die Frage

1
mykhal

Das Rezept (die genaue Überarbeitung war zu dieser Zeit jeweils eine ) funktionierte für mein Thinkpad X2 x 0 (mit ursprünglichem Betriebssystem, das auf GNU / Linux und OpenBSD aktualisiert wurde) mit geringfügigen Änderungen.

Die Vorbereitung winpe3_x86.isowar relativ einfach. Ich habe es gebootet und die notwendige Firmware-Aktualisierung und Treiber "Pakete" auf USB-Stick in Form von zwei .exeDateien gehabt .

  • Ein CMD, das ich ausführen werde, um das Update durchzuführen

Sie finden die CMD-Datei in jedem Firmware-Upgrade-Paket. Nach dem Extrahieren starten Sie die exe-Datei, wenn Sie in der WinPE-Umgebung starten. Für T440 ist der gewünschte mit dem Fehlerbehebungsfix höchstwahrscheinlich https://pcsupport.lenovo.com/downloads/DS038194

  • Ein Treiber muss ich herausfinden, wie man lädt.

Das Rezept erwähnt: ... Sie müssen den HECI-Treiber mit "drvload HECI.inf" laden und eine Verknüpfung zur Intel AMT Management Engine-Schnittstelle für Windows herstellen . Der Link (Weiterleitung) wurde unterbrochen, jedoch sollte es möglich sein, ihn über das Suchfeld unter https://support.lenovo.com für seine Plattform zu finden .

Der Treiber wurde erfolgreich mit dem drvloadBefehl geladen (er wurde nach entpackt C:\DRIVERS\WIN\AMT\MEI\MEI\HECI.inf; C: war mein USB-Flashlaufwerk), jedoch funktionierte er irgendwie nicht für mich, der MEUpdate.CMDfehlgeschlagen ist.

Es ist mir mit einem anderen "Paket" gelungen: Intel Management Engine Interface 7.1 und Serial Over LAN (SOL) -Treiber . Nach dem Laden von HECI.inf (das extrahiert wurde c:\DRIVERS\WIN\AMT\ME_SW\Drivers\MEI\HECI.inf) habe ich auch geladen C:\DRIVERS\WIN\AMT\ME_SW\Drivers\SOL\mesrle.inf, bin aber nicht 100% sicher, dass es notwendig war - ich möchte das Experiment nicht wiederholen.

Vergessen Sie übrigens nicht, Intel AMT vor dem Firmware-Upgrade im BIOS-Setup zu aktivieren und anschließend zu deaktivieren;)

0
larkey

Ich habe einen Weg gefunden, mit nativem Linux (oder sogar mit DOS / EFI: Verwenden Sie einfach die entsprechenden Tools im Systemprogramm-Download anstelle der Linux-Tools).

Lenovo bietet uns zwei Dinge an: Management Engine Interface (MEI) oder Management Engine-Software und die Management Engine-Firmware (ME). Ersteres wird benötigt, um einen Treiber (HECI) für den Zugriff auf und den Flash-Zugriff auf das ME bereitzustellen, letzteres ist das Flash-Hilfsprogramm und das Flash-Image. Da wir Linux verwenden, benötigen wir nur die Flash-Tools und die Firmware . In meinem Fall hieß es " r0dmu01w.exe", ich werde FWPkg.exeab jetzt " " verwenden.

  1. Extrahieren Sie die Firmware mit Innoextract $ innoextract FWPkg.exeoder Wein$ wine FWPkg.exe
  2. Dadurch wird ein Ordner " app" in Ihrem aktuellen Verzeichnis ("innoextract)" oder im Ordner " ME" des Weinstammverzeichnisses " C:\DRIVERS\" erstellt, der bei Bedarf erstellt wird (Wein). Wir werden uns nur für die " ME_<version>_[Consumer/Corporate]_*_Production.bin" Datei (en) (das Firmware-Image) und das MEUpdate.CMDFlash-Skript interessieren, das ein " FWUpdLcl(64).exe" aufruft .

Intel bietet Distributoren zwar eine Linux-Version dieses Tools an, wir können sie jedoch hier herunterladen (inoffiziell!). Dies sind die Intel ME System Tools, ich habe eine ME v11, also habe ich "Intel CSME System Tools v11" heruntergeladen, ich werde es METools.rarvon nun an " " nennen .

  1. Extrahieren Sie die Dateien $ unrar x METools.rar
  2. Innerhalb des extrahierten Verzeichnisses befindet sich eine FWUpdate/LINUX(64)/Portable/FWUpdLclDatei.
  3. Gehen Sie zum Pfad der Datei und fügen Sie Ausführungsberechtigungen hinzu: $ chmod +x FWUpdLcl
  4. Schauen Sie sich das " MEUpdate.CMD" Skript mit einer Zeile an, die ein bisschen so aussehen sollte:

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

    Wir sind nur an der OEMID-Flagge interessiert, ich bezeichne sie als $OEMID. Alternativ können Sie das MEInfoDienstprogramm " " verwenden, dies muss jedoch iomem=relaxedin der Kernel-Ladebefehlszeile festgelegt werden.

  5. Verwenden Sie nun das Linux-Tool als Administrator und aktualisieren Sie Ihre Firmware. Sie verwenden die Consumer-Variante, wenn Ihr Gerät Intel AMT nicht unterstützt (AMT-fähige CPUs haben das "vPro" -Logo):

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

    Das generische Flag ist unter Linux nicht verfügbar. Die einzige Dokumentation, die ich finden konnte, war "Durchführen des Updates über MEI ohne Anmeldeinformationen" - aber wir scheinen es nicht zu benötigen. AllowSV ermöglicht die Aktualisierung derselben Version.

Das war's, Sie sollten jetzt eine aktualisierte ME-Firmware haben.


Edit: Ich habe gerade festgestellt, dass jemand schon die gleiche Lösung gefunden hat, die der Vollständigkeit halber verlinkt ist.