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
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