Anleitungen

Surface Pro TPM-Modul: Mit diesem Script Schwachstelle prüfen und beheben

Das Surface Pro 3 besitzt wie jedes andere Surface ein sogenanntes Trusted Platform Module (TPM). Dieser kleine Chip erweitert Computer-Systeme um grundlegende Sicherheitstechnologien und ist unter Windows mit für die Funktionalität von BitLocker verantwortlich.

Bereits vor einem Jahr hat der Hersteller Infineon eine Schwachstelle in seinem TPM-Chip entdeckt, welche den Namen CVE-2017-15361 trägt. Der von Infineon produzierte Chip wird lediglich im Surface Pro 3 verbaut, in neueren Modellen kommt ein anderer Chip zum Einsatz.

Wer ist von der Sicherheitslücke betroffen?

Offiziell heißt es, dass im Pro 3 lediglich dieser Chip zum Einsatz kommt. Dennoch bietet Microsoft in seinem Blog ein kleines Script an, mit welchem man schnell und einfach testen kann ob man betroffen ist oder nicht.

Ob ihr dazu gehört, testet ihr ganz einfach:

1. Kopiert das nachfolgende Script und speichert es als Powershell-Script, z.B. surface_pro_3_infineon_tpm_check.ps1

$IfxManufacturerIdInt = 0x49465800 # 'IFX'
  
function IsInfineonFirmwareVersionAffected ($FirmwareVersion)
{
    $FirmwareMajor = $FirmwareVersion[0]
    $FirmwareMinor = $FirmwareVersion[1]
    switch ($FirmwareMajor)
    {
        4 { return $FirmwareMinor -le 33 -or ($FirmwareMinor -ge 40 -and $FirmwareMinor -le 42) }
        5 { return $FirmwareMinor -le 61 }
        6 { return $FirmwareMinor -le 42 }
        7 { return $FirmwareMinor -le 61 }
        133 { return $FirmwareMinor -le 32 }
        default { return $False }
    }
}

function IsInfineonFirmwareVersionSusceptible ($FirmwareMajor)
{
    switch ($FirmwareMajor)
    {
        4 { return $True }
        5 { return $True }
        6 { return $True }
        7 { return $True }
        133 { return $True }
        default { return $False }
    }
}

$Tpm = Get-Tpm
$ManufacturerIdInt = $Tpm.ManufacturerId
$FirmwareVersion = $Tpm.ManufacturerVersion -split "\."
$FirmwareVersionAtLastProvision = (Get-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\TPM\WMI" -Name "FirmwareVersionAtLastProvision" -ErrorAction SilentlyContinue).FirmwareVersionAtLastProvision

if (!$Tpm)
{
    Write-Host "No TPM found on this system, so the issue does not apply here."
}
else
{
    if ($ManufacturerIdInt -ne $IfxManufacturerIdInt)
    {
        Write-Host "This non-Infineon TPM is not affected by the issue."
    }
    else
    {
        if ($FirmwareVersion.Length -lt 2)
        {
            Write-Error "Could not get TPM firmware version from this TPM."
        }
        else
        {
            if (IsInfineonFirmwareVersionSusceptible($FirmwareVersion[0]))
            {
                if (IsInfineonFirmwareVersionAffected($FirmwareVersion))
                {
                    Write-Host ("This Infineon firmware version {0}.{1} TPM is not safe. Please update your firmware." -f [int]$FirmwareVersion[0], [int]$FirmwareVersion[1])
                }
                else
                {
                    Write-Host ("This Infineon firmware version {0}.{1} TPM is safe." -f [int]$FirmwareVersion[0], [int]$FirmwareVersion[1])
                    if (!$FirmwareVersionAtLastProvision)
                    {
                        Write-Host ("We cannot determine what the firmware version was when the TPM was last cleared. Please clear your TPM now that the firmware is safe.")
                    }
                    elseif ($FirmwareVersion -ne $FirmwareVersionAtLastProvision)
                    {
                        Write-Host ("The firmware version when the TPM was last cleared was different from the current firmware version. Please clear your TPM now that the firmware is safe.")
                    }
                }
            }
            else
            {
                Write-Host ("This Infineon firmware version {0}.{1} TPM is safe." -f [int]$FirmwareVersion[0], [int]$FirmwareVersion[1])
            }
        }
    }
}

2. Als nächstes tippt ihr im Startmenü Powershell ein. Diese startet ihr als Administrator, den entsprechenden Punkt findet ihr im Kontextmenü.

3. Wechselt nun in das Verzeichnis, wo die frisch angelegte Powershell-Datei liegt. In meinem Fall war dies das Laufwerk D:

4. Mit dem folgenden Befehl könnt ihr das Script einfach ausführen:

.\surface_pro_3_infineon_tpm_check.ps1

5. Es kann vorkommen, dass eigene Scripts noch nicht von euch erlaubt worden sind. In diesem Fall gebt einfach folgenden Befehl ein:

Set-ExecutionPolicy Unrestricted

Anschließend startet ihr nochmal das Script, welches nun normal durchlaufen müsste.

Ergebnis

Sollte bei euch als Ergebnis “This Infineon firmware version *** TPM is not safe. Please update your firmware” herauskommen, seid ihr betroffen und müsst ein manuelles Updates einspielen. Andernfalls seid ihr sicher 😉.

[Auch interessant] Surface Pro 3 erhält neue Firmware mit Sicherheitsverbesserungen

Vorbereitung zum Update

Wer nun also betroffen ist, sollte sich knapp 20-30 Minuten Zeit nehmen um das Update einzuspielen. Wir haben extra für euch eine Anleitung bereitgestellt, welche euch gut durch den Prozess führt.

Vorbereitung treffen

  • Wir haben diese Anleitung selbst auf einem Surface Pro 3 getestet und hatten keine Probleme. Dennoch kann es natürlich zu Problemen o.ä. kommen. WindowsUnited übernimmt keinerlei Verantwortung.
  • Zunächst einmal raten wir dringend dazu, alle verfügbaren Updates über Windows Update einzuspielen.
  • Habt ihr auf dem Surface Pro Windows Hello eingerichtet, werden die Einstellungen dafür verloren gehen. Ihr müsst euch nach dem Update mit dem Microsoft-Konto und dem dazugehörigen Passwort anmelden und Windows Hello erneut einrichten.
  • Schließt das Surface an das Ladegerät an. Updates sollten nie über den Akku installiert werden.
  • Optimal ist die Verwendung mit dem Type-Cover. Per Touch-Screen geht zwar auch, ist im UEFI aber eher umständlich.
  • Ihr benötigt einen USB-Stick für die neue Firmware. Von der Update Software wird dieser Stick komplett gelöscht. Stellt sicher, dass ihr darauf keine Daten habt.
  • Diese Anleitung basiert auf der Standardverschlüsselung mit BitLocker. Verwendet ihr eine andere, müsst ihr diese vorher deaktivieren.

Backup anlegen

Gerade bei einem solchen Update kann immer etwas schief gehen, daher ist eine Sicherung sämtlicher Daten das A und O! Sollte dann etwas schief gehen könnt ihr relativ einfach Windows 10 neuinstallieren und eure Daten wiederherstellen.

Update der Surface Pro 3 TPM-Firmware

Bevor ihr gleich loslegen könnt benötigt ihr die Firmware auf einem speziell hergerichteten USB-Stick. Wie ihr das macht erklären wir euch nun:

TPM-Update Tool installieren und bootfähigen USB Stick erstellen

1. Ladet die Software Microsoft_Surface_Pro_3_Tpm_Update_Tool_Setup.msi aus dem Microsoft Download-Center herunter.

2. Mit einem Klick auf die MSI-Datei installiert ihr nun das TPM-Update Tool.

3. Nach der erfolgreichen Installation findet ihr das Tool im Startmenü unter “Microsoft Surface Pro 3 TPM Update Tool“.

4. Nachdem ihr das Update-Tool gestartet habt, werden verschiedene Seite angezeigt. Klickt euch durch die einzelnen Seiten und wählt euren USB-Stick aus. Anschließend wird der USB-Stick gelöscht und mit dem Update versehen.

Hinweis Sollte die Formatierung im Tool einmal fehlschlagen, formatiert den Stick selber mit dem FAT-32 über den Explorer und versucht es erneut.

TPM-Firmware Update einspielen

Die folgenden Schritte basieren auf der Standardverschlüsselung durch BitLocker. Verwendet ihr eine andere Lösung muss diese jetzt deaktiviert sein.
  1. Geht ins Startmenü und sucht nach PowerShell. Öffnet diese über das Kontextmenü als Administrator.
  2. Mit dem folgenden Befehl wird die BitLocker-Verschlüsselung pausiert. Das ist für das weitere Vorgehen notwendig. Nach dem Update aktivieren wir diese natürlich wieder.
    Suspend-Bitlocker -MountPoint C: -RebootCount 0
  3. Fahrt das Surface normal herunter und wartet bis es ganz aus ist.
  4. Haltet nun die Taste Lautstärke + und gleichzeitig den Ein/Aus-Knopf gedrückt. Haltet diese beiden Tasten solange gedrückt, bis das Surface Logo erscheint. Auf diesem Wege kommt ihr in das UEFI-Menü des Pro 3.
  5. Geht im UEFI-Menü nun auf den Punkt Delete All Secure Boot Keys (Unterhalb von Secure Boot Control) wählt diesen mit Enter aus. Die folgende Sicherheitsfrage bestätigt ihr mit yes.
  6. Geht nun auf Secure Boot Control und wählt diesen mit Enter aus. Der Wert sollte auf Enabled stehen, wählt dort Disabled aus.
  7. Speichert nun die Einstellungen, indem ihr ganz unten auf Exit Setup klickt. Bestätigt bei der Abfrage, dass ihr die neuen Werte wirklich speichern wollt.
  8. Das Surface bootet jetzt neu und startet Windows. Während des Boot-Vorgangs sollte, wenn ihr alles richtig gemacht habt, ein knallrotes Surface-Logo angezeigt werden (Es wird auch ein wenig länger dauern).
  9. Am Anmelde-Bildschirm angekommen, fahrt ihr das Surface direkt wieder herunter. Ihr müsst euch nicht anmelden.
  10. Nachdem das Surface wieder komplett aus ist, steckt den präparierten USB-Stick rein.
  11. Haltet nun die Lautstärke – (Nicht die Lauter-Taste) und gleichzeitig die Ein/Aus-Taste gedrückt. So bootet das Surface direkt vom Stick. Wenn das Surface-Logo erscheint könnt ihr loslassen.
  12. Das Firmware-Update wird nun direkt vom USB-Stick aus installiert, wenn ihr den Vorgang nicht zu Beginn innerhalb von 5 Sekunden abbricht (Aber das wollt ihr ja eh nicht 😉). Der gesamte Vorgang sollte nur wenige Sekunden in Anspruch nehmen.
  13. Sobald da Update abgeschlossen ist erscheint am unteren Bildschirm-Rand eine gelbe Prompt mit dem Text “fs1:\>”. Über den Befehl exit wird das Surface neugestartet. Der Stick kann nach dem Windows gestartet ist entfernt werden.

Einrichtung des Surface Pro 3 nach dem Update

Natürlich müsst ihr jetzt wieder BitLocker starten und Windows Hello einrichten (Wenn ihr das verwendet habt). Geht dazu wie folgt vor:

1. Im Anmeldebildschirm müsst ihr euch zunächst mit eurem richtigen Passwort anmelden.

2. Im Startmenü gebt ihr tpm.msc ein um die Verwaltung des TPM-Modules zu starten.

3. Im Bereich Status muss “Das TPM ist einsatzbereit” stehen. Sollte dort etwas anderes stehen, startet das Surface noch einmal neu. Bringt das keine Abhilfe müsst ihr den Vorgang nocheinmal neu starten.
Eventuell steht in dem Bereich “Die TPM-Wartungsaufgabe wird noch ausgeführt…“. In diesem Fall schließt die Konsole und wartet noch ein paar Minuten.
4. In dem Bereich TPM-Herstellerinformationen sollte jetzt die Version 5.62.3126.2 angezeigt werden.

5. Ist alles korrekt, fahrt das Surface wieder herunter und wartet bis es komplett aus ist.

6. Über die bekannte Tastenkombination Lautstärke + und Ein/Aus kommt ihr wieder in das UEFI-Menü.

7. Im UEFI-Menü angekommen wechselt ihr wieder auf den Punkt Secure Boot Control. Hier wechselt ihr wieder mit Enter von Disabled wieder auf Enabled.

8. Anschließend geht auf den Punkt darunter Install all factory default keys und wählt dann “Windows & 3rd-party UEFI CA (Default)” aus.

9. Verlasst das UEFI wieder über Exit Setup und bestätigt eure Änderungen.

10. Das Surface startet neu. Im Anmeldebildschirm angekommen, meldet ihr euch mit eurem Passwort an.

11. Im Startmenü gebt ihr dieses mal Bitlocker verwalten ein und startet das Programm.

12. Im geöffnetem Fenster wählt ihr Schutz fortsetzen aus.

Hinweis Wenn noch nicht erledigt solltet ihr hier auch direkt den BitLocker Wiederherstellungsschlüssel speichern. Ich persönlich habe den immer in meinem Microsoft-Account gesichert.

13. Wenn ihr nun das Surface neustartet, sollte das Surface Logo wieder normal in weiß angezeigt werden.

Einrichtung von Windows Hello

Hattet ihr Windows Hello im Einsatz, bzw. wollt es nun einsetzen: Folgt unserer Anleitung hier.

Andernfalls seid ihr nun fertig und wieder ein Stück sicherer 😉.

Hinweis: Diese Anleitung basiert auf dem von Microsoft vorgeschlagenem Weg: https://support.microsoft.com/en-us/help/4100374/surface-pro-3-trusted-platform-module-tpm-update-tool

Zeige Kommentare

Teilen
veröffentlicht von
Lars

Neuste Artikel

Microsoft Teams: Schonfrist wird um 1 Jahr verlängert

Die App Microsoft Teams hat in den letzten Monaten einigen Auftrieb erhalten, indem sie durch…

29. April 2024

Im Juni ist es so weit: Datum für das diesjährige Ubisoft Forward-Event steht fest

Nachrichten aus dem Hause Ubisoft. Dort hat man beschlossen, das Forward-Event auch in diesem Jahr…

29. April 2024

Amazon Deal: Xbox Series S – Starter Bundle – 11 Prozent sparen

Microsoft kann Gaming – der Beweis dafür ist die beliebte Xbox Series S Spielekonsole. Wer…

29. April 2024

Microsoft Flight Simulator – der Deutschland-Patch ist da!

Der Microsoft Flight Simulator wird optisch weiter aufgewertet. Wir wissen, dass es auch unter unseren…

26. April 2024

Amazon Deal: INNOVAR Höhenverstellbarer Schreibtisch 120 x 60 cm – jetzt 15 Prozent sparen

Die meisten unserer Leser dürften zu Hause über einen Schreibtisch verfügen, an welchem nicht nur…

26. April 2024

Microsoft OneNote jetzt auch über die Apple Vision Pro nutzbar

Manche Dinge brauchen ihre Zeit. Als die Apple Vision Pro angekündigt wurde und letztlich an…

25. April 2024

Diese Webseite benutzt Cookies.