Sprache:  Deutsch English (Beta)

Folgen:

Microsoft Exchange Server Sicherheitslücken: Aktuelle Build-Nummern, Übersicht aller Updates und Prüfung

Microsoft Exchange Server
Bild: Microsoft
(Beitragsbild: © 2021 Microsoft)

Der Exchange Server von Microsoft kommt einfach nicht weg von schlechten Schlagzeilen. Zudem blickt man im Update-Dschungel von Microsoft einfach nicht mehr durch: Welches CU ist sicher? Habe ich alle Patches? Ist das Prepare-Schema durch? Wir klären in diesem Ratgeber, was die aktuellen Sicherheitsupdates sind und wie man am Exchange-Server ganz einfach einen „Vulnerability Check“ durchführt.

Seit März veröffentlicht Microsoft fast monatlich Sicherheitspatches für ihre Exchange Server Produkte, welche Sicherheitslücken haben, welche nicht zu unterschätzen sind. Admins seien eindringlich gewarnt, ihre Exchange-Server auf den aktuellsten Stand zu bringen. Im März die Hafnium-Lücke, weitere Patches im April und die neuen Pwn2Own-Lücken mit dem Patch von Mai 2021. Darüber hinaus gibt es noch wichtige Sicherheitsupdates von Juli 2021. Da soll man noch jemand durchblicken, welche Patches jetzt installiert sind. Zum Glück bietet Microsoft hier mittlerweile Abhilfe.

Microsoft Exchange Server: Version und Sicherheitspatch des Servers herausfinden

Bevor man mit den Updates startet, sollte man einen Überblick darüber bekommen, welche Version (CU) derzeit eingesetzt wird. Hierfür gibt es den bereits bekannten Befehl, welcher in der Exchange Management Shell ausgeführt wird:

Get-ExchangeServer | Format-List Name, Edition, AdminDisplayVersion

Dieser liefert die aktuelle Build-Nummer im Kurzformat (AdminDisplayVersion), welche man mithilfe der Übersicht bei Microsoft einem CU zuordnen kann. Ein Exchange Server 2016 mit AdminDisplayVersion „Version 15.1 (Build 2242.4)“, somit Build-Nummer „15.1.2242.4“, weist also aktuell CU 20 auf.

Da dies in diesem Fall nur bedingt hilft, lässt sich auch der aktuelle Stand des Sicherheitspatches (SU) prüfen. Dazu folgenden Befehl ebenfalls in der Exchange Management Shell als ganzes reinkopieren, Enter drücken und etwas warten:

$ExchangeServers = Get-ExchangeServer | Sort-Object Name
ForEach ($Server in $ExchangeServers) {
Invoke-Command -ComputerName $Server.Name -ScriptBlock { Get-Command Exsetup.exe | ForEach-Object { $_.FileversionInfo } }
}

Anschließend bekommen wir die „FileVersion“ angezeigt, welche die Build-Nummer im Langformat ergibt. Die Ausgabe „15.01.2242.012“ würde in diesem Beispiel auf folgenden Update-Stand hindeuten, heißt, alle verfügbaren Updates für CU 20 wären installiert:

Microsoft Exchange Server Version und Build-Nummer

Bild: TechnikNews

Microsoft Exchange Server: Aktuelle Build-Nummern (August 2021)

Sollte die lange Build-Version des Exchange-Servers nicht mindestens folgende Nummern aufweisen, dann sollte schnell mit dem Installieren der aktuellen Sicherheitsupdates gestartet werden.

Wichtig: Eine aktuelle Versionsnummer bedeutet nicht unbedingt, dass alle bisherigen Sicherheitsupdates korrekt eingespielt wurden. Das neueste Sicherheitsupdate aus Juli 2021 stopft nur ältere Lücken bis inklusive März 2021. Die Sicherheitsupdates von April und Mai müssen extra installiert werden. Um zu überprüfen, ob man wirklich alle Updates – und auch korrekt – installiert hat, zu unterem Punkt „Vulnerability Check“ scrollen.

Exchange 2013

  • CU 23: 15.00.1497.023 (Sicherheitsupdate Juli 2021 installiert)

Exchange 2016

  • CU 19: verwundbar, neuestes Sicherheitsupdate nur mit CU 20 verfügbar
  • CU 20: 15.01.2242.012 (Sicherheitsupdate Juli 2021 installiert)
  • CU 21: 15.01.2308.014 (Sicherheitsupdate Juli 2021 installiert)

Exchange 2019

  • CU 9: verwundbar, neuestes Sicherheitsupdate nur mit CU 10 verfügbar
  • CU 10: 15.02.0858.015 (Sicherheitsupdate Juli 2021 installiert)
  • CU 11: 15.02.0922.013 (Sicherheitsupdate Juli 2021 installiert)

Microsoft Exchange Server: Die aktuellen Sicherheitsupdates

Kurze Zusammenfassung, welche Sicherheitsupdates für die jeweilige Exchange-Version definitiv installiert sein sollten. Die Sicherheitsupdates für Pwn2Own (aus Mai 2021) patchen auch die Hafnium-Lücken aus März. Achtung: Ansonsten stopft etwa ein neueres Sicherheitsupdate aus Juli 2021 keine ältere Lücke aus vorherigen Updates (April, Mai)!

Bislang keinerlei Updates (besonders die sehr kritischen aus März, April und Mai) eingespielt? Gratulation, höchstwahrscheinlich ist der Server bereits eine Spamschleuder und die Lücken werden bereits aktiv ausgenutzt. Kryptotrojaner, Backdoors und andere Viren sind vorprogrammiert. Um den Job als IT-Admin zu retten, sollte der Server sofort vom Netz genommen, auf Spuren von möglichen Einbrüchen überprüft, ein sauberes altes Backup eingespielt und dringendst damit gestartet werden, alle Updates ab April aufzuholen.

Für alle Updates gilt: Alle Setups sollten unbedingt in geöffneter CMD oder PowerShell mit Administrator-Rechten ausgeführt werden. Nur so kann ein reibungsloses Update sichergestellt werden. Ein Update via Windows Update kann ebenso zu Problemen führen, da teilweise Hinweise zu beachten sind (dazu weiter unten).

Exchange 2013

Exchange 2016

Exchange 2019

Fallbeispiele anhand von Exchange 2016

  • Beispiel 1: Es wird ein Exchange 2016 in CU 20 eingesetzt. Sollten zum Stand August 2021 noch keinerlei Sicherheitspatches eingespielt worden sein, so müssen alle Updates aus April, Mai und Juli schrittweise eingespielt werden.
  • Beispiel 2: Es wird ein Exchange 2016 in CU 20 eingesetzt, der im Juni auf CU 21 aktualisiert wird. Nur das Sicherheitsupdate aus Juli 2021 muss eingespielt werden, da ein CU-Update alle Sicherheitsupdates vor ihrem Erscheinungsdatum beinhaltet. Da CU 21 im Juni erschienen ist, enthält es bereits die Sicherheitspatches aus April, Mai und davor.
  • Beispiel 3: Es wird ein Exchange 2016 in CU 19 eingesetzt. Achtung, der Server ist verwundbar, da für die neueste Sicherheitslücke kein Update mehr zur Verfügung steht. Ein Update auf CU 21 wird dringendst empfohlen (mit Umweg über CU 20). Anschließend muss das Sicherheitsupdate von Juli 2021 für CU 21 installiert werden.

Dieselben Beispiele sind natürlich auch bei einem Betrieb eines Exchange 2019 gleichermaßen gültig. Nach Installation obiger Updates muss noch ein PrepareSchema-Update durchgeführt werden, dazu weiter im nächsten Abschnitt.

PrepareSchema durchführen: Notwendig für Updates aus Juli 2021 (mit * markiert)

Für oben mit Stern markierte Updates, sind weitere Schritte erforderlich, um die Lücke komplett zu schließen. Es handelt sich dabei um ein Schema-Update, welches unbedingt durchgeführt werden muss.

Was tun bei aktuell eingesetzter Version …

Exchange 2013 CU 23

Zuerst das Sicherheitsupdate wie gewohnt mit Administrator-Rechten in der PowerShell/CMD installieren. Anschließend Schema-Update aus den aktualisierten Setup-Dateien in der CMD/PowerShell mit Administrator-Rechten ausführen:

"C:\Program Files\Microsoft\Exchange Server\V15\Bin\Setup.exe" /PrepareSchema /IAcceptExchangeServerLicenseTerms

Exchange 2016 CU 20

Schema-Update mit den Dateien aus den Setup-Files von CU 21 durchführen. Somit zuerst den Sicherheitspatch wie gewohnt mit Administrator-Rechten in der PowerShell/CMD installieren. Anschließend ISO-Datei aus CU 21 herunterladen, Doppelklick (im Folgenden eingehängt unter F:), anschließend Schema-Update in der CMD/PowerShell mit Administrator-Rechten ausführen. Das Setup selbst muss nicht gestartet werden, es ist also kein Update auf CU 21 erforderlich:

"F:\Setup.exe" /PrepareSchema /IAcceptExchangeServerLicenseTerms

Exchange 2016 CU 21

Sollte mit dem Update auf CU 21 schon ein Schema-Update erfolgt sein, ist keine weitere Aktion mehr erforderlich. Ansonsten das Setup aus CU 21 mit Schema-Update erneut starten:

"C:\Program Files\Microsoft\Exchange Server\V15\Bin\Setup.exe" /PrepareSchema /IAcceptExchangeServerLicenseTerms

Exchange 2019 CU 9

Schema-Update mit den Dateien aus den Setup-Files von CU 10 durchführen. Somit zuerst den Sicherheitspatch wie gewohnt mit Administrator-Rechten in der PowerShell/CMD installieren. Anschließend ISO-Datei aus CU 10 herunterladen, Doppelklick (im Folgenden eingehängt unter F:), anschließend Schema-Update in der CMD/PowerShell mit Administrator-Rechten ausführen. Das Setup selbst muss nicht gestartet werden, es ist also kein Update auf CU 10 erforderlich:

"F:\Setup.exe" /PrepareSchema /IAcceptExchangeServerLicenseTerms

Exchange 2019 CU 10

Sollte mit dem Update auf CU 21 schon ein Schema-Update erfolgt sein, ist keine weitere Aktion mehr erforderlich. Ansonsten das Setup aus CU 21 mit Schema-Update erneut starten:

"C:\Program Files\Microsoft\Exchange Server\V15\Bin\Setup.exe" /PrepareSchema /IAcceptExchangeServerLicenseTerms

Exchange Server: Prüfen, ob alle Updates eingespielt sind („Vulnerability Check“)

Microsoft bietet mittlerweile einen HealthChecker an, welcher alle bislang bekannten Sicherheitslücken kennt und auf installierte Sicherheitsupdates prüft. Die aktuelle Version kann hier heruntergeladen werden und ist nicht wie – bei schnellem Überfliegen – angenommen „latest v2 release“ (für Exchange Server 2010), sondern direkt der erste Link: Download HealthChecker.ps1.

Der Quellcode des Health-Checkers kann in diesem GitHub Repository eingesehen werden. Nach dem Download führt man das Script in der Exchange Management Shell aus. Der Parameter zur Angabe des Servers ist optional, ansonsten überprüft das Script einfach den lokalen Server:

.\HealthChecker.ps1

oder

.\HealthChecker.ps1 -Server "EXSRV01"

Nach Durchlauf können einige Warnungen ausgegeben werden, die für weitere Performanceoptimierung sinnvoll sein können. Noch wichtiger sind die Warnungen zu nicht installierten Sicherheitspatches, sollten welche gefunden werden. Um einen praktischen HTML-Report ausgeben zu lassen, gibt es einen weiteren Befehl:

.\HealthChecker.ps1 -BuildHtmlServersReport -HtmlReportFile "EXSRV01check.html"

Diesen kann man durch die erzeugte Datei (EXSRV01check.html) einfach mit Doppelklick im Browser öffnen und so noch leserlicher betrachten. Andernfalls gibt es nur ein .txt Logfile, welches alle Checks aufführt.

Alle Checks erfolgreich durchgelaufen? Glückwunsch, der Server sollte vor allen bislang bekannten Sicherheitslücken sicher sein. Dann bis zur nächsten Lücke … ach ja, nicht vergessen: Sind auch alle verfügbaren Updates für Windows Server selbst über Windows Update installiert?

Zusatz: PrintNightmare-Lücke

Die Sicherheitslücken mit dem Windows Spooler sind eine weitere Sache. Benötigt man auf seinem Exchange-Server allerdings keine Druckerdienste, sollte man den Druckerdienst auch gleich noch deaktivieren. Dazu in den Windows-Diensten nach „Print Spooler“ suchen, Doppelklick darauf und den Dienst auf „Deaktiviert“ setzen. Dann sollte hier auch erstmal kein Grund mehr zur Sorge sein.

Sollte man den Druckerdienst aber benötigen, sollte man alle aktuellen Sicherheitsupdates über Windows Update einspielen. Damit ist aber eventuell noch nicht alles getan, noch nicht alle Lücken sind mit Stand August 2021 komplett behoben. Mehr Informationen zu diesem Thema gibt es in einem ausführlichen Artikel von MSXFAQ.

Empfehlungen für Dich

>> Unterstütze uns und kaufe über unsere Partnershops <<

David Wurm

Macht das TechnikNews-Ding gemeinsam mit einem tollen Team schon über einige Jahre lang. Werkelt im Hintergrund an der Server-Infrastruktur und ist auch für alles redaktionelle zuständig. Ist an der aktuellen Technik fasziniert und bloggt gerne über alles Digitale. Ist sonst in der Freizeit oftmals beim Webentwickeln, Fotografieren oder Radiomachen anzutreffen.

David hat bereits 815 Artikel geschrieben und 340 Kommentare verfasst.

Web | Facebook | Twitter | Insta | YouTube | Dell XPS 15 7590 | Google Pixel 5
Mail: david.wurm|at|techniknews.net | bitte NICHT für allgemeine Anfragen, Kooperationen! Hier lang: Kontakt
guest
Dein Name, der öffentlich angezeigt wird.
Wir werden Deine Mailadresse nicht veröffentlichen.
2 Comments
neueste
älteste beste
Inline Feedbacks
View all comments
Thomas Kammermaier

Danke für die tolle Zusammenstellung. Habe erst jetzt richtig verstanden wie das PrepareSchema genau durchgeführt werden muss und in welcher Reihenfolge. Vielen Dank!
Lg Thomas