IE-Hotfixes und kumulative IE-Updates

Wie auch bei Windows, existieren bei Internet Explorer je Version zwei unterschiedliche Code-Entwicklungsumgebungen:

GDR (General Distribution Release) und
LDR (Limited Distribuition Release)

Die Security-relevanten Änderungen werden in beiden Versionen jeweils gepflegt. Fixes, welche in der Breite verteilt werden müssen (bspw. um ein Crash-Szenario zu lösen) werden ebenfalls in beiden Versionen (LDR und GDR) eingepflegt. Solche Fixes werden dann auch im KB-Artikel des kumulativen IE-Updates entsprechend referenziert. Beispielsweise im derzeit aktuellen Update MS10-071 mit dessen KB2360131 unter “Weitere Informationen” –> “Im Sicherheitsupdate enthaltene, nicht sicherheitsrelevante Updates”

Es gibt aber auch noch die Hotfixe, die eben nicht in der Breite verteilt werden (müssen). Dies sind insbesondere Fixes, die zumeist von Firmen angefordert werden um dort spezifische Probleme zu lösen. Die Verteilung eines separaten Hotfixes außerhalb von Windows Update bzw. WSUS ist in einer solchen gemanagten Umgebung ebenfalls gegeben.

Woran erkenne ich LDR- oder GDR-Versionen?

Die Versionsstände bei IE8 in LDR liegen bei 8.0.6001.2xxxx (bspw. 8.0.6001.23060)
Die Versionsstände bei IE8 in GDR liegen bei 8.0.6001.1xxxx (bspw. 8.0.6001.18975)

Was passiert bei der Installation eines Hotfixes oder eines kumulativen IE-Updates?

Bei der normalen Installation eines kumulativen IE-Updates auf Windows Vista oder Win7wird überprüft, ob eine der zu installierenden Dateien eine LDR-Version ist. Ist eine Datei in der LDR-Version installiert (sprich ein Hotfix wurde installiert) , so werden alle Dateien aus dem kumulativen IE-Update in der LDR-Version nach %WINDIR\System32 installiert. Ansonsten wird der GDR-Teil nach %WINDIR%\SYSTEM23 kopiert, und der LDR-Teil wird in den SideBySide-store (unterhalb von %WINDIR%\winsxs) kopiert.

Wird ein "älterer" Hotfix installiert (bspw. mit einer mshtml.dll Version 8.0.6001.22050), so schaut der Installer im SideBySide-store nach ob dort die Datei in einer noch neueren Version vorliegt (durch den LDR-Teil eines kumulativen IE-Updates). Ist dies der Fall, so wird nicht der Hotfix installiert, sondern das letzte kumulative IE-Update in dessen LDR-Version, so dass am Ende der Hotfix inklusive der Security-Updates aktiv ist, und die mshtml.dll dann in der noch neueren Version aus dem zuletzt installierten kumulativen IE-Update vorliegt.

Wird ein neuer Hotfix installiert, dessen Datei eine höhere Version hat, als das aus dem LDR-Teil des zuletzt installierten kumulativen IE-Updates, wird auch nur der Hotfix selber installiert, und tauscht lediglich die DLL aus, die der Hotfix beinhaltet.

Wird dann später ein neues kumulatives Update installiert, so wird dieses dann in der LDR-Version installiert und tauscht damit die im Update enthaltenen Dateien aus.

Für Windows XP und Windows Server 2003 gilt prinzipiell das gleiche, bis auf den Speicherort für den LDR-Zweig, da es hier den winsxs-Ordner nicht gibt.
Bei diesen Betriebssystemen wird dann der Teil in den Hotfix-Migrationsordner (c:\windows\$hf_mig$\<KB-Artikel-Nummer>) kopiert und bei Bedarf von dort entnommen.

Durch dieses Verfahren ist sichergestellt, dass die Security-Updates aktiv bleiben, auch wenn ein Hotfix installiert wird.

Viele Grüße,
- Heiko