JavaScript / JScript

Deine aktuelle Einstellung:

JavaScript ist deaktiviert !

Erstmal vorweg:

Java und Javascript sind nicht dasselbe!

Beides sind Programmiersprachen doch während JavaScript fest in jedem Browser verankert ist und jede Webseite JavaScript-Anweisungen enthalten kann, muss zum Ausführen von Java-Programmen eine Erweiterung installiert sein. Sicherheitsprobleme gibt es in beiden Welten.

Fast wöchentlich werden neue Lücken in Java bekannt, und das trotz der Bemühungen von Hersteller Oracle, diese zeitnah zu stopfen. Viele Computer-Benutzer fragen sich daher, ob es nicht besser ist, wegen dieser Probleme nicht nur auf Java, sondern auch gleich auf JavaScript zu verzichten - das ist aber nicht unbedingt ein Vorteil.

Während Java eine höhere Programmiersprache ist, mit der man Software erstellen kann, wird JavaScript heute meist in Webseiten für die Interaktion verwendet, etwa um einer Seite Leben einzuhauchen. Es gibt zwar auch hier Sicherheitsrisiken, allerdings vergleichsweise wenige. Java-Apps hingegen haben Zugriff auf den Computer und können deswegen größere Sicherheitsprobleme verursachen.

Für JavaScript gibt es eine Reihe von Anwendungsmöglichkeiten, die von Spielereien bis zu sinnvollen Ergänzung einer Weltnetzseite reichen.

Typische Anwendungsgebiete von JavaScript sind:

  • Dynamische Manipulation von Webseiten über das Document Object Model
  • Plausibilitätsprüfung (Datenvalidierung) von Formulareingaben noch vor der Übertragung zum Server
  • Anzeige von Dialogfenstern, Lightboxes
  • Senden und Empfangen von Daten, ohne dass der Browser die Seite neu laden muss (Ajax)
  • Sofortiges Vorschlagen von Suchbegriffen (suggesting search)
  • Banner oder Laufschriften
  • Verschleierung von E-Mail-Adressen zur Bekämpfung von Spam.
  • Mehrere Frames auf einmal wechseln oder die Seite aus dem Frameset "befreien"

Die am häufigsten anzutreffende Anwendung sind Menüs und der Austausch von Bildern beim Überfahren mit der Maus ("Mouse-Over-Effekt", "Hover-Buttons").

Beispiel Mouse-Over-Effekt:

Smile :-)       MouseOver

Einige Anwendungen, die mit JavaScript möglich sind, werden als "schlechter Stil" angesehen. Viele davon können deshalb inzwischen auch vom Browser blockiert werden.

Beispiele:

  • Quelltext "verschleiern", um diesen vor dem Besucher zu verstecken
  • Verschleiern von Internetadressen, auf die ein Link verweist
  • Deaktivieren des Kontextmenüs, um zu erschweren, dass Bilder oder die gesamte Seite abgespeichert werden können
  • Deaktivieren der Kopierfunktion, um zu erschweren, dass Texte oder Bilder kopiert werden können
  • Unaufgeforderte (Werbe-)Pop-ups oder Pop-unders
  • Ungewolltes Öffnen von Fenstern, teilweise auch Öffnen beliebig vieler Fenster
  • Ungewolltes Schließen des Browserfensters
  • Ungewollte Größenänderung des Browserfensters
  • Blockieren der Anwender mit zahllosen aufeinanderfolgenden Dialogfenstern
  • Bei anfälligen Webanwendungen kann JavaScript auch von Dritten missbraucht werden, etwa per XSS (Codeeinschleusung).
  • JavaScript-Navigation.
    Barrierearme Webseiten zeichnen sich dadurch aus, dass sie auch bei abgeschaltetem JavaScript möglichst uneingeschränkt navigierbar bleiben. Oft schränkt das nicht aktivierte JavaScript die Benutzbarkeit einer Webseite ein.

Aktuelle Netzbetrachter führen JavaScript nur in einer Sandbox aus. In diesem "Sandkasten" können sie nur wenig Unheil anrichten, da kein direkter Zugriff auf Hardware oder Festplatte möglich ist aber wenn sich z.B: beim Besuch einer Seite automatisch weitere Browser-Fenster öffnen, ist meist JavaScript im Spiel. Es ist prinzipiell sehr einfach, den Rechner durch Hunderte von zusätzlichen Fenstern lahmzulegen. (Dieser Link öffnet nur eines.) Die meisten der bekannt gewordenen Sicherheitslücken in Netzbetrachtern sind eng mit JavaScript verknüpft. Wo es nicht Hauptgegenstand des Bugs ist, benötigt man es häufig, um die Sicherheitslücke ausnutzen zu können.

Da immer mehr Webseiten mit deaktiviertem JavaScript kaum bedienbar sind,
sollte JavaScript nur eingeschränkt eingeschaltet bleiben.

Wie du JavaScript kontrollierst erfährst du im NoScript Leitfaden auf den nächsten Seiten.