Sicherheit in vernetzten Systemen - RRZ Universität Hamburg
Sicherheit in vernetzten Systemen - RRZ Universität Hamburg
Sicherheit in vernetzten Systemen - RRZ Universität Hamburg
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
3.4. HOSTSICHERHEIT<br />
Diese Schutzmaßnahmen des Dateisystems gelten jedoch nicht für den Superuser. Wenn Daten auch<br />
vor dem Adm<strong>in</strong>istrator oder e<strong>in</strong>em Benutzer mit Root-Rechten geschützt werden sollen, ist der E<strong>in</strong>satz<br />
von Verschlüsselungssoftware erforderlich, z.B. CFS (Cryptographic File System) (siehe [CFS, 1997]<br />
und Abschnitt 3.4.7).<br />
3.4.3 Dienste<br />
Da die meisten Angriffe gegen Rechner über Schwachstellen <strong>in</strong> den laufenden Netzwerk-Diensten<br />
(f<strong>in</strong>gerd, telnetd, ftpd, httpd, ...) geführt werden, s<strong>in</strong>d grundsätzlich auf jedem Rechner nur solche<br />
Dienste zu starten, die unbed<strong>in</strong>gt zum ordnungsgemäßen Betrieb benötigt werden.<br />
Ist es nicht möglich, auf e<strong>in</strong>en bestimmten, bekanntermaßen unsicheren Dienst zu verzichten, so kann<br />
dieser eventuell durch e<strong>in</strong>en sichereren ersetzt werden, der über die gleiche Funktionalität verfügt,<br />
aber zusätzliche <strong>Sicherheit</strong>sfunktionen bee<strong>in</strong>haltet. Beispielsweise ist es sehr ratsam, die r-Dienste<br />
(rlog<strong>in</strong>d,rshd,...)durchdasSSH-Paketzuersetzen.AlsweiteresBeispieldientder„f<strong>in</strong>ger“-Daemon,<br />
welcher <strong>in</strong> se<strong>in</strong>er Standardkonfiguration sehr viele Informationen über die Benutzer e<strong>in</strong>es Rechners<br />
liefert (Log<strong>in</strong>name, Zeit, Homeverzeichnis, ...),die e<strong>in</strong>em Angreifer hilfreich se<strong>in</strong> können. Abhilfe<br />
kann hier z.B. der „restricted f<strong>in</strong>ger“-Daemon liefern, bei dem die Ausgaben frei konfigurierbar s<strong>in</strong>d.<br />
Darüberh<strong>in</strong>aus sollte der „TCP-Wrapper“ ([TCP-Wrapper, 1999]) e<strong>in</strong>gesetzt werden, der den Zugriff<br />
auf die Netzwerk-Dienste nur von bestimmten Rechnern aus gestattet.<br />
3.4.4 SetUID- / SetGID-Root-Programme<br />
Dateien, bei denen das SetUID- bzw. das SetGID-Bit gesetzt ist, werden mit den Rechten des Eigentümers<br />
bzw. der Gruppe ausgeführt. Dies gestaltet sich besonders problematisch, wenn bei diesen<br />
Programmen Root als Eigentümer ausgewiesen ist. Denn <strong>in</strong> diesem Fall kann der Ausführende, beispielsweise<br />
duch e<strong>in</strong>en „Buffer Overflow“ oder andere Fehler <strong>in</strong>nerhalb des Programms, ebenfalls<br />
Root-Rechte erlangen. E<strong>in</strong> Beispiel für solch e<strong>in</strong> Programm ist passwd:<br />
-r-sr-xr-x 3 root sys 12345 Apr 27 1995 /b<strong>in</strong>/passwd<br />
Programme wie passwd oder su benötigen dieses Bit. Meist gibt es allerd<strong>in</strong>gs <strong>in</strong> e<strong>in</strong>er Standard<strong>in</strong>stallation<br />
etliche SetUID-Programme, die entweder nicht benötigt werden oder die unnötigerweise mit<br />
diesen Rechten ausgestattet worden s<strong>in</strong>d. Daher sollten nach der Installation von neuer Software oder<br />
Patches regelmäßig nach diesem Bit gesucht werden. Der folgende Aufruf erledigt dies, wobei es <strong>in</strong><br />
Abhängigkeit vom jeweiligen Betriebssystem wiederum zu Unterschieden kommen dürfte:<br />
f<strong>in</strong>d / \( -perm -004000 -o -perm -002000 \) -type f -pr<strong>in</strong>t<br />
Die SetUID / SetGID-Bits der gefundenen Programme können anschließend mit dem chmod-Befehl<br />
zurückgesetzt werden. Als Schutzmaßnahme vor unbekannten Dateisystemen können diese mit der<br />
Option „nosuid“ <strong>in</strong> das Dateisystem e<strong>in</strong>hängt werden, wodurch e<strong>in</strong>e generelle Ignorierung der SetUID /<br />
SetGID-Bits erreicht wird. Sollte auf bekanntermaßen unsichere SetUID-Root-Programme nicht verzichtet<br />
werden können, so s<strong>in</strong>d diese <strong>in</strong> e<strong>in</strong>er „Chroot“-Umgebung auszuführen. E<strong>in</strong>e Chroot-Umgebung<br />
ist e<strong>in</strong> Verzeichnisbaum, der alle zur Ausführung benötigten Dateien enthält und von den dort<br />
laufenden Programmen nicht ohne größeren Aufwand verlassen werden kann. Auf diese Art und Weise<br />
erhält e<strong>in</strong> Angreifer nach e<strong>in</strong>em „Buffer-Overflow“ lediglich Zugriff auf eben diesen e<strong>in</strong>zelnen<br />
Verzeichnisbaum – und nicht auf das komplette Dateisystem.<br />
SS 99, Sem<strong>in</strong>ar 18.416: <strong>Sicherheit</strong> <strong>in</strong> <strong>vernetzten</strong> <strong>Systemen</strong> 43