Killbit

Das Killbit (auch bekannt als Kill-Bit oder Kill Bit) ist ein Eintrag in der Windows-Registrierungsdatenbank, der die Aktivierung von Software-Teilen (COM-Komponenten, insbesondere ActiveX-Elemente) mit Sicherheitslücken verhindern soll. Das Killbit unterstützt eine Methode der Softwaretechnik, die in Microsoft-Betriebssystemen (insbesondere MSHTML) eingeführt wurde.

Abgrenzung

Das Killbit ist kein Bit, sondern wird durch einen 4-Oktett großen Wert mit dem Namen "Compatibility Flags" und dem Datentyp REG_DWORD in der Windows-Registrierungsdatenbank repräsentiert.[1]

Anwendung und Wirkungsweise

Eine Software kann die dahinterstehende Methode unterstützen, in dem die Instanzierung bzw. Ausführung von COM-Komponenten trotz anderweitiger Anforderung verhindert wird, wenn folgende Bedingungen erfüllt sind:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\ActiveX Compatibility\CLSID[1]
Im Falle von 64-Bit-Betriebssystem auch
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Internet Explorer\ActiveX Compatibility\CLSID[1]
Wobei CLSID für die Identifikationsnummer der Komponente steht.
  • Unter diesem Pfad ist der Wert "Compatibility Flags" auf 0x00000400 gesetzt.[1]

Software die das Killbit unterstützt

Beispiel

Regedit mit Killbit-Eintrag

Das ActiveX-Control mit der CLSID {73BCFD0F-0DAA-4B21-B709-2A8D9D9C692A} hat einen Eintrag "Compatibility Flags" in der Windows-Registrierungsdatenbank mit dem Wert 0x00000400. Siehe Bild rechts. Da der Internet Explorer diese Methode unterstützt, wird dieses ActiveX-Control nicht ausgeführt, auch dann nicht, wenn das ActiveX-Control in einer adressierten HTML-Datei (nicht zu verwechseln mit HTAs) eingebettet ist.

Lösung für gesperrte Komponenten

Liefert ein Entwickler eine neue, korrigierte Fassung seiner durch ein Killbit gesperrten Active-X-Komponente aus, muss er dieser eine neue CLSID geben. Damit Webseiten und Anwendungen nun diese neue Version verwenden, obwohl sie nur die alte CLSID kennen, kommt das sogenannte Phoenix-Bit zum Einsatz. Dabei handelt es sich um einen weiteren Registry-Eintrag an gleicher Stelle, der eine alternative CLSID für die gesperrte Komponente festlegt – die CLSID der neuen Version. In diesem Registry-Schlüssel HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\Active-X Compatibility\<CLSID> sind die Einträge für das Killbit ("Compatibility Flags = 0x00000400 (1024)") und das Phoenix-Bit ("AlternateCLSID = <neue CLSID>") enthalten[2].

Einzelnachweise

  1. a b c d e f g h Technet Artikel "The Kill-Bit FAQ: Part 1 of 3"Beschreibung der Registry-Pfade, Einträge und deren Wirkungsbereich
  2. Technet Artikel "The Kill-Bit FAQ: Part 2 of 3"Beschreibung des Phoenix-Bit