Aktive Inhalte

Aktive Inhalte

Bewegte Bilder, Grafiken, die auf Aktionen des Benutzers reagieren und "echte" Anwendungen auf einer Webseite werden von vielen Internetnutzern als das Nonplusultra gesehen. Auch über verschiedene Webseiten erhältliche Dienstleistungen wie etwa Online-Virenscans erhalten vom Kreise der Nutzer eine immer höhere Aufmerksamkeit. Dass sich mit den verwendeten Technologien jedoch auch alles andere als harmlose Dinge tun lassen, ist vielleicht vielen Internetnutzern gar nicht bekannt.

Diese besondere Form von Webseitenelementen, die dazu dient, Dynamik oder besondere Funktionalität in eine ansonsten statische, starre Webseite zu bringen, wird unter dem Oberbegriff "aktive Inhalte" zusammengefasst. Das Besondere : die Programmkomponenten, die für die Dynamik sorgen, werden stets auf den Computer des Anwenders heruntergeladen und dort ausgeführt. Das bedeutet aber gleichzeitig, dass aktive Inhalte ein Sicherheitsproblem darstellen können

Im Normalfall laufen alle Programmkomponenten, die auf den Computer des Anwenders geladen werden, in einer abgeschlossenen Umgebung ab, von der aus es keinen unerwünschten Zugriff auf das übrige System, geschweige denn auf Geräte oder Festplatten gibt. In zwei speziellen Fällen gilt dies jedoch nicht: bei einem Programmierfehler der Ausführungsumgebung und bei ActiveX in Zusammenhang mit dem Internet Explorer.
Bei einem Programmierfehler und einer daraus entstehenden Sicherheitslücke der Sandbox, welche ja letztlich auch nur Software ist, kann es einem findigen Programmierer durch geeignete Kombination von verschiedenen Technologien gelingen, aus der Sandbox auszubrechen und Zugriff auf Teile oder den ganzen Rest des Computersystems zu erlangen. Dann wäre es beispielsweise denkbar, dass ein in einer Webseite integriertes Programm eine Schadsoftware auf den Computer des Anwenders transportiert.

Im Folgenden finden Sie eine Auflistung der häufigsten Technologien, die in Zusammenhang mit aktiven Inhalten anzutreffen sind.

Java-Applets

James Gosling
James Gosling
Zwischen 1992 und 1995 entwickelte eine Gruppe um James Gosling der Firma Sun Microsystems eine Programmiersprache, mit der es möglich sein sollte, Haushaltsgeräte zu programmieren und zu steuern. Allerdings erkannte man schnell das Potential der neuen Programmiersprache als universelle Netzwerksprache.
Eine sehr wichtige Eigenschaft von Java ist die Plattformunabhängigkeit. Das bedeutet, dass ein in Java geschriebenes Programm theoretisch auf jedem beliebigen Computer lauffähig sein sollte. Voraussetzung dafür ist ein weiteres Programm, welches die Befehle innerhalb des Java-Programms interpretieren und diese für den jeweiligen Computer verständlich machen kann. Dieses Programm wird "Virtual Machine", also zu deutsch "Virtuelle Maschine" genannt. Die Java Virtual Machine (JVM) ist heute für eine Vielzahl von Betriebssystemen verfügbar.

Eine besondere Form der Java-Programme sind nun die Applets. Diese kleinen Programme lassen sich in Webdokumente einbinden und können in relativ kurzer Zeit über ein Netzwerk bzw. das Internet übertragen werden. Java-Applets werden auf den Computer des Anwenders geladen und dort ausgeführt. Allerdings haben Applets im Normalfall keinen Zugriff auf Laufwerke und können auch zu keinem anderen Computer eine Verbindung herstellen, als zu demjenigen, von dem sie selbst stammen.

Leider haben sich in der Vergangenheit diverse Sicherheitslücken in der virtuellen Maschine gefunden, die es dem Applet eines Angreifers ermöglichen, aus der abgeschlossenen Umgebung der Sandbox auszubrechen und auf den übrigen Computer zugreifen zu können. Über diese Sicherheitslücken können vor allem Daten gestohlen und fremde Programme auf dem Computersystem des Anwenders ausgeführt werden.

Neben allen potentiellen Gefahren, die von Java ausgehen können, gibt es auch eine Anwendung, in der Java unverzichtbar geworden ist : das Onlinebanking.
Der größte Teil der Onlinebanking-Anwendung wird allerdings nicht auf Ihren Computer heruntergeladen, sondern auf dem Server der Bank ausgeführt. Allerdings kann es sein, dass die Eingabemaske zur Anmeldung, den Sie in Ihrem Browser sehen können, selbst als Java-Applet realisiert ist.

ActiveX-Controls

ActiveX Technologie ActiveX bezeichnet eine Technologie der Firma Microsoft, die dazu dienen soll, Informationen zwischen verschiedenen Anwendungen leichter zu transportieren. Sie kann darüber hinaus dazu eingesetzt werden, um multimediale Inhalte beispielsweise in Webseiten zu integrieren. ActiveX war dabei als eine Art Antwort auf die Programmiersprache Java der Firma Sun Microsystems konzipiert worden. Allerdings gibt es ActiveX heute nur noch für Windows-Betriebssysteme.

Der wunde Punkt dieser Technologie ist deren Unsicherheit. Denn für die Ausführung von ActiveX-Inhalten existieren auf einem Windows-Computer keine oder kaum Sicherheitsregeln. Hinzu kommt der Umstand, dass die Verarbeitung von ActiveX-Komponenten im Internet Explorer alles andere als sauber integriert wurde. Das bedeutet, dass eine in ActiveX entwickelte Anwendung grundsätzlich Zugriff auf alle Bestandteile eines Computers hat, und zwar auch dann, wenn diese Anwendung über das Internet als Teil einer Webseite geladen wurde. Und hier steckt auch das eigentliche Problem.
Sehr häufig finden sich auf präparierten Webseiten ActiveX-Komponenten im Zusammenspiel mit JavaScript, um zum Beispiel einen Trojaner unbemerkt auf den PC des Anwenders zu bringen. Sehr oft werden dabei seit langem bekannte, jedoch noch nicht geschlossene Sicherheitslücken des Internet Explorers ausgenutzt.

Eine weitere Möglichkeit, die Schwachstellen von ActiveX auszunutzen, sind entsprechende Komponenten, die bereits auf dem Computer des Anwenders installiert sind. So enthält Microsoft Office in der Version 2000 eine ActiveX-Komponente, mit der sich Office-Programme fernsteuern lassen. Mittels dieser Komponente ist es jedoch genauso gut machbar, eine beliebige Datei auf dem Computer anzulegen. Das entsprechende ActiveX-Programm ist von Microsoft übrigens als "sicher" eingestuft.

VBScript

Visual Basic Skript ist eine von Microsoft entwickelt Skriptsprache, die es erlaubt, den Programmquelltext direkt in Webseiten einzubinden, genau wie dies bei Javascript möglich ist. Und genau wie bei Javascript dient VBScript dann zur Dynamisierung von Webseiten. So können zum Beispiel bei gewissen Ereignissen Meldungsfenster angezeigt oder neue Fenster geöffnet werden. Allerdings wird VBScript nur optimal auf Windows-Computern mit einem Internet Explorer unterstützt. Für andere Browser existieren zwar teilweise Erweiterungen, dennoch bieten diese oftmals nicht den vollen Sprach- und Funktionsumfang.

Allerdings bedeutet die Beschränkung auf Windows/Internet Explorer eine gewisse Einschränkung der "Zielgruppe". Und genau aus diesem Grunde kommt VBScript auf Webseiten nur selten zum Einsatz.
Wenn doch, sind zum Beispiel Kombinationen aus VBScript und ActiveX denkbar. Ein VBScript-Programm würde dann ganz einfach auf ein ActiveX-Programm auf dem Computer des Anwenders zugreifen und dessen Funktionen nutzen.

Viel häufiger allerdings wird VBScript lokal auf den Windows Computern verwendet. Der Grund dafür ist eine Technologie, die Microsoft "Windows Skript Host" genannt hat. Mit dieser Technologie lassen sich in VBScript geschriebene Programme auf einem Windows-Computer wie "normale" Programme ausführen. Das bedeutet auch, dass so ein Skript beispielsweise auf das Dateisystem, sprich auf die Festplatte zugreifen kann. Und genau da liegt das Problem.

Über den Internet Explorer hinaus unterstützen nämlich auch die Programme Outlook bzw. Windows Mail die VBScript-Technologie, was diese Anwendungen wiederum angreifbar gegenüber schadhaftem VBScript-Code in EMails oder in deren Anhang macht, wie im Jahr 2000 der "Loveletter"-Wurm gezeigt hat. Dieser in VBScript geschriebene und in einer Datei namens "loveletter.txt.vbs" untergebrachte Schädling nutzte den Windows Skript Host, um Zugriff auf das Outlook-Adressbuch zu erlangen, sich selbst in EMails weiterzuversenden und diverse Daten auf dem betroffenen PC unbrauchbar zu machen.
Selbstverständlich sind auch andere EMailprogramme anfällig, wenn diese die wahre Natur eines Anhangs nicht aufzudecken vermögen, indem sie eine zweite Dateierweiterung unterschlagen und so den Anwender dazu verleiten, ein im EMailanhang verborgenes VBScript-Programm auszuführen.

Javascript

Javascript wurde im Jahre 1995 von der amerikanischen Firma Netscape in Zusammenarbeit mit der Firma Sun Microssystems entwickelt und schließlich standardisiert. Es ist eine eigene Programmiersprache, die in Webseiten eingebunden werden kann und auf dem Computer des Anwenders ausgeführt wird.

Normalerweise ist Javascript eine sichere Sprache, da die in ihr geschriebenen Programme in einer eng begrenzten Umgebung ausgeführt werden, die z.B. keinen Zugriff auf die Festplatte zulässt. Allerdings ist die Sicherheit dieser Sprache von vielen Faktoren abhängig, so z.B. auch davon, dass der Hersteller des Browsers die Javascriptverarbeitung korrekt in diesen eingebaut hat und dass der Browser selbst keine Sicherheitslücke bietet.

Neben allen Qualitäten der Sprache, auf die viele Webseitenprogrammierer schwören mögen, gibt es dennoch einige konkrete Nachteile von Javascript. Vor allem zielen diese "Nachteile" darauf ab, den Anwender zu täuschen. Dies beginnt bereits beim Verändern der Statuszeile des Browsers, in dem einfach für einen Verweis auf der Webseite ein falsches Ziel eingeblendet wird.
Ebenso können Browser oder ganze Systeme zum Absturz gebracht werden, wenn mit einem Javascript-Programm ständig neue Fenster geöffnet werden. Dies geht dann solange weiter, bis alle verfügbaren Ressourcen des Computers aufgebraucht sind und die Maschine ganz einfach stehen bleibt.
Einige spezielle Befehle können auch einfach den Browser anhalten, ohne dass sonst irgendetwas passiert.

Gegenmaßnahmen

Die wirkungsvollste Maßnahme : schalten Sie jegliche Unterstützung von Javascript in Ihrem Browser ab. Wenn Sie Anwender des Firefox sind, installieren Sie die Erweiterung "NoScript". Mit Hilfe dieser Erweiterung können Sie für jede einzelne Webseite die Ausführung von Java, Javascript und anderen Technologien freigeben oder sperren. Für den Internet Explorer gibt es eine solche einfach umzusetzende Möglichkeit derzeit nicht. Hier müssen Sie selbst die Sicherheitsstufe über die Internetoptionen setzen und auch möglicherweise weiter anpassen.

Auch sollten Sie dafür sorgen, dass Ihr EMailprogramm sämtliche EMails ausschließlich als reinen Text anzeigt. Sollten Sie ein Programm verwenden, welches in der Lage ist, aktive Inhalte auszuführen, ist dieses ebenso eine mögliche Fehlerquelle wie der Webbrowser selber.

Schließlich sollten Sie noch die von Ihnen verwendete Software stets aktuell halten. Dazu zählt der Webbrowser nebst Erweiterungen, die installierte Java-Version sowie etwaige installierte Zusatzprogramme ("Plug-In"), beispielsweise "Flash Player" für die Ausführung von Flash-Animationen.