17.06.2014 Aufrufe

Sicherheit in vernetzten Systemen - RRZ Universität Hamburg

Sicherheit in vernetzten Systemen - RRZ Universität Hamburg

Sicherheit in vernetzten Systemen - RRZ Universität Hamburg

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

KAPITEL 9. „ACTIVE CONTENT“ UND MOBILER CODE<br />

9.2 Active Content<br />

9.2.1 Begriffsbestimmung<br />

Unter „Active Content“ oder aktiven Inhalten sollen all diejenigen Technologien verstanden werden,<br />

die beim Betrachten e<strong>in</strong>er HTML-Seite auf dem Rechner des Betrachters wie e<strong>in</strong> Programm<br />

ausgeführt werden. Es ist dabei unerheblich, ob die HTML-Seite mittels e<strong>in</strong>es Browsers von e<strong>in</strong>em<br />

Webserver geladen oder z.B. per E-Mail empfangen und mit e<strong>in</strong>em HTML-fähigen E-Mail-Klienten<br />

betrachtet wird.<br />

Wir werden dabei die folgenden Technologien betrachten:<br />

1. Java<br />

2. JavaScript<br />

3. VBScript<br />

4. Active X<br />

5. Netscape-Plug-Ins<br />

Wie aus der Aufstellung zu erkennen ist, handelt es sich um e<strong>in</strong> weites Feld, das von <strong>in</strong>terpretierten<br />

Sprachen mit e<strong>in</strong>gebauten <strong>Sicherheit</strong>skontrollen bis h<strong>in</strong> zu Technologien reicht, bei denen neue Funktionsbibliotheken<br />

<strong>in</strong> das System gebracht werden, die ohne jegliche Überwachung ausgeführt werden.<br />

Aus diesem Grunde sollen die e<strong>in</strong>zelnen Technologien im folgenden etwas genauer dargestellt werden.<br />

9.2.2 Technologien<br />

Java<br />

Java entstand 1991 als Forschungsprojekt von Sun Microsystems und sollte ursprünglich als e<strong>in</strong>fache<br />

und kompakte Sprache zur Programmierung von Elektrogeräten wie Fernsehern und Kühlschränken<br />

dienen. 1994 stellte Sun dann aber den Browser HotJava vor, der erstmals demonstrierte, daß sich die<br />

Sprache auch zur Programmierung komplexerer Anwendungen (Applications) eignet. Darüber h<strong>in</strong>aus<br />

wurde demonstriert, wie man kle<strong>in</strong>e Codebibliotheken, sogenannte Applets, <strong>in</strong> Webseiten e<strong>in</strong>b<strong>in</strong>den<br />

und so die bis dato eher statischen Webseiten dynamisch mit dem Benutzer <strong>in</strong>teragieren lassen können.<br />

Java ist e<strong>in</strong>e objektorientierte Sprache, die ke<strong>in</strong>e globalen Variablen oder Funktionen kennt, sondern<br />

nur Objekte, die ihrerseits Methoden und Attribute besitzen und konkrete Ausprägungen e<strong>in</strong>er Klasse<br />

s<strong>in</strong>d. Fast jede Klasse liegt dabei als eigenständige Datei mit der Endung .class vor und kann bei<br />

Bedarf dynamisch zur Laufzeit des Programms geladen werden.<br />

Aus der Sicht des Programmierers s<strong>in</strong>d Applications dabei spezielle Objekte, die e<strong>in</strong>e Methode ma<strong>in</strong>()<br />

implementieren, während es sich bei Applets um e<strong>in</strong> von dem Objekt java.applet abgeleitetes K<strong>in</strong>dobjekt<br />

handelt. Dabei können Applications direkt ausgeführt werden. Sie entsprechen e<strong>in</strong>em normalen<br />

Programm. Applets s<strong>in</strong>d dagegen darauf angewiesen, daß schon e<strong>in</strong>e Anwendung existiert, die e<strong>in</strong>e<br />

Laufzeitumgebung zur Verfügung stellt. Üblicherweise handelt es sich dabei um e<strong>in</strong>en Browser.<br />

126 SS 99, Sem<strong>in</strong>ar 18.416: <strong>Sicherheit</strong> <strong>in</strong> <strong>vernetzten</strong> <strong>Systemen</strong>

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!