Bundesamt für Sicherheit in der Informationstechnik

VBScript

VBScript ist eine von Microsoft im Jahre 1995 entwickelte Skriptsprache, die auch unter der Bezeichnung "Visual Basic Scripting Edition" bekannt ist. Es handelt sich bei dieser Skriptsprache um eine Untermenge der ebenfalls von Microsoft entwickelten Programmiersprache Visual Basic, die bislang nur auf Windows-Plattformen unterstützt wird.

Die Skriptsprache ist unter anderem entwickelt worden, um als Aktiver Inhalt HTML-Seiten um dynamische Elemente zu erweitern. Dies können Interaktionen mit dem Anwender, das Öffnen zusätzlicher Fenster oder die Anzeige von Meldungen über bestimmte Ereignisse sein.

Das Einbinden in die Webseite kann auf zwei verschiedene Arten geschehen. Es kann zum einen der Skriptcode direkt in die Webseite eingefügt werden, zum anderen kann eine separate VBScript-Datei in die Webseite eingebunden werden. In beiden Fällen wird über spezielle Markierungen – die so genannten Tags – kenntlich gemacht, dass es sich um Skriptcode handelt. Stößt der Browser bei der Abarbeitung einer Webseite auf ein Skript-Tag, wird zur Ausführung des Skriptcodes der für diese Skriptsprache zuständige Skriptinterpreter aufgerufen.

Damit ein Browser die Skriptelemente in den HTML-Seiten unabhängig von der Plattform ausführen kann, ist ein Skript-Interpreter direkt in den Browser eingebunden. Der VBScript-Interpreter oder auch VBScript-Scripting-Host wurde hierfür erstmals in den Internet Explorer 3.0 von Microsoft implementiert. Andere Web-Browser wie der Netscape Navigator unterstützen VBScript nicht. Für den Netscape Navigator werden zwar von Drittanbietern entsprechende Plug-Ins angeboten, diese besitzen aber oft nicht den vollen Sprachumfang von VBScript.

Wegen der engen Bindung von VBScript an die Microsoft-Betriebssysteme findet die Skriptsprache auf anderen Plattformen keine Anwendung. Auch der Internet Explorer für Macintosh-Betriebssysteme unterstützt kein VBScript.

Da nur Anwender mit Internet Explorer und einem Windows-Betriebssystem HTML-Seiten mit VBScript-Elementen vollständig wahrnehmen, ist der Anwenderkreis stark eingeschränkt. Dementsprechend selten findet VBScript in HTML-Seiten Verwendung.
Weitaus häufiger wird VBScript als Sprache zur Abarbeitung von lokalen Skriptdateien verwendet. In solchen Skriptdateien werden im Textformat Anweisungen aufgelistet, die von einem Skript-Interpreter der Windows Script Host Link zu DefWindowsScript_allg.doc-Umgebung interpretiert und ausgeführt werden.

Gefahren und Risiken im Umgang mit VBScript

Für den Anwender kann die Ausführung von VBScript-Code in Webseiten ein Sicherheitsrisiko bedeuten. So unterstützt beispielsweise VBScript Funktionen zur Datei- und zur Registrierungsbearbeitung.

Eine weitere Gefährdung ist durch die Möglichkeit gegeben, ActiveX-Controls innerhalb des VBScript-Codes zu verwenden. VBScript ist in der Lage, mit lokal registrierten ActiveX-Controls zu kommunizieren und auf deren Funktionen zurückzugreifen. Angreifer können diese Tatsache ausnutzen, um betriebssystemnahe Funktionen auszuführen. Bei bösartiger Absicht können so lokale Daten ausgelesen oder manipuliert werden.

Wegen der Komplexität der Skript-Interpreter ist es wahrscheinlich, dass die Implementierungen des Interpreters selbst Fehler enthalten. Logische Programmierfehler oder Pufferüberläufe können von Angreifern ausgenutzt werden, um Zugriff auf den lokalen Rechner des Anwenders zu erhalten.