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.
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:
Anmerkung: die Links ganz oben unter 'Uebersicht' sind natuerlich nicht extern.
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):
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.
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.
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:
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...
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).
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:
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).
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.
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.
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.
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.
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.
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.
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.
Totschlagargument Nr. 438
Message-ID: <a83qco$h2b$1@news.online.de> (offline)
Ich liebe dieses Posting! ;)
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.
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...