de.comp.security.misc - FAQ

Uebersicht

Worum geht es ueberhaupt?

Dieses Dokument soll helfen, auch dem weniger versierten Computernutzer den Einstieg in das Gebiet der Computer- und Datensicherheit zu ermoeglichen. Es sollen eine Einfuehrung in die Funktionsweise des Internets, sicherheitstheoretische Grundlagen und ein verantwortungsvoller Umgang mit einem der komplexesten 'Haushalts'geraete, dem Computer, vermittelt werden. Unter Beruecksichtigung verhaeltnismaessig weniger Punkte ist es fuer den Privatanwender naemlich gar nicht allzu schwer, seinen Rechner mit betriebssystemspezifischen Bordmitteln den meisten Angriffen (man stoere sich bitte nicht an dem Begriff 'meisten' - ein Angriff kann ebenfalls sein, mit vier schwerbewaffneten Soeldnern das Haus des Anzugreifenden zu stuermen und die erwuenschten Daten von diesem zu erzwingen) gegenueber abzuschotten. Die in dieser FAQ angefuehrten Fakten erheben _keinen_ Anspruch auf Vollstaendigkeit, da zugunsten der Verstaendlichkeit an mancher Stelle die Fakten auf das wesentliche beschraenkt wurden.

Wie lese ich dieses Dokument am besten?

Am Stueck und hintereinander :) Die in den einzelnen Abschnitten vorhandenen Hyperlinks (intern) sind als 'Informationen fuer Fortgeschrittene und besonders Wissensdurstige' zu verstehen und fuer das Verstaendnis dieser FAQ nicht zwingend vonnoeten.

Saemtliche Hyperlinks in diesem Dokument sind nach einer der folgenden 3 Moeglichkeiten aufgebaut:

  1. interner Link: diese Links fuehren zu von mir erschaffenen Dateien. Interne Links sind durch den Zusatz '(intern)' gekennzeichnet.
    Bsp.: Hyperlinks (intern)
  2. kombinierte Links: sind durch ein angefuegtes '(offline)' gekennzeichnet, wobei das '(offline)' zu einem Spiegel des Links fuehrt (auf dem Webspace der TU Ilmenau)
    Bsp. aus dem Abschnitt 'Was ist Sicherheit?': englische Version (offline) - beim Klicken auf 'englische Version' kommt man auf den Webspace des externen Links, beim Klicken auf '(offline)' geht's zum internen Spiegel.
  3. externe Links: Links ohne Zusaetze sind rein extern angelegt.

Anmerkung: die Links ganz oben unter 'Uebersicht' sind natuerlich nicht extern.

Wichtige Grundbegriffe

Hier wird man Erlaeuterungen der fuer die FAQ noetigen Grundbegriffe finden, als da waeren (Liste ist vermutlich noch nicht vollstaendig, wird sich im Lauf der restlichen Arbeiten ergeben):

Trojanisches Pferd
Ein trojanisches Pferd ist ein Programm, welches dem Nutzer im Vordergrund eine bestimmte Aktion vorgaukelt, waehrend es unbemerkt andere (ungewollte) Aktionen ausfuehrt (dies kann z.B. sein, bestimmte Daten auf dem Rechner auszulesen und per Mail zu verschicken, auch, einen aus dem Internet erreichbaren Dienst anzubieten, der eine Fernsteuerung des kompromittierten Rechners ermoeglicht, ein angeblicher Virenscanner, der neben seiner Scanfunktion zufallsgesteuert in Excel-Tabellen Vorzeichen negiert, ist ebenfalls denkbar).
Virus
Bei Viren handelt es sich um einen Wirt (anderes Programm) benoetigenden Code. Die Eigenschaften orientieren sich am biologischen Vorbild, Viren nisten sich in fremden Programmen und im Speicher des befallenen Computers ein, vornehmlich zum Zweck der Reproduktion (etwaige Schadensroutinen sind eigentlich nicht die Hauptaufgabe eines Virus). Dabei wird ueblicherweise der Code des befallenen Programms derart veraendert, dass es neben seinen eigenen Funktionen auch den Virus enthaelt. Ist der Virus aktiv (es wurde ein von einem Virus befallenes Programm gestartet), dann wird im folgenden jede Moeglichkeit zur Reproduktion genutzt. Bis zu diesem Zeitpunkt 'saubere' Software ist nach einem Start ebenfalls infiziert.
Wurm
Wuermer sind Programmroutinen, die bestehende Netzwerkverbindungen zur Weiterverbreitung nutzen. Dabei sind sie auf homogene Systeme angewiesen, die eine Sicherheitsluecke offenbaren. Bekanntesteste Beispiele: ILOVEYOU, NIMDA, CodeRed. Es handelt sich hierbei um Wuermer, die Schwaechen in weitverbreiteter Software (MS IIS, ein Webserver / Internet Explorer / Outlook Express) nutzen, um boesartigen Code auf der Zielmaschine zu plazieren. Das Adressbuch von OE wurde (uebrigens nicht nur von diesen Wuermern), neben anderen Mechanismen, dazu genutzt, um den Wurm selbst an saemtliche vorhandenen Eintraege zu versenden. Es sei der Vollstaendigkeit halber erwaehnt, dass OE in Vergangenheit unangenehm dadurch aufgefallen ist, dass Schadcode *ohne* explizite Bestaetigung des Anwenders, nur durch blosse Betrachtung der Mail, ausgefuehrt werden konnte. Microsoft Windows ist i.a. wegen seiner weiten Verbreitung (ueber 80 Prozent aller PCs weltweit laufen unter einem Windows-Betriebssystem), gepaart mit ein paar konzeptionellen Schwaechen, besonders gefaehrdet.
Port
Ports dienen der Zuordnung von in IP-Paketen enthaltenen Daten zu Applikationen (ansonsten liesse sich ja beispielsweise nicht bestimmen, ob das erhaltene Datenpaket nun zum Webbrowser oder zum Emailclient gehoert). TCP/UDP (siehe auch die Hintergruende des Internets (intern)) koennen jeweils 65.535 (2^16-1, da Port 0 aus konzeptionellen Gruenden nicht verwendet werden darf) verschiedene Ports handhaben. Falls das zu technisch klingt: Ports sind sozusagen die Hausnummern, die die verschiedenen Applikationen zur Kommunikation nutzen. Die IP-Adresse koennte man in diesem Kontext als Strassenname bezeichnen. Sprich: wenn der Internet Explorer von www.blubberblase.de etwas haben moechte, dann sieht das so aus: Hallo $IP_von_blubberblase.de auf Port 80 (da laufen die meisten Webserver), hier ist der Rechner $meine_IP, ich haette gerne Daten von Dir auf Port xyz (wird frei gewaehlt, liegt ueber 1024)...
Portscan
Unter einem Portscan wird die versuchte Verbindungsaufnahme auf mind. 1 Port verstanden. Es ist im Prinzip so, als ob man an eine Tuer klopft mit der Absicht, herauszufinden, ob da jemand wohnt, der Kontakt mit der Aussenwelt wuenscht. Wenn also jemand die Tuer mit den Worten 'sie wuenschen?' oeffnet, dann weiss man zwar noch nicht, wer das ist, aber man weiss zumindest schonmal, dass er fuer die Öffentlichkeit gedacht ist. Und wenn derjenige in Hausnummer 80 wohnt, dann wird er mit grosser Wahrscheinlichkeit den Namen 'Webserver' tragen. Anmerkung: dass es auch Portscanabarten gibt, die nicht wirklich eine Verbindungsaufnahme initiieren, ist dem Autor bekannt.
Dienst
I.a. versteht man unter einem Dienst einen Prozess, der anderen Prozessen eine bestimmte Funktionalitaet ueber eine definierte Schnittstelle zur Verfuegung stellt. In diesem Schriftstueck ist unter einem Dienst ein Prozess zu verstehen, der diese Funktionalitaet fuer oder ueber das Netzwerk anbietet. Beispiel: der Windowsdienst 'Datei- und Druckerfreigabe' ermoeglicht es anderen Hosts, auf definierte Ressourcen beim anbietenden Host (Drucker oder bestimmte Verzeichnisse) zuzugreifen. Der PC eines sich ueber einen Provider ins Internet einwaehlenden Privatnutzers sollte gewoehnlich ueberhaupt keine Dienste ins Internet stellen!
Bindung
Ueber eine Bindung werden bestimmte Dienste mit bestimmten Netzwerkkomponenten derart verkoppelt, dass ueber das entsprechende Netzwerkinterface der entsprechende Dienst verfuegbar ist. Beispiel: Windows-PC mit ISDN-Karte und Netzwerkkarte fuer ein LAN (local area network, lokales Netzwerk), Windows-Freigaben fuer das LAN. Der 'Datei- und Druckerfreigabedienst' von Windows sollte nun an die Netzwerkkarte (fuer das LAN) und nicht an die ISDN-Karte (die Freigaben haben im Internet nichts zu suchen) gebunden sein.
TCP/IP-stack
Unter dem TCP/IP-stack eines Betriebssystem wird die Komponente verstanden, die die Kommunikation zwischen Applikationen und dem Netzwerk (Internet, LAN) uebernimmt.
exploit
'to exploit' bedeutet uebersetzt 'jemanden ausbeuten'. Im Computerjargon wird unter einem exploit ein Stueck Softwarecode verstanden, das Designfehler eines Betriebssystems oder einer netzwerkfaehigen Anwendungssoftware benutzt, um ungewollte Funktionalitaet bereitzustellen. Im schlimmsten Fall kann solch ein exploit dazu verwendet werden, um auf dem angegriffenen System Administratorrechte zu erlangen (der Angreifer darf alles).

Was ist Sicherheit?

Die Definitionen (intern) sind vielfaeltig. Fuer das Anliegen dieser FAQ sei folgende Umschreibung angenommen: es wird versucht, mit einfachen, aber effektiven Methoden einen moeglichst optimalen Weg zu finden, wie der Nutzer eines stand-alone-PC diesen vor illegitimem Zugriffen und Manipulationen ueber das Internet schuetzen kann. Nebenbei bemerkt, wer absolute (100 Prozent) Sicherheit haben moechte, dem bleiben nur zwei Wege: englische Version (offline) oder deutsche Version (offline).

Denken Sie immer daran: Sicherheit ohne Nachdenken oder 'by default' gibt es nicht. Keine Firewall o.a. kann Verantwortungsbewusstsein und ein gewisses Misstrauen Unbekanntem gegenueber ersetzen.

Wie funktioniert Internet?

Ein Internet ist ein sogenanntes WAN (wide area network), welches sich dadurch auszeichnet, dass mehrere kleine Netzwerke zu einem groesseren zusammengeschlossen werden, wobei diese ueber vordefinierte Protokolle miteinander kommunizieren. Wenn wir von 'dem' Internet (wie es sich mittlerweile im Sprachgebrauch eingegliedert hat) sprechen, dann meinen wir damit das groesste WAN auf diesem Planeten. Das Internet, so wie wir es kennen, besteht aus vielen Subnetzen, die wiederum aus Subnetzen bestehen usw. Die Kommunikation zwischen den vielen Rechnern und Netzwerken erfolgt im Prinzipueber das sogenannte 'internet protocol' (IP). Egal, welche Aktion man im Internet verfolgt (Surfen, Mail, icq usw.), es fuehrt immer darauf hinaus, dass der Computer die verwendete/gewuenschte Aktion in ein IP-Paket verpackt und dieses ins Internet an die entsprechende Zieladresse versendet, um dort die gewuenschte Reaktion auszuloesen.

Wer es genauer wissen will, kann sich gerne die Hintergruende des Internets (intern) durchlesen.

Wie werde ich angegriffen?

Um Zugriff auf einen Rechner zu erlangen, ist man gezwungen, eine Luecke zu finden, durch die man eindringen kann. Daraus resultiert, dass man vor einem Angriffsversuch zuallererst Informationen ueber das zu kompromittierende System suchen muss. Betriebssystem, Dienste usw. Der Grossteil der Angriffe duerfte nach folgendem, vereinfachten Schema ablaufen:

  1. Identifikation des Betriebssystems ( passives (engl.) (offline) und aktives (dtsch.) (offline) fingerprinting)
  2. Identifikation der Dienste (Portscan)
    Es sei der Vollstaendigkeit halber erwaehnt, dass ein Portscan keinerlei (!) Indiz fuer einen eventuellen Angriff ist. Moeglicherweise hat man ihn selbst beim Surfen, Napstern etc. verursacht, bei einer dynamischen Adresse (wie bei den meisten Providern ueblich) ist ausserdem die Chance ziemlich hoch, dass eingehende Datenpakete jeglicher Art vom Vorbesitzer der Adresse stammen.
  3. eventuelle Angriffspunkte ausnutzen
    Die Moeglichkeiten sind vielfaeltig. Eventuell hat sich der Besitzer des Rechners ein Fernwartungstool ('Trojaner') installiert, fehleranfaellige oder ungewollte Dienste laufen oder der TCP/IP-stack des von ihm verwendeten Betriebssystems ist exploitanfaellig. Usw.

Wer es genauer wissen will, sollte sich Kapitel 2.3 - Angriffe auf Computer und Netze der Grundlagen [...] fuer Intrusion Detection Systeme (IDS) und Intrusion Response Systeme (IRS) durchlesen.

Download der Studie (intern PDF 400 kB)

Update 2004: An dieser Stelle ist dazu zu sagen, dass oben beschriebener Angriffsmechanismus der Weg waere, den ein realexistierender Mensch gehen wuerde, wenn er ein einzelnes System angreift. Die Erfahrungen der letzten Jahre haben gezeigt, dass alle grossen Viren- und Wurmwellen ein viel einfacheres Schema verfolgen. Vorausgegangen sind sehr oft bekanntgewordene Loecher in Diensten der verschiedenen Windowsversionen - und Windows bietet frisch nach der Neuinstallation eine Menge davon ins Internet an. Warum, weiss sicher nur Microsoft, denn zum Nutzen des Internets muss man selbst nichts zum Nutzen anbieten. Nun, wenn einer dieser Viren einen verwundbaren Rechner infiziert hatte, wurde dieser seinerseits zur 'Wurmschleuder' umfunktioniert - er fing an, wahllos IP-Adressen zu scannen und auf diese das Angriffsmuster (ein kleines Programm quasi) abzufeuern, ohne sich darum zu scheren, ob der Angriff erfolgreich war oder nicht. Bei der derzeitigen Verbreitung von Windows im Privatnutzerbereich (> 90 Prozent) ist der Angriff es nur leider viel zu haeufig :-|

Code Red, SQLSlammer, Blaster und Sasser taten dies, Sie erinnern sich an die Nachrichten? Es liegt in ihrem Interesse, etwas dagegen zu tun, denn sie schuetzen nicht nur ihre Daten, sondern auch die, die von ihrem Rechner angegriffen wuerden, sollte er einer Infektion anheim fallen...

Wie kann ich einen Angriff feststellen?

Leider gibt es dafuer keine Faustregel. Die Komplexitaet dieses Vorhabens laesst sich bei Lektuere von 2.4 Kategorisierung von Angriffen bezueglich ihrer Erkennbarkeit und 2.5 Das Erkennen von Angriffen auf Rechner und Rechnernetze der bereits erwaehnten IDS/IDR-Studie (offline PDF 400 kB) sicherlich erahnen.

Fuer Microsoft-Betriebssysteme haben sich die Tools TDIMON (zeigt UDP/TCP-Aktivitaeten, sprich, welche Applikation moechte auf welchem Port ueber welches Protokoll mit welchem Ziel kommunizieren) und ANALYZER (Sniffer, schneidet den gesamten Netzverkehr mit, so dass die Inhalte der uebermittelten Pakete ueberprueft werden koennen) als sehr hilfreich erwiesen, SNORT ist fuer eine umfassende Ueberpruefung des Netzverkehrs gut geeignet (nicht windowsspezifisch).

Wer wissen will, von wem ein Paket stammt, das auf dem Netzwerkinterface eintrifft (man sieht ja nur eine IP-Adresse), der kann dies mittels des WHOIS-Service erfahren. Es sei bemerkt, dass die eingetragene IP nicht notwendigerweise von echten Absender stammen muss, sie kann gefaelscht sein (nennt sich IP spoofing).

Wie kann ich mich schuetzen?

  1. Vernuenftige Rechnerkonfiguration

    Es sei am Anfang erwaehnt, dass sich der folgende Abschnitt stets auf den Umstand bezieht, dass man seinen Rechner direkt ans Internet angeschlossen hat. Also beispielsweise: Einwahl per Modem oder ISDN-Karte, welche im zu schuetzenden Rechner steckt oder DSL-Modem <--> Netzwerkkarte im zu schuetzenden Rechner.

    Eine 'saubere' Konfiguration sollte so aussehen, dass keinerlei Dienste auf die Interneteinwahlhardware (z.B. ISDN-Karte) gebunden werden. Leider haben gaengige Betriebssysteme (Windows, viele Linux-Distributionen) die unangenehme Angewohnheit, direkt nach der Installation Dienste ins Internet anzubieten. Diese sollten normalerweise deaktiviert werden! Wer Internet nur nutzen will, muss gewoehnlich an eigenen Diensten *gar nichts* anbieten. Die gewoehnlichen Netzwerkdienste sind bei Windows in der Netzwerkumgebung (die TCP/IP-Bindungen der diversen Dienste muessen von der Internethardware geloest werden) und bei Linux in /etc/inetd.conf (kann distributionsabhaengig variieren) zu finden. Das Kommandozeilentool der Wahl, um den Systemzustand zu testen, ist uebrigens 'netstat', nur die Optionen variieren je nach verwendetem System. Mit 'netstat -an' kommt man i.a. aber recht weit.

    Wenn Ihnen die folgenden Tips allesamt zu kompliziert sind, machen Sie es sich doch ganz einfach: kaufen Sie sich einen 'Hardwarerouter' (so ein kleiner schwarzer Kasten, den man zwischen DSL-Modem und Computer schaltet). Der sorgt wenigstens schonmal fuer Ruhe vor ungewuenschten Zugriffen von aussen. Gibt es, glaube ich, auch fuer ISDN.

    Noch ein paar Links fuer diverse Systeme:

    » Security-Infoseite allgemein
    Sehr umfangreiche Seite ueber diverse Betriebssysteme und alles, was mit Computersicherheit zu tun hat. Die Einleitung des Autors auf der Hauptseite 'willkommen auf meiner kleinen Webseite' ist wohl als understatement zu verstehen :) Zeit mitbringen.
    » Security-Infoseite Windows
    Auch ziemlich viel, aber gut. Zeit mitbringen.
    » Gurus Heaven
    Eine Seite, die aus meinem handelsueblichen Nutzungsprofil doch weitestgehend herausfaellt, wie man sicherlich auch an dieser FAQ erkennen kann (nix Flash, kaum Grafiken, fast nur Text). Vom Privatanwender fuer den Privatanwender. Der Autor Olaf Lucas hat sich sehr grosse Muehe gegeben, viele Sicherheitsproblematiken moeglichst anschaulich und an Beispielen zu erlaeutern. Was man z.B. mit Javaskript anstellen kann, ist hier gut dargestellt und schon sehenswert. Und wem der ganze Securitykram zum Hals raushaengt, der kann sich ja immer noch in die Humorecke verkruemeln :) BTW, auch hier gilt, dass sich der Autor nicht allen vertretenen Meinungen anschliessen kann. Siehe auch Warum keine 'personal firewall'?
    » fport
    Ein Tool fuer Windows NT, 2000, XP, mit welchem man feststellen kann, welche Applikation an welchem Port lauscht. Passt hier eigentlich nicht hin, aber an anderen Stellen wirkte es noch deplazierter...
    » Inzider
    Aehnlich fport, gefaellt mir persoenlich allerdings besser. Kann keine ports anzeigen, die auf offene Windowsdienste zurueckzufuehren ist, ist aber ausgesprochen nuetzlich, wenn man mit 'netstat' mal irgendwelche Ports als listening angezeigt bekommt, die man nicht einordnen kann.
    Windows 9x
    Im Prinzip kann man hier nicht viel falsch machen, da Windows 9x recht einfach gestrickt ist. Bei einem Einzelplatzrechner gilt: keine Dienste, die installiert sind (Netzwerkumgebung): keine offenen Ports. Falls der 'Datei- und Druckerfreigabe'-Dienst installiert sein sollte, (wegen einem LAN dran), muss man allerdings darauf achten, dass dieser Dienst nicht an die externe Hardware gebunden wird. Anmerkung: Port 139 (netbios) bleibt aus unerfuendlichen Gruenden offen, auch wenn man die Bindungen saemtlicher ueberfluessiger Dienste auf die Internethardware geloest hat (zumindest deren Funktionalitaet ist tatsaechlich deaktiviert). Eine Anleitung, wie man diesem vorbeugen kann (zumindest kenne ich nur diesen Weg aus dem Stegreif), gibt es auf Steve Gibsons Homepage. Der Autor kann sich nicht allen dort vertretenen Ansichten ('personal firewalls' sind toll) ruhigen Gewissens anschliessen, siehe auch Warum keine 'personal firewall'? Ich persoenlich neige ja dazu, das 'Netbios-Problem' einfach zu ignorieren, denn ob ein neugieriger Internetnutzer nun herausfindet, ob mein PC den Windowsnamen 'Schwanzmeister' traegt oder ob ich ihm dieses verwehre, bleibt sich letztlich egal. Man muss sich allerdings der Tatsache bewusst sein, dass jeder offene Port ein potentielles Risiko in sich traegt. Wer weiss schon, was an Sicherheitsluecken in Zukunft entdeckt wird?
    Windows NT 4
    Zwar schon etwas betagter, aber ich nutze es noch ganz gerne. Zum Problem: wenn etwaige Freigaben nicht auf die Internethardware gebunden sind, bleiben netbios (port 139/tcp) und der RPC endpoint mapper (port 135 tcp) offen, die mittlerweile auch mit ausgesprochen ernstzunehmenden Schwaechen gesegnet sind (ungepatchtes NT4 selbst mit SP6a). Diese beiden Ports zu schliessen ist eine durchaus anspruchsvolle Aufgabe, die jedoch von findigen Usenetnutzern gut zusammengefasst wurde: entspr. Usenetposting. Was es bei NT 4 per default an moeglichen (nicht zwingend aktiven) Diensten gibt, kann man sich hier durchlesen. Ach ja, den letzten Service Pack (6a IIRC, irgendwo auf der Microsoftseite zu finden) sollte man schon installiert haben.
    Windows 2000/XP

    Mittlerweile habe sich in der Usenethierarchie de.comp.security.* eine Menge faehige Leute darum Gedanken gemacht, wie man Windows 2000/XP abgewoehnt, Unmengen an Ports in der Defaultinstallation offen zu haben, einem Umstand, dem wir inzwischen auch Unmengen an Wuermern zu verdanken haben. Ich verweise an dieser Stelle auf:

    Die eben genannten Anleitungen gibt es auch in Skriptform auf http://www.ntsvcfg.de (als kleine .bat-Datei) oder als graphisches Tool auf http://www.dingens.org. Das Skript und das graphische Tool bauen beide auf der haendischen Anleitung auf, es ist also egal, welchen Weg man einschlaegt!

    Ein Wort dazu: leider ist es so, dass bei exotischen Konfigurationen bzw. exotischer Software Probleme auftreten koennen, da Windows von seinem Design her inzwischen so 'verwurstet' ist, dass vermutlich nichtmal mehr die Entwickler bei Microsoft durchblicken. So kann es sein, dass manche Software den Dienst verweigert, wenn man einem Dienst das Lauschen am externen Interface verweigert. Etwaige Quereffekt koennen demnach nach jetzigem Stand der Dinge leider nicht ausgeschlossen werden, wenngleich die Kinderkrankheiten allesamt ausgemerzt zu sein scheinen. Es gibt jedoch noch einen weiteren Weg, der zwar theoretisch nicht unbedingt optimal, praktisch jedoch recht gangbar ist: ein Paketfilter vor dem externen Interface.

    Bei Windows 2000 kommt man mit den Bordmitteln leider nicht weiter, so dass man entweder auf 3rd-party-software angewiesen ist ('personal firewall'), die zumeist mit fragwuerdiger Funktionalitaet und voellig ueberladen einherkommt, oder auf ein Kommandozeilentool mit dem Namen IPSecpol. Ein Beispiel, wie man damit Paketfilterregeln in der Registry verankert, findet sich hier.

    Bei XP ist das um einiges einfacher, denn XP bringt einen kleinen Paketfilter im Lieferumfang mit: die ICF (Internet Connection Firewall). Zu finden unter Netzwerkumgebung (Desktop) (rechte Maustaste) --> Eigenschaften, dann die entsprechende Verbindung heraussuchen, auch hier mit der rechten Maustaste die Eigenschaften anwaehlen und bei 'Erweitert' die ICF aktivieren. Schwupps, und schon ist der Portfilter aktiv. Nachteil: manche aktiven Protokolle (filesharing, manche onlinespiele etc.) koennen dadurch an ihrer Funktion gehindert werden. Hier ist Tueftelei und Doku lesen sowie Suchmaschine quaelen angesagt. Macht aber nichts, denn es sowieso ratsam, zu wissen, was man eigentlich gerade tut. Merke: in des tumben Toren Hand ist das beste Werkzeug Tand. (Daniel Duesentrieb).

    Linux
    Die meisten Dienste lassen sich in der /etc/inetd.conf (distributionsabhaengig) deaktivieren. Um den Rest (Sun RPC etc.) zu deaktivieren, sei die Lektuere des SystemV-Bootkonzepts in Euerm Handbuch nahegelegt. Damit es keine boesen Ueberraschungen gibt, so noch ein Posting von bugtraq empfohlen, Abhilfe entweder mit dem im Posting erwaehnten Patch oder per Beschaeftigung mit ipchains/iptables.

    Ob die Bemuehungen erfolgreich waren, laesst sich mit dem Onlineportscan des Landesbauftragten fuer Datenschutz Niedersachsen oder auditmypc.com (gutes Englisch ist hier leider vonnoeten) herausfinden. Leider ist bei ersterem nur ein Scan auf tcp-Ports moeglich, bei letzterem kann man wenigstens einzelne UDP-Ports ueberpruefen. Wenigstens gibt einem die Auswertung jeweils das, was man wissen moechte...

    I.a. laesst sich zu den verfuegbaren Onlinescannern sagen, dass die Auswertung der Testergebnisse sehr oft an debilen Schwachsinn grenzt. So wird sehr oft behauptet, dass ein 'closed' port nicht so sicher sei wie ein 'stealthed' port. Rein technisch gesehen ist das allerdings voelliger Unsinn.

    Wer trotzdem noch ein paar andere Scanner ausprobieren moechte, sollte einen Blick in die de.comp.security.firewall-FAQ von Lutz Donnerhacke riskieren (uebrigens auch ansonsten ein sehr empfehlenswertes Dokument).

    Als letzte und zweifelsohne zuverlaessigste Alternative: ein guter Freund mit nmap.

  2. Softwarekonfiguration

    Leider ist es so, dass eine ganze Menge Software mit Fehlern und Designschwaechen reichlich 'gesegnet' sind. Bsp.: Makroviren unter Word, die neueren Informationen zufolge selbst durch Aktivieren des Makroschutzes nicht zuverlaessig am Infizieren des Rechners gehindert werden, ICQ, unzaehlige Sicherheitsluecken im Internetexplorer und in Outlook Express, saemtliche Java und Javaskript unterstuetzenden Browser (potentielles Risiko) usw.

    Hier alle Hinweise aufzuzaehlen wuerde deutlich zu weit fuehren. Der einzige Rat, den der Autor geben kann: lernen Sie Ihre Software kennen. Eine Suchmaschine (Google ist ausgesprochen gut) in Verbindung mit dem Namen Ihrer Software und dem (oder einem aehnlichen) Wort 'exploit' ist ueblicherweise aussagekraeftig genug. Ansonsten moechte der Autor folgende Links empfehlen:

    Ferner zeigt die Erfahrung, dass der Mail/Newsreader 'Outlook Express' derart inhaerent unsicher ist, dass von seiner Nutzung nur dringend abgeraten werden kann! Es gibt genug Alternativen, Netscape / Mozilla beispielsweise.

  3. Nutzerverhalten

    Stellen Sie sicher, dass Sie niemals Binaerdateien aus potentiell nicht vertrauenswuerdigen Quellen auf ihrem Rechner ausfuehren. Stellen Sie sicher, dass auch die von Ihnen verwendete Software dies nicht tut.

  4. Nutzerverhalten Teil 2

    Vertrauen Sie nicht blindlings Marketing-Spruechen. Informieren Sie sich ueber tatsaechliche Gefahren und Risiken (die Links in diesem Abschnitt sind ein guter Anfang). Waegen Sie die Gefahren gegen die zu schuetzenden Werte auf Ihrem Rechner ab, loten Sie ihre technischen und oekonomischen Moeglichkeiten aus und schaffen Sie sich ein persoenliches Konzept. Dieses sollte staendig in Bezug auf Anforderungen und neue technische Gegebenheiten ueberprueft werden.

Was tun bei Schadsoftwarebefall?

Zeigt ein System Fehlverhalten (Geschwindigkeit, Netzwerkverhalten etc.), so ist von einer Kompromittierung auszugehen. In diesem Fall muss das System neu aufgesetzt werden! Daten, insofern noch nicht gesichert, duerfen keinerlei ausfuehrbaren Inhalt haben!

Eine recht umfangreiche Sammlung von Dateiextensionen findet sich hier:
http://www.indexpage.ch/html/active/tipps/extensionen.html

Als ungefaehrlich koennen Bild-, Video- (solange es sich nicht um typische Windows-Mediaplayer-Dateien (.asf) handelt) und Textdateien eingestuft werden. Potentiell gefaehrlich hingegen sind saemtliche Dateien mit ausfuehrbaren Inhalten (Skripte, .doc, .xls, selbst HTML-Code kann in Verbindung mit Javaskript/JAVA gefaehrlich werden).

Dazu: http://oschad.de/wiki/index.php/Dateiendungen

Ueberdenken Sie, wie die Schadsoftware (troj. Pferd, Wurm, Virus) Ihren Rechner befallen konnte. Passen Sie Ihr Sicherheitskonzept an.

Warum keine 'personal firewall'?

  1. Fragwuerdige Funktionalitaet.

    Um den Unsinn einer 'personal firewall' zu durchleuchten, ist es noetig, die einzelnen Teile, die eine handelsuebliche (Windows)Personal Firewall meiner Meinung nach charakterisieren, einzeln abzuhandeln.

    'application control'-Funktionalitaet
    Das Versprechen, Applikationen per Software, die auf derselben Maschine wie die Applikation laeuft, ueberwachen zu koennen, ist gelinde gesagt einfach unsinnig. Innerhalb der letzten Monate ist gezeigt worden, dass eine 'personal firewall' durchaus selbst Angriffspunkt sein kann, sie selbst ist also keineswegs sicher (auch wenn das Marketing das den Kaeufer dieser PF gerne glauben lassen moechte). Das Betriebssystem Windows 9x/ME besitzt eine Eigenschaft, das es als Grundlage fuer einen Paketfilter unbrauchbar werden laesst (dito NT, 2000 und XP unter Adminrechten bzw. als Poweruser) - jegliche Software laeuft unter denselben Rechten. Eine 'personal firewall' genauso wie das trojanische Pferd. Im Zweifelsfall beendet die 'boese Software' die 'personal firewall' einfach (es sei nicht verschwiegen, dass dies auch die unter Wie kann ich mich schuetzen? aufgefuehrten Tools betreffen kann). Als Beispiel sei ein Teil eines Usenetpostings (intern) angefuehrt, in welchem ein Visual-Basic-Skript beschrieben wird, welches (als Beispiel'firewall') den Zonealarm-Task einfach beendet. Noch eleganter finde ich ein Pascalprogr. (offline) von Steve Tricky, dass den OK-Button von Popup-Fenstern einfach per Software 'anklickt'. Selbst Betriebssysteme, die Rechteverwaltungen kennen, sind gegen derartige Angriffe anfaellig. Der einzig effektive Weg, sich gegen boesartige Software zu schuetzen, ist, sie nicht zu installieren. Respektive Ihnen den Weg zu verwehren, auf das System zu kommen.
    IDS-Funktionalitaet
    Unter IDS versteht man ein 'intrusion detection tool', sprich, eine Software, die etwaige Angriffe erkennen und melden soll. Bei PFs hat sich gezeigt, dass normale Portscans bzw. Verbindungsanfragen mit einer entsprechend reisserischen Meldung honoriert werden: 'hack attack auf Port $x blocked!' - man darf sich zurecht fragen, welchen Sinn es haben soll, eine der normalsten Sachen, die einem im Internet begegnen koennen, derart zu umschreiben. Ich persoenlich bin ja der Meinung, dem Nutzer soll schlicht und ergreifend suggeriert werden, die personal firewall haette etwas getan, was ansonsten uebel Schaden angerichtet haette. Dem ist aber nicht so. Keine Dienste == keine Angriffsflaeche. IDS-Systeme sind m.E. fuer richtige Firewallsysteme interessant, aber nicht fuer Privatanwender, die ueblicherweise ohnehin keine Dienste laufen lassen wollen. Man kann dementsprechend auch einfach seinen PC so konfigurieren, dass er keine Dienste anbietet, und die 'Attacken' auf nichtvorhandene Dienste kann der TCP/IP-stack des Betriebssystems viel besser blocken, als es eine PF jemals koennte.
    Paketfilterfunktionalitaet
    Die Theorie sagt, dass ein Paketfilter niemals auf der Maschine zu laufen hat, die zum normalen Arbeiten genutzt wird, da er selbst zusaetzliche Angriffsflaeche bietet und ausserdem die TCB (trusted computing base) vergroessert (soll heissen, Software hat Fehler, mehr Software hat demzufolge mehr Fehler, das System wird angreifbarer bzw. instabiler (auch ein Erfahrungswert)). Man kann sich auch einfach fragen, wozu soll ich Software installieren, die mir nur Funktionalitaet bereitstellt, die ich auch mit Bordmitteln des Betriebssystems erreichen kann? Es gibt uebrigens noch einen weiteren Nachteil in Sachen Paketfilter: die derzeit erhaeltlichen 'personal firewalls' koennen kein 'stateful filtering', soll heissen, aktive Protokolle a la IRC-DCC / p2p-Software (kazaa, gnutella usw.) funktionieren nicht mehr, da hierbei ein besonderes Verfahren zum Verbindungsaufbau genutzt wird. Der eigene PC wird naemlich auch zum Server und bindet einen temporaeren Dienst auf einem der High Ports (>1024), wobei zu diesem Port von der Gegenseite (!) die Verbindung initiiert wird. Woher soll die 'personal firewall' nun wissen, dass sie fuer genau diese Anwendung genau diesen Port, und auch nur fuer dieses eine Mal durchzulassen hat? Kann sie nicht, da sie die zugrundeliegenden Protokolle nicht analysieren kann.
  2. security by default / Risikokompensation

    Die Annahme, man koenne eine 'firewall' auf seinem Rechner installieren und wuerde damit sicherer werden, muss falsch sein. Eine Firewall ist ein Konzept (vgl. die de.comp.security.firewall-FAQ), kein Stueck Software, dass alle Sicherheitsprobleme loest, sobald man es installiert hat. Selbst wenn wir davon ausgehen, dass praktisch tatsaechlich ein positiver Effekt zu verzeichnen waere, so wird der Nutzer die Annahme des Sicherheitsgewinns ('mit einer personal firewall kann ja nicht mehr soviel passieren') mit einem geanderten Verhalten ueberkompensieren, so er die zugrundeliegenden Mechanismen nicht verstanden hat. Nebenbei: dies betrifft nicht nur die 'personal firewalls' unter Windows! Ein Anfaenger, der mit seinem IPCHAINS oder IPFILTER herumhantiert, ohne zu wissen, was er da eigentlich tut, ist genauso gefaehrdet.

  3. Totschlagargument Nr. 438

    Message-ID: <a83qco$h2b$1@news.online.de> (offline)

    Ich liebe dieses Posting! ;)

Kryptographie (PGP usw.)

An dieser Stelle noch eine ausfuehrliche Abhandlung ueber Kryptographie zu erstellen, wuerde den Rahmen dieses Dokuments voellig sprengen, so dass an dieser Stelle nur einige Links zu finden sind. Wer mehr wissen moechte: www.google.com hilft.

Literatur / Links

Buecher: W. Richard Stevens, TCP/IP Illustrated, Volume 1

Links: Neben den bereits im Text aufgefuehrten bleiben nur noch wenige zu nennen.

Ein dickes Dankeschoen an Bjoern Wunschik, der mir beim Korrekturlesen und dem Anpassen des HTML-Codes an W3C-Standard mit Rat und Tat zur Seite stand, Dietz Proepper, dem ich den Stevens zu verdanken habe, den Leuten, deren bereits gesammeltes Wissen ich fuer diese FAQ gebrauchen durfte und vielen anderen...