05.02.2013 Aufrufe

Firewall Handbuch für LINUX 2.0 und 2.2 - zurück

Firewall Handbuch für LINUX 2.0 und 2.2 - zurück

Firewall Handbuch für LINUX 2.0 und 2.2 - zurück

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.

Header einen buffer overflow in einem anderen Programm verursachen. Dämonen sollten<br />

stets nach dem KISS Prinzip programmiert werden (Keep It Small and Simple). Einige<br />

Hersteller, wie z.B. Microsoft sind weit davon entfernt, überhaupt noch einen Überblick<br />

über den Quellcode zu haben.<br />

Wie werden buffer overflows entdeckt?<br />

Entweder man durchforstet systematisch den Quellcode eines Dämons, untersucht den<br />

Quellcode von Libraries (DLL´s), oder man bemüht den Bo<strong>und</strong>schecker (NUMEGA).<br />

Dieser arbeitet wie ein logischer Disassembler <strong>und</strong> vermag Zusammenhänge von<br />

übergebenen Parametern <strong>und</strong> Funktionsaufrufen in den DLL´s zu erkennen.<br />

Dementsprechend gibt dieser Warnhinweise aus, wo sich ein Test lohnen könnte. Bei<br />

Microsoft sind es unzählige, es ist also zu erwarten, das Microsoft-Server zunehmend das<br />

Ziel von solchen Angriffen sein werden. So einfache Tests mit Zufallszahlen, die man an<br />

einen Port sendet (cat < dev/random | netcat IP - Nummer....Port) führen schon zu<br />

interessanten Effekten (Schutzverletzung....Bluescreen). Ist es möglich, bei einem Dienst<br />

oder Dämon die nach außen (über das Netzwerk) verfügbaren Befehle <strong>und</strong> deren Syntax<br />

zu ermitteln, so ist es mit netcat möglich, die Befehle einzeln auf buffer overflows zu<br />

testen. Das läßt sich auch per Hand durchführen (telnet_IP - Nummer_25 ... HELP), nur<br />

besteht das Risiko, daß in dieser Hilfefunktion nicht alle Befehle aufgelistet sind. Man<br />

benötigt daher immer auch den Quellcode. Daraus resultiert, daß man sehr wohl einen<br />

Server sicher machen kann, vorausgesetzt, daß die Befehle übersichtlich sind, der<br />

Dämon/Dienst nicht zu komplex <strong>und</strong> das der Quellcode vorliegt. Aus diesem Gr<strong>und</strong><br />

scheiden viele Betriebssysteme <strong>für</strong> den mission critical Einsatz aus.<br />

Buffer overflows in Client Programmen, dynamische Angriffe<br />

Bisher wurden nur »buffer overflows« in Servern entdeckt. Seit einiger Zeit werden<br />

zunehmend Clientprogramme auf »buffer overflows« untersucht. Ein Beispiel ist ein (GNU)<br />

ftp - Client unter UNIX. Angenommen, daß ein Unternehmen besonders sicher gegen<br />

Angreifer aus dem Internet abgesichert werden soll. Man installiert die Internet-<strong>Firewall</strong> so,<br />

daß kein Port eines internen Servers von außerhalb erreicht werden kann. Um aber z.B.<br />

weiterhin E-Mails in dem Unternehmen empfangen zu können, wird ein Programm, z.B<br />

»vpop« unter Windows NT oder »fetchmail« unter UNIX installiert. Diese Software öffnet,<br />

z.B. stündlich tagsüber, die Verbindung über die <strong>Firewall</strong> hinweg zu einem äußeren<br />

Server, der die E-Mails <strong>für</strong> das Unternehmen in einem Sammelpostfach gelagert hat.<br />

Vorausgesetzt, daß der Angreifer auf diesem Außenserver auf die Clientverbindung<br />

wartet, ist es ihm möglich, einen »buffer overflow« auf einem Server hinter der <strong>Firewall</strong> zu<br />

iniitieren, einen Tunnel von diesem in das Internet aufzubauen, <strong>und</strong> in aller Ruhe im<br />

Unternehmensnetz sein Unwesen zu treiben. Dagegen helfen dieselben Mechanismen,<br />

die auch zur Verbesserung der Sicherheit der Serverdämonen eingesetzt werden. Unter<br />

NT bedarf es einer gründlichen Analyse des Betriebssystems, was ohne Quellcodes leider<br />

nicht möglich ist. Unter UNIX ist die Lösung klar.<br />

Sind <strong>Firewall</strong>s gegen »buffer overflows« gesichert ?<br />

Man kann davon ausgehen, daß die <strong>Firewall</strong>-Programme, weil sie relativ klein sind, gut<br />

gesichert werden können. Ein Angriff auf das äußere oder innere Interface ist so einfach<br />

nicht möglich, da sich keine Angriffspunkte ergeben, wo ein »buffer overflow« ansetzten<br />

könnte. Für eine Authentifizierung aber müssen Paßworte übergeben werden, hier ist ein<br />

»buffer overflow« möglich. Problematisch wird es, wenn eine <strong>Firewall</strong> auf einem<br />

Betriebssystem aufsetzt, welches zudem noch andere Funktionen erfüllen soll, z.B als E-<br />

Mail-Gateway, WWW-Proxy, u.s.w. Diese Konfigurationen finden sich in vielen<br />

Unternehmen, wo billige PROXY-Software auf NT oder UNIX-Servern aufgesetzt wird.<br />

Oftmals ist in diese Server eine ISDN-Karte integriert, um zusätzlich Hardware<br />

einzusparen. Da diese Server gleichzeitig noch als SQL oder FIBU-Datenbanken arbeiten<br />

können, ergeben sich einige sehr bedenkliche Sicherheitslöcher. Da es auch keine<br />

weiteren Kontrollmöglichkeiten gibt, bleibt ein Angriff immer unbemerkt. Betrachten wir<br />

einige Installationen:<br />

Erstellt von Doc Gonzo - http://kickme.to/plugins

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!