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.
KAPITEL 2. SICHERHEITSPROBLEME<br />
E<strong>in</strong>e Gefährdung bedeuten diese Programme, wenn es möglich ist, aus ihnen heraus unkontrolliert<br />
andere Prozesse zu starten, die dann ebenfalls root-Rechte erhalten. Bei der Ausführung von Shell-<br />
Scripten mit SetUID root kann es möglich se<strong>in</strong>, die Ausführung des Scriptes zu beenden, ohne daß<br />
die Shell selbst beendet wird (sog. Shell Escapes). Damit steht e<strong>in</strong>em Anwender e<strong>in</strong>e privilegierte<br />
Shell zur Verfügung. Oftmals verändern SetUID-Programme auch Dateien, deren Name nicht immer<br />
statisch im Programmtext abgelegt ist, so daß evtl. die /etc/passwd oder andere wichtige Systemdateien<br />
überschrieben werden können.<br />
Werden solche SetUID-Programme wirklich benötigt, so sollten sie <strong>in</strong> e<strong>in</strong>er Change Root Umgebung<br />
ablaufen, d.h. sie erhalten ke<strong>in</strong>en Zugriff auf das reale Wurzelverzeichnis des Dateisystems, sondern<br />
erhalten e<strong>in</strong> entsprechend vorbereitetes Unterverzeichnis als Wurzel. Somit können sie nicht mehr auf<br />
die Systemdateien <strong>in</strong> höheren Verzeichnissen (z.B. /etc) zugreifen.<br />
2.4.4 Anwendungen<br />
E<strong>in</strong>e weitere Gefahr stellen Anwendungen dar, die e<strong>in</strong>e Kommandosprache besitzen. Dies s<strong>in</strong>d z.B.<br />
alle gängigen Office-Pakete, die über eigene Makrosprachen (z.B. Visualbasic) verfügen. Beim Laden<br />
e<strong>in</strong>es Dokumentes kommen Befehle zur Ausführung, die im Dokument selbst stehen. Bei Dokumenten<br />
von fremden Personen gibt es ke<strong>in</strong>e Gewißheit, daß ke<strong>in</strong>e schädlichen Befehle wie z.B. das<br />
Löschen von Dateien im Dokument versteckt s<strong>in</strong>d. Es gibt sogar Viren, die <strong>in</strong> solchen Kommandosprachen<br />
verfaßt wurden (Word Makro Viren).<br />
Dasselbe gilt auch für PostScript Interpreter wie z.B. GhostScript. Auch <strong>in</strong> PostScript gibt es Befehle,<br />
die den Zugriff auf Dateien und das Starten von Prozessen erlauben (deletefile, renamefile, file,<br />
%pipe). Ebenso kann das Ausführen von unbekanntem Code (also Java, JavaScript, ActiveX) durch<br />
e<strong>in</strong>en WWW-Client gefährlich se<strong>in</strong>.<br />
Weiterh<strong>in</strong> gibt es ke<strong>in</strong>e <strong>Sicherheit</strong> bei der Ausführung von Anwendungen, die als ausführbare Dateien<br />
aus dem Internet importiert wurden. E<strong>in</strong>ige Trojanische Pferde wurden auf diese Weise bereits<br />
verbreitet.<br />
2.4.5 Dienste<br />
Bei der Installation e<strong>in</strong>es Betriebssystems s<strong>in</strong>d viele Dienste bereits vorkonfiguriert, um dem Benutzer<br />
e<strong>in</strong> eigenes E<strong>in</strong>richten dieser Dienste abzunehmen. Dies bedeutet jedoch, daß viele Dienste bei<br />
der System<strong>in</strong>itialisierung gestartet werden, die evtl. gar nicht benötigt werden und die von Angreifern<br />
benutzt werden können. Beispiele s<strong>in</strong>d ftpd und httpd; die wenigsten Rechner sollen ftp-, httpoder<br />
Druck-Serverdienste anbieten. Auch wenn manche Dienste benötigt werden, so s<strong>in</strong>d diese selten<br />
sicher konfiguriert. E<strong>in</strong> Nacharbeiten an den E<strong>in</strong>stellungen sollte gewährleisten, daß diese Dienste nur<br />
beschränkt von anderen Rechnern benutzbar s<strong>in</strong>d. Wichtig ist z.B. die E<strong>in</strong>schränkung von Lesezugriffen<br />
und <strong>in</strong>sbesondere Schreibzugriffen von außen (für ftp und http).<br />
Auch das lokale Ausführen von Programmen auf externe Veranlassung (CGI-Scripte von Webservern,<br />
Remote-Log<strong>in</strong>s) sollte soweit wie möglich unterbleiben. Weiterh<strong>in</strong> bedarf es der Beschränkung der<br />
über den Internetdaemonen (<strong>in</strong>etd) angebotenen Dienste, da dieser bei Anfragen von außen die entsprechenden<br />
Dienste automatisch aktiviert (also z.B. bei ftp-Anfragen e<strong>in</strong>en ftp-Daemonen startet).<br />
Besondere Schwachstelle s<strong>in</strong>d die sog. „r-Dienste“ rsh, rcp und rlog<strong>in</strong>. Sie ermöglichen e<strong>in</strong> Log<strong>in</strong><br />
bzw. die Kommandoausführung von fremden Rechnern aus ohne Überprüfung e<strong>in</strong>es Paßworts. Dies<br />
geschieht über die Konfiguration von sog. Trusted Hosts <strong>in</strong> den Dateien /etc/hosts.equiv oder<br />
28 SS 99, Sem<strong>in</strong>ar 18.416: <strong>Sicherheit</strong> <strong>in</strong> <strong>vernetzten</strong> <strong>Systemen</strong>