JavaScript/Anwendung und Praxis/Local Machine Zone Lockdown

Aus SELFHTML-Wiki
Wechseln zu: Navigation, Suche

Der Local Machine Zone Lockdown (engl. für Sperrung der Zone des lokalen Computers) bewirkt, dass in HTML-Seiten im lokalen Umfeld sämtliche "aktiven Inhalte" standardmäßig deaktiviert werden.



Dies ist eine an sich vernünftige Maßnahme, da die Same-Origin Policy einen Punkt außer Acht lässt: Ein Script darf im Kontext der Herkunftsdomain ohne Begrenzung schalten und walten sowie mittels XMLHttpRequest Daten empfangen und versenden. Das kann zu einem schwerwiegenden Problem werden, wenn das Script nicht im Web, sondern lokal ausgeführt wird. Lokal bedeutet, dass das Dokument auf einer Festplatte des Client-Rechners liegt und von dort aus im Browser geöffnet wird. Die URI beginnt dann mit file://localhost/, in der Kurzschreibweise file:///.

Die Konsequenz ist, dass ein solches Script prinzipiell alle Dateien auf den erreichbaren Datenträgern auslesen kann (aber nicht ändern - zumindest nicht über XMLHttpRequest alleine). Mit einigen Kniffen können diese abgegriffenen Daten ins Web gesendet werden. Somit ließen sich vertrauliche Daten ausspionieren. Es stellt daher ein grundlegendes Problem dar, wenn fremde Dokumente mit JavaScript auf den eigenen Rechner gelangen.

Der Internet Explorer auf einem Rechner mit Windows stellt daher alle lokalen Dokumente mit Scripten unter Generalverdacht und verhindert ihre Ausführung mit einer Warnmeldung, die prinzipiell jedes Mal mit einer neuerlichen Freigabe quittiert werden muss:


Warnhinweis:Das Ausführen von Scripts wurde für diese Seite eingeschränkt


Dies führt zu dem widersinnig erscheinenden Ergebnis, dass dieselbe Seite, die im Internet (in einer http-Umgebung) trotz der dort in der Regel geltenden höheren Sicherheitsanforderungen anstandslos dargestellt wird, in der lokalen Umgebung hingegen (in der ohnehin beliebige Programme gestartet werden können) als ein erhöhtes Sicherheitsrisiko eingestuft wird.

Aufhebung der Beschränkung[Bearbeiten]

Es gibt zwei Möglichkeiten, diese Beschränkung aufzuheben, ohne in jeder Browsersitzung die Einzelfreigabe durchführen zu müssen:

Internetoptionen im Browser[Bearbeiten]

Sie als Nutzer können durch die folgende Änderung in den Browsereinstellungen den Local Machine Zone Lockdown pauschal wieder ausschalten:

  • Gehen Sie in Extras - Internetoptionen - Registerkarte Erweitert - Abschnitt Sicherheit
  • Markieren Sie dort "Ausführung aktiver Inhalte in Dateien auf dem lokalen Computer zulassen" (falls Sie das Dokument auf der lokalen Festplatte haben) und/oder "Ausführung aktiver Inhalte von CD auf dem lokalen Computer zulassen" (falls Sie das Dokument auf CD haben).


Screenshot


Beachten Sie: Der Nachteil einer solchen Lockerung der Sicherheitseinstellungen ist allerdings, dass auch tatsächlich bedenkliche "aktive Inhalte" wie ActiveX in der lokalen Zone entsprechend größere Rechte haben. Deshalb sollte dieser Eingriff allenfalls mit einer Überprüfung der Rechteverwaltung für "Lokales Intranet" unter Einstellungen, Registerkarte "Sicherheit", einhergehen.
Empfehlung: Lassen Sie die "Ausführung aktiver Inhalte auf dem lokalen Computer" deaktiviert, um XSS-Angriffe zu verhindern.

Mark of the Web[Bearbeiten]

Die Herausgeber eines Projekts auf HTML-Basis, das (auch) lokal laufen soll und JavaScript-Unterstützung nutzt, haben von Microsoft eine Möglichkeit erhalten, diese Sperrung außer Kraft zu setzen. Sie können der Webseite im HTML-Dateikopf einen Mark-of-the-Web-Kommentar hinzufügen, der die HTML-Datei in die Sicherheitszone der angegebenen URL zwingt. Dadurch kann die Webseite das Skript in einer weniger eingeschränkten Zone ausführen.


Beispiel
<!-- saved from url=(0013)about:internet -->


Dies bewirkt, dass die Scripte die (beschränkten) Zugriffsrechte, die sie aus dem Internet heraus hätten, erhalten. Dies reicht für normales JavaScript allemal aus.

Weblinks[Bearbeiten]