Skip to main content.

Navigation:

2. theoretisches Aufgabenblatt

Grundlagen

  1. Was ist der Unterschied zwischen Privacy, Security und Safety? Welche Anforderungen werden an die Security eines Systems gestellt? (2 Pkt.)
  2. Was ist der Unterschied zwischen einem Virus und einem Wurm? Wie reproduzieren sich Viren und Würmer? (2 Pkt.)
  3. Nenne ein einfaches Beispiel für eine mathematische Funktion, die in erster Nährung eine Einwegfunktion ist. (2 Pkt.)
  4. Was ist unter einer Sandbox zu verstehen und wie wird eine solche Sandbox verwendet? (2 Pkt.)
  5. Was ist ein Buffer-Overflow und wie kann er zu einem Angriff auf ein System genutzt werden? (2 Pkt.)

Verfahren

  1. Wenn eine Datei gelöscht wird, dann werden ihre Blöcke im Allgemeinen der Freiliste zugeordnet, aber nicht physisch von der Festplatte gelöscht. Was denken Sie: Währe es sinnvoll, wenn das Betriebssystem jeden Block löscht, bevor es ihn freigibt? Betrachten Sie sowohl Sicherheits- als auch Leistungsaspekte in Ihrer Antwort und erklären Sie die jeweiliegen Auswirkungen. (4 Pkt.)
  2. Wie schaft es das Program passwd das Passwort des Aufrufers, aber eben nur des Aufrufers, zu ändern? (2 Pkt.)
  3. Erläutern Sie die Sicherheitsproblematik von setuid-Programmen die nicht schreibgeschützt sind. Was bedeutet der Aufruf chmod 4711 in der Kommandozeile? Kann dieser Aufruf sinnvoll sein? (2 Pkt.)
  4. Warum wird die Lampson-Zugriffsmatrix nicht direkt implementiert? (2 Pkt.)
  5. Wie werden Capability List vor Verfälschung geschützt? (3 Pkt.)

Anwendung

  1. Sie haben eine Stelle als Leiter eines Universitäts-Rechenzentrums, das gerade seine Mainframe-Systeme auf einen großen LAN-Server mit einem UNIX-Betriebssystem umgestellt hat, angetreten. An Ihrem ersten Arbeitstag kommt Ihr Assistent aufgeregt in Ihr Büro und teilt Ihnen mit, dass einige Studenten den Verschlüsselungsalgorithmus, der zum Verschlüsseln der Passwörter benutzt wird ins Internet gestellt haben. Was tun Sie und warum? (3 Pkt.)
  2. Eine Informatik-Fakultät besitzt in ihrem lokalen Netzwerk eine große Sammlung von UNIX-Maschinen. Benutzer können auf jeder Maschine ein Kommando der Form maschine# who aufrufen und damit dieses Kommando auf maschine# ausführen lassen. Dies geschieht, ohne dass sich der Benutzer in der entfernten Maschine einloggen muss. Diese Funktionalität wird dadurch implementiert, dass der Kern der Benutzermaschine das Kommando und seine UID zu der entfernten Maschine schickt. Ist dieses Verfahren sicher, wenn alle Kerne vertrauenswürdig sind? Was ist, wenn es sich bei einigen Maschinen um die PC's von Studenten handelt, die keinerlei Schutz aufweise? (3 Pkt.)
  3. Drücke die im folgenden UNIX-Verzeichnislisting dargestellten Benutzer und Rechte als Schutzmatrix aus.
    Hinweis: asw ist ein Mitglied der Gruppen users und devel; gmw ist nur Mitglied von users. Behandele beide Benutzer und beide Gruppen als Domänen, so dass die Matrix vier Zeilen (pro Domäne eine) und vier Spalten (pro Datei eine) aufweist. (6 Pkt.)
    -rw-r--r-- 2 gmw users   908 May 26 16:45 PPP_Notes
    -rwxr-xr-x 1 asw devel   432 May 13 12:30 prog1.cc
    -rw-rw---- 1 asw users 50094 May 30 17:22 project.txt
    -rw-r----- 1 asw devel 13124 May 31 14:30 splasch.gif