1. Grundprobleme von Datenschutz und Datensicherheit
Die Sicherheit von Java
Beste Quelle: Das Buch
Securing Java.
Die Idee von Java
- Volle objektorientierte Programmiersprache.
- Abkömmling von C++.
- Kompilation zu portablem Byte-Code - Interpretation des Byte-Codes durch
»virtuelle Maschine«.
- Anwendung im WWW:
- `Applets' werden aus HTML aufgerufen - HTML-Markierung
<APPLET> ... </APPLET>
- der Byte-Code wird vom Server zum Browser geladen,
- und vom Browser ausgeführt.
[Die virtuelle Maschine wird hier »Sandbox« genannt. Sie bietet nur
eingeschränkte Möglichkeiten aus Sicherheitsgründen.]
Das Sicherheitsmodell von Java
- Sichere Programmiersprache mit strenger Typ-Bindung.
- Seit Version 2 digitale Signatur von Klassen vorgesehen.
- Anwendungen von virtueller Maschine ausgeführt,
z. B. Sandbox für Applets.
- Byte-Code-Prüfung (»Verifier«) vor Ausführung.
- Sicherheitsmanager (Rechteprüfung für »Klassen« = Programm-Module)
[z. B. Datei- und Netzzugriffe einschränkbar, ebenso Aufrufe anderer
Klassen].
- Vertrauen abstufbar (ab Version 2).
- Kryptographische Standard-Bibliothek.
Sicherheitsprobleme in Java
- Echte Sicherheitsbeweise nicht möglich, jede Sicherheitsüberprüfung
täuschbar.
- Sicherheitsmodell ziemlich komplex
[Z. B. das dynamische Linken:
Welche Klasse darf andere Klassen nachladen und aus welchem Pfad?]
- Sicherheitsmodell anfällig für Implementationsfehler in der
Laufzeitumgebung (virtuelle Maschine, Sicherheitsmanager, ...).
Solche Fehler wurden bisher in jeder Implementierung
gefunden.
- Byte-Code ist echte Obermenge von Java
(Sicherheitsschranken des Java-Compilers umgehbar).
- Aufbrauchen der System-Ressourcen nicht zu verhindern (-> Denial of Service).
Für bewusst installierte Anwendungsprogamme (im Gegensatz zu aktivem Inhalt)
ist Java sicherer als andere Programmiersprachen.
Weitere Sicherheitsprobleme mit Applets
- Quellcode nicht vor Ausführung einsehbar.
- Durchschleusen anderer aktiver Inhalte möglich.
- Applet kann Verbindung zum Ursprungsserver aufnehmen
(-> Rückmeldung, Ausspionieren).
- Passwort-Fallen möglich.
- E-Mail-Fälschung möglich.
- Immer wieder werden Implementationsfehler in Netscape oder
dem Internet Explorer von Microsoft entdeckt.
- Es gibt dutzende bösartiger Applets im WWW.
Vorlesung Datenschutz und Datensicherheit,
Johannes-Gutenberg-Universität Mainz
Autor: Klaus Pommerening, 31. März 1999;
letzte Änderung: 16. November 2001
E-Mail an Pommerening »AT« imbei.uni-mainz.de.