MSXFAQ MeetNow aktiv: Komm doch einfach dazu.

Exchange SE SU10/SU10V2 Bugs

Wer Exchange SE SU10v1 (Sep26) oder SU10V2 (Okt26) installiert, sollte zwei fehlende Dateien manuell kopieren sonst funktionieren die Suche, die Mailzustellung und Outlook-Verbindungen nicht richtig.

Anfang September hat Microsoft ein Security Update Paket für Exchange SE (und 2016/2019 für ESU-Kunden) bereitgestellt, welches gleich mehrere anonym ausnutzbare Sicherheitslücken stopft. Wenige Wochen darauf wurde ein SU10V2 bereitgestellt, welches noch eine weitere Sicherheitslücke stopfen soll. Allerdings scheint bei der Endkontrolle der Pakete durch Microsoft etwas schief gelaufen zu sein, denn die Installation der Updates hat auch neue Probleme geschaffen.

Bekannte Probleme von SU10

Es ist nun erst mal nicht unüblich, dass ein Updates auch eine Funktion bricht.  


Quelle: Description of version 2 of the security update for Microsoft Exchange Server Subscription Edition RTM October 2, 2026 (KB5129955)
https://support.microsoft.com/en-us/servicing/exchange/server/update/2026/5129955

Das haben wir schon bei anderen Security Updates gesehen, die einen Angriffsvektor erst einmal unwirksam gemacht haben, auch wenn eine andere Funktion dann nicht mehr gegeben war. Microsoft hat in der Regel dann 1-2 Monate später ein weiteres Update geliefert, welches die fehlende Funktion dann auf sicherere Weise zurückgebracht hat. Einige Absicherungen, z.B. "Download Domains" erfordern ein aktives Eingreifen durch den Administrator. Und sicher kennen Sie noch den Hafnium Exploit, der uns im Frühjahr 2021 ziemlich viel Arbeit beschert hat.

Details zu ContentEngine deadlock

Auf dieser Seite wende ich mich aber der Lücke "ContentEngine deadlock because of missing Korean WordBreaker rule files" zu. Auf den ersten Blick könnten Sie annehmen, dass dies sie gar nicht berührt, wenn Sie nicht zufällig ein paar Kollegen in Korea haben. So einfach ist das aber nicht, denn auf der Seite gibt es durchaus Effekte, die nicht allein an der Sprache "KR" liegen:


ContentEngine deadlock because of missing Korean WordBreaker rule files
https://support.microsoft.com/en-us/servicing/exchange/server/update/2026/5130098

Da steht zwar "might experience ... symptoms" aber die verniedlichten Symptoms sind mehr als nur nervig und der ein oder andere Exchange Admin wird den Fehler erst mal in seinem Netzwerk oder bei Clients, bei Proxy-Server oder vielleicht einer Virtualisierung suchen, denn es ist ja nicht einfach ein "geht nicht", sondern ein eher unklares Fehlerbild. Mit sind Fehler lieber, die bitte reproduzierbar und persistent sind. Hier ist es aber nicht so.

Und wie sie sich denken können, haben gleich mehrere Kunden im September und Oktober 2026 solche sporadischen Probleme bei de Suche, beim Versand von Mails und generellen Outlook Verbindungsprobleme gehabt.

Prüfung

Ehe sie nun den KB-Artikel durchlesen und prüfen, sollten Sie ganz einfach auf dem Exchange Server schauen, ob die zwei fehlenden Dateien vorhanden sind. Es handelt sich dabei um:

Dateiname               Größe   SHA265
ko.token.rule.bin       56132   8F2BD853593913EB8F73DCD4FCAC4216F216A0FF76A4569DF071BE3C36773010
ko.complex.rule.bin    717792   0390D1E9A76EF33283025CF8F164430E311584B9535949C4EA1A74B6BB107B87

Zudem muss ihr Exchange Server wirklich die Version 15.02.2562.049 oder 15.02.2562.053 haben.

MSXFAQ-Korrektur

Im nächsten Abschnitt fasse ich kurz zusammen, was Microsoft seinen Exchange Administratoren aus meiner Sicht zumutet, um nach der Installation von SU10/SU10V2 die partielle Installation wieder zu fixen. Aus meiner Sicht ist das alles andere als praktikabel. Ich habe daher ein kleines Skripte geschrieben, welches die erforderlichen Prüfungen durchführt:

exse-su10bugs.ps1
Der Download ergibt eine TXT-Datei. Passen Sie die Erweiterung auf PS1 an.

Einfach herunterladen und auf dem Exchange Server ausführen. Es sucht sich den Exchange Installationspfad aus der Registrierung, prüft die Version von EXSETUP.EXE, korwbrkr.dll und sofern vorhanden auch die beiden fehlenden Dateien. Auf einem Exchange SE SU10v2-Server könnte die Ausgabe dann wie folgt aussehen:

Dann sehen Sie, dass die zwei Dateien bei ihnen fehlen und Sie diese kopieren müssen. Laut Microsoft müssten Sie diese aus einem 714MB großen SQL-2025 Express Paket extrahieren, prüfen und installieren. Die Schritt-für-Schritt-Anleitung hat Microsoft bereitgestellt aber ist aus meiner Sicht eine Unverschämtheit. Details weiter unten. Ausnahmsweise habe ich die beiden Dateien gepackt.

exse-su10bugs-missing.zip (45kByte)

Laden Sie die Dateien einfach herunter, entpacken Sie diese und prüfen Sie den HashWert gegen die offizielle Angabe von Microsoft:


Quelle: https://support.microsoft.com/en-us/servicing/exchange/server/update/2026/5130098

Diese beiden Dateien kopieren Sie dann einfach auf ihren Exchange Server in das Verzeichnis:

Wichtig: Kopieren Sie die Dateien erst in ein Staging-Verzeichnis, z.B. C:\Temp und dann in das richtige Verzeichnis. Bitte nicht "verschieben". Nur beim Kopieren werden die ACLs aus dem Zielverzeichnis angewendet. Wer Dateien verschiebt, hängt sie nur im Verzeichnisbaum um aber die ACLs werden nicht richtig gesetzt. Dies gilt insbesondere per per RD

<ExchangeInstallPath>\Bin\Search\Ceres\Native\ko.complex.rule.bin

Dort können Sie dann den Hashwert erneut prüfen, um die korrekte Kopie zu verifizieren.

Get-FileHash -LiteralPath '<ExchangeInstallPath>\Bin\Search\Ceres\Native\ko.token.rule.bin' -Algorithm SHA256
Get-FileHash -LiteralPath '&#39;<ExchangeInstallPath>\Bin\Search\Ceres\Native\ko.complex.rule.bin' -Algorithm SHA256

Oder sie nutzen einfach wieder mein Skript:

Dann bleibt nur noch der Restart und die Kontrolle des "Search Host", z.B. mit 

# Neustart des Diensts als Administrator. Kann etwas dauern
Restart-Service -Name HostControllerService

# Kontrolle, ob er wieder läuft
Get-Process noderunner | where {$_.commandline -like "*ContentEngineNode1*"}

Das kann durchaus etwas dauern

Sollte der Dienst sich nicht beenden lassen oder nicht mehr starten, dann rät Microsoft zu einem Support Ticket. Keinesfalls sollte der Prozess hart beendet oder der gebootet werden. Ob sie der Empfehlung folgen, hängt sicher auch davon ab, wie schnell Sie jemand von Microsoft dann ans Telefon bekommen.

Korrektur laut Microsoft

Und hier noch meine ausführlichere Beschreibung, was Microsoft eigentlich von ihnen vorgibt. 

Sollten die beiden Dateien auf ihrem Exchange SE Server nach der Installation des "September 2026 SU10" oder "September 2026 SU10V2" fehlen, dann sollten Sie diese laut Microsoft über folgende Schritte besorgen und an den Platz kopieren.

Schritt Erledigt

SQL-Express 2025-Installationsquellen herunterladen

Zuerst sollen Sie die SQL-Express 2025-Installationsquellen (ca. 714MB) herunterladen.

https://download.microsoft.com/download/dea8c210-c44a-4a9d-9d80-0c81578860c5/ENU/SQLEXPR_x64_ENU.exe

 

Hashwert prüfen

Damit der Download fehlerfrei ist, sollten Sie den Hashwert prüfen.

Get-FileHash -LiteralPath 'C:\Temp\KoreanRules\SQLEXPR_x64_ENU.exe' -Algorithm SHA256

Das Ergebnis sollte "74AA90C11202A5524E769B9BC22531BAEF22D91E9B2D2E8C3CB99E89A65C5297" sein.

 

SQL-Pakete auspacken, nicht starten

Nun geht es darum, aus den 714 MB die bei Exchange fehlenden Dateien zu extrahieren. Zuerst packen wir das EXE aus. Microsoft beschreibt dazu einen PowerShell-Befehl. Ich würde das einfach in einer CMD-Shell machen mit:

C:\Temp\SQLEXPR_x64_ENU.exe /x:"C:\Temp\KoreanRules"

Ich habe das "/q" weggelassen, damit sie den Zielpfad anpassen und das Entpacken betrachten können. Dann spare ich mit den Umweg per PowerShell einen Prozess zu starten und auf das Ende über den EXIT-Code zu warten.

 

MSI-Paket extrahieren

Aus den 714 MB sind mittlerweile 1,67 GB geworden. In diesem Verzeichnisbaum brauchen wir nun das MSI-Paket, welches wir aber auch nicht installieren, sondern ebenfalls nur auspacken. Auch hier finde ich einen CMD-Aufruf ohne Verbergen der GUI zielführender und habe daher das "/qn" entfernt, damit ich etwas sehen kann

msiexec /a C:\Temp\KoreanRules\Media\x64\Setup\SQL_FULLTEXT.MSI TARGETDIR="C:\Temp\KoreanRules\Files" /norestart /L*V "C:\Temp\KoreanRules\extract.log"

 

"Wordbreaker-Files" suchen und prüfen

Das ausgepackte MSI-Paket enthält nun die in Exchange SU10V1/V2 fehlenden Dateien. Sie liegen bei mir auf "C:\temp\KoreanRules\Files\Program Files\Microsoft SQL Server\MSSQL.X\MSSQL\Binn\ftcomponents\wordbreakers" und zur Sicherheit sollten Sie den Hashwerte (Siehe oben) mit Get-Hash prüfen.

Get-FileHash -LiteralPath 'C:\Temp\KoreanRules\Files\Program Files\Microsoft SQL Server\MSSQL.X\MSSQL\Binn\ftcomponents\wordbreakers\ko.token.rule.bin' -Algorithm SHA256 
Get-FileHash -LiteralPath 'C:\Temp\KoreanRules\Files\Program Files\Microsoft SQL Server\MSSQL.X\MSSQL\Binn\ftcomponents\wordbreakers\ko.complex.rule.bin' -Algorithm SHA256 

Diese beiden Dateien müssen wir nun auf den Exchange Server einspielen aber zuerst gilt es noch die prüfen, ob dort alles schon vorhanden ist.

 

Prüfen der Exchange Zielumgebung

Ich hätte ja die nun folgenden Schritte an den Anfang gesetzt und erst mal geschaut, ob die Voraussetzungen erfüllt und und die Dateien wirklich fehlen. Sie dürfen die neue Dateien nur kopieren, wenn die Exchange Versionen und eine DLL die korrekte Version haben

exsetup.exe 15.02.2562.049 oder 15.02.2562.053 
korwbrkr.dll 16.0.5194.1000 mit 326544 Bytes und dem SHA256-Hash "1C6BD8E144BA677EBCC83323AE59DB3881918170F9B3A5189B44611558B92C61"

Zudem sollten die beiden im langen Prozess extrahierten Dateien auch wirklich fehlen

 

Kopieren der Dateien

Als vorletzten Schritt kopieren Sie dann die beiden Dateien an den passenden Ort

<ExchangeInstallPath>\Bin\Search\Ceres\Native\ko.rule.rule.bin 
<ExchangeInstallPath>\Bin\Search\Ceres\Native\ko.complex.rule.bin

 

Neustart des Search Host Controller

Der Restart ist erforderlich aber wird von den Anwendern bemerkt. Hier müssen Sie entscheiden, ob sie schnell eine Lösung brauchen oder erst die Anwender über einen MaintenanceMode des Servers schwenken.

Restart-Service -Name HostControllerService

 

Kontrolle des Service

Prüfen Sie, ob der Prozess auch wirklich läuft. Hier beschreibt Microsoft den Weg über den Taskmanager. Das geht per PowerShell schneller

Get-Process noderunner | where {$_.commandline -like "*ContentEngineNode1*"}

 

Also ich weiß nicht, wer bei Microsoft sich das ausgedacht hat. Wwarum wurden die Updates und Fixes z.B. nicht in SU10V2 integriert, welches am 2. Oktober, also über 3 Wochen nach dem SU10v1 vom 8. Sep 2026 released wurde. Warum erkennt der CSS-Exchange:HealtchChecker die fehlenden Dateien noch nicht.

Das wirkt alles wie mit der heißen Nadel gestrickt.

Weitere Links