Crackerdelikte / Hacker und Computerstraftaten

Westfälische Wilhelms-Universität Münster
Seminararbeit
Crackerdelikte / Hacker und Computerstraftaten
Im Fach Informatik
Christian Speller
Themensteller: Prof. Dr. Herbert Kuchen
Institut für Wirtschaftsinformatik
Lehrstuhl für Praktische Informatik in der Wirtschaft
1
Einleitung........................................................................................................................1
2
Grundlagen eines Computernetzwerkes .........................................................................1
3
2.1
Architekturmodelle ................................................................................................2
2.2
Die TCP/ IP Protokollfamilie ................................................................................3
Hackerangriffe: Methoden und Abwehr .........................................................................5
3.1
3.1.1
3.1.2
3.1.3
3.2
3.2.1
3.2.2
3.2.3
3.2.4
3.2.5
3.3
3.3.1
3.3.2
3.3.3
4
Eingriffe in fremde Computersysteme...................................................................5
Portscanner.........................................................................................................6
Social Engineering.............................................................................................9
Sniffer ................................................................................................................9
Viren, Würmer, Trojaner und Hoaxes .................................................................11
Viren und Würmer : Definition und Abgrenzung............................................11
Prinzipieller Aufbau von Viren und Würmern ................................................12
Spezielle Virenformen und deren typische Charakteristik ..............................13
Trojanisches Pferd (Trojaner)..........................................................................14
Hoaxes .............................................................................................................15
Wie kann man sich technisch vor Eingriffen in Firmennetzwerke/WLANs
schützen?..............................................................................................................15
Firewalls...........................................................................................................15
Intrusion Detection Systeme (IDS)..................................................................18
Wireless LAN ..................................................................................................20
Zusammenfassung und Ausblick..................................................................................20
Literaturverzeichnis .............................................................................................................21
II
Kapitel 1 : Einleitung
1 Einleitung
Immer wieder berichten die Medien von neuen Bedrohungen durch Viren, Würmer oder
anderen kriminellen Crackeraktivitäten, wobei es hier eine erschreckend hohe Dunkelziffer
gibt, da die Aktivitäten in vielen Fällen gar nicht erst bemerkt werden.
Ziel dieser Arbeit ist es, Computerstraftaten in Form von Crackerangriffen technisch zu
erläutern, um das notwendige Hintergrundwissen für eine juristische Bewertung zu liefern.
Es soll ein Überblick über die verschiedenen Angriffsarten vermittelt werden. Hierzu wird
zunächst in Kapitel 2 die Funktionsweise von Computernetzwerken beschrieben.
Anschließend werden in Kapitel 3 generelle Arten der Bedrohung durch kriminelle
Computermachenschaften vorgestellt, die sich in den aktiven und den autonomen Angriff
untergliedern lassen. Zu diesen werden die jeweils wichtigsten Methoden bzw. Vertreter
technisch erläutert. Der letzte Abschnitt befasst sich mit den wichtigsten Konzepten zur
Abwehr dieser Straftaten. Aufgrund des enormen Umfangs der Thematik geht es hier nicht
um eine technisch detaillierte bzw. vollständige Bearbeitung sämtlicher Hackermethoden,
sondern nur um einen Einblick zur Bewertung der unterschiedlichen Cracker-/
Hackerabsichten. Es sei an dieser Stelle erwähnt, dass in vielen Literaturquellen eine
Unterscheidung zwischen Hackern und Crackern in der Form gemacht wird, dass Hacker
im Gegensatz zu Crackern ihre Methoden ausschließlich dazu anwenden, Sicherheitslücken aufzudecken und die Betroffenen über diese zu informieren. Cracker hingegen
verfolgen bösartige Absichten. In dieser Arbeit wird allgemein von Hacker-Methoden
gesprochen, da diese technisch mit denen der Cracker identisch sind. Bei der juristischen
Bewertung muss diese Unterscheidung jedoch gesondert berücksichtigt werden.
2 Grundlagen eines Computernetzwerkes
Damit ein Netzwerk funktioniert, müssen die teilnehmenden Computer sich an bestimmte
Regeln halten, diese werden als Protokolle bezeichnet. In diesem Kapitel wird auf einige
Protokolle, sowie auf deren Zusammenwirken eingegangen, da dies eine Voraussetzung
zum Verständnis der Möglichkeiten, in ein Computernetzwerk einzudringen, darstellt. Das
auf der TCP/IP Protokollfamilie basierte Internet wurde ursprünglich zu militärischen
Zwecken mit der Zielsetzung einer möglichst robusten Kommunikation zwischen
unabhängigen jedoch miteinander verknüpften Netzwerken entwickelt. Die Ergebnisse
1
Kapitel 2: Grundlagen eines Computernetzwerkes
dieser Überlegungen sind unter anderem, dass die Daten zunächst in einzelne Pakete
unterteilt werden, welche dann über Netzwerkknoten vom Quell- bis zum Zielsystem
gelangen. Die einzelnen Knoten entscheiden hierbei autonom, welchen Weg ein Paket
nehmen soll, d.h. es gibt keine zentrale Kontrollinstanz des Internets.
2.1 Architekturmodelle
Die Struktur und Funktionsweise einer Kommunikation kann durch Architekturmodelle
verdeutlicht werden. Diese sind durch verschiedene Schichten (Layer) strukturiert, welche
jeweils miteinander kommunizieren. Anhand des von der "International Organisation for
Standardisation" (ISO) entwickelten Basisreferenzmodelles zur Datenkommunikation
"Open Systems Interconnection" (OSI), welches aus sieben verschiedenen Schichten
besteht (siehe Abb.1), kann auch die Bedeutung der verschiedenen Protokolle
veranschaulicht werden. Jede dieser Schichten repräsentiert eine einzelne Funktion der
Kommunikation und kann durch verschiedene Protokolle realisiert werden.
Zu beachten ist allerdings, dass sich nicht alle Protokolle direkt an dem OSI-Modell
orientieren. Die TCP/IP Protokollfamilie (auf die sich die in dieser Arbeit beschriebenen
Techniken beziehen) wurde beispielsweise in Anlehnung an das Modell des U.S.
Department of Defense (DoD) (Abb.1) entwickelt. Dieses kann als eine komprimierte
Version des OSI- Modells verstanden werden, das in die Anwendungs-, Transport-,
Internet- und Netzanschlussschicht untergliedert ist (Vgl. [Shi02, S.10])
Abbildung 1: Zusammenhang zwischen OSI- und Internetmodell beispielhafte Protokolle
2
Kapitel 2: Grundlagen eines Computernetzwerkes
In dieser Arbeit wird darauf verzichtet, die weiteren Schichten des OSI-Modells detailliert
zu erläutern, da diese für das Verständnis von TCP/IP nicht erforderlich sind.
2.2 Die TCP/ IP Protokollfamilie
Allgemein versteht man unter einem Protokoll einen Satz von Regeln, nach denen sich die
Kommunikation zwischen zwei Kommunikationspartnern bzw. zwei Diensten der gleichen
Ebene vollzieht. Ein Protokoll legt hierbei die Formatierung (Syntax) und Bedeutung
(Semantik) der ausgetauschten Daten fest. Innerhalb der TCP/IP Protokollfamilie können
verbindungsorientierte und verbindungslose Protokolle unterschieden werden. Bei letzteren
wird nicht garantiert, dass Pakete ihr Ziel erreichen bzw. ihre Reihenfolge erhalten bleibt.
Jedes dieser Protokolle kommuniziert ausschließlich mit demselben Protokoll derselben
Schicht auf dem entsprechenden Zielsystem. Jede Schicht erbringt einen Dienst (Service)
für die übergeordnete Schicht und kann von der untergeordneten eine Dienstleistung
anfordern. So befinden sich zum Beispiel in der Anwendungsschicht Protokolle zur
Emailübertragung wie das SMTP-Protokoll. Wenn zwischen zwei Anwendungen Daten
ausgetauscht werden, durchlaufen diese bei der Übermittlung jeweils alle Schichten des
Quell- und Zielsystems. Die ausgetauschten Daten setzen sich jeweils aus einem Datenteil
(Body), der die eigentlich zu übermittelnden Daten enthält und einem schichtspezifischen
Kopf (Header) zusammen, welcher in jeder Schicht die jeweils zur Übermittlung
notwendigen Informationen enthält. Wenn also eine E-Mail-Übertragung stattfindet, so ist
in der Anwendungsschicht die Email-Nachricht in dem Body- und die Emailadresse (z.B.
[email protected]) im Header-Abschnitt gespeichert.
Das TCP bzw. das UDP Protokoll der Transportschicht übermittelt die Pakete aus der
Internetschicht an die zugehörige Anwendung (der 4. Schicht), welche durch einen
sogenannten Port identifiziert wird. Für eine TCP- bzw. UDP-Übertragung wird immer die
Kombination aus einer IP-Adresse und der entsprechenden Portnummer benötigt, da erst
durch diese beiden Informationen eine Verbindung eindeutig bestimmt ist.
3
Kapitel 2: Grundlagen eines Computernetzwerkes
Abbildung 2 Kapselung der Daten
Desweiteren enthält der TCP-Header einige Kontrollbits (Flags), die zur Steuerung der
Verbindung dienen (Vgl. [RFC793]). Von den insgesamt 6 verschiedenen Kontrollbits
werden nur das ACK-, FIN-, SYN- und das RST-Bit zum Verständnis dieser Arbeit
benötigt. Aus der folgenden Tabelle lässt sich entnehmen, welche Bedeutung ein Segment
hat, in dessen TCP-Header das entsprechende Bit auf „1" gesetzt ist.
Kontrollbit
SYN
ACK
RST
FIN
Bedeutung des Paketes
Zeigt an, dass eine Verbindung aufgebaut (synchronisiert) werden soll
Bestätigt den Empfang von Daten
Zeigt an, dass der Sender die Verbindung abbauen will (reset)
Signalisiert (bestätigt) das Ende der Verbindung – es folgen keine weiteren Daten
Tabelle 1: Bedeutung einzelner Kontrollbits
Die unterhalb der Transportschicht liegende Internetschicht fügt wiederum einen IPHeader mit weiteren schichtspezifischen Informationen hinzu. Dieser beinhaltet sowohl die
Zieladresse, als auch die des Absenders. Bei der Kommunikation in dieser Schicht, spricht
man von Paketen, die über verschiedene Netzwerkknoten weitergeleitet werden.
Die Verbindung der Knoten wird in der Netzanschlussschicht geregelt, in der zur
Adressierung eine für jede Netzwerkschnittstelle eindeutige „MAC-Adresse“ (Media
Access Control-Adresse) verwendet wird. Alle Schichten oberhalb der Internetschicht
arbeiten unabhängig von der unterliegenden Netzwerkstruktur.
4
Kapitel 3: Hackerangriffe: Methoden und Abwehr
Mithilfe des ARP-Protokolls (Address Resolution Protocol) werden in der Internetschicht
Netzwerkknoten eines lokalen Netzwerkes mit ihren IP-Adressen verknüpft; Das Protokoll
ermöglicht also das Übersetzen von MAC- in IP-Adressen. Ein weiteres, in dieser Arbeit
angesprochenes Protokoll der Internetschicht ist das ICMP Protokoll (Internet Control
Message Protocol, beschrieben in [RFC792]). Mithilfe dieses Protokolls können
Netzwerkprobleme aufgespürt und Fehlermeldungen, sowie der Status eines Hosts,
übertragen werden.
3 Hackerangriffe: Methoden und Abwehr
3.1 Eingriffe in fremde Computersysteme
Um die Frage zu beantworten, ab wann der Eingriff in fremde Computersysteme als
Straftat gilt, muss zunächst das mögliche Vorgehen beim Eindringen eines Hackers in ein
Computersystem beschrieben werden. Im Allgemeinen unterscheidet man zwei Formen
des Angriffs, den aktiven und den autonomen Angriff. In diesem Abschnitt wird zunächst
auf Formen eines aktiven Angriffs eingegangen, welcher sich gezielt und kontrolliert
gegen ein bestimmtes System richtet.
Unter autonomen Angriffen versteht man die
Bedrohung durch Viren, Würmer oder Trojaner (Abschnitt 3.2), die sich nicht gezielt
gegen ein bestimmtes System richtet. Diese Angriffsform wird, nachdem sie eingeleitet
wurde, nicht kontrolliert sondern verläuft automatisiert. Bei einem Angriff wird der
Angreifer zunächst versuchen, sich auf diesen vorzubereiten, indem er möglichst viele und
präzise Informationen sammelt. Hierfür eignen sich Programme wie Portscanner oder
Sniffer.
Zunächst werden nun einige Formen eines aktiven Angriffs beschrieben, bei der ein
Angreifer versucht, in ein Zielsystem einzudringen. Im Zuge der Informationsgewinnung
besteht der erste logische Schritt eines Hackers darin, sich einen Überblick über das lokale
Netzwerk seines „Opfers“ zu verschaffen. Mit Hilfe eines "Ping-Sweeps" ist es
beispielsweise möglich, festzustellen, welche aktiven Zielsysteme (Hosts) sich in einem
Netzwerk befinden. Ein "Ping-Sweep" besteht aus einer Reihe von ICMP-Anfragen, die an
verschiedene Rechner gesendet werden. Hierbei handelt es sich um eine Methode, mit der
eine Liste von aktiven Hosts (bzw. deren IP-Adressen) in einem Adressraum erstellt wird.
Bei einem Ping wird also eine ICMP-Echoanfrage an eine Ziel IP-Adresse gesendet, die
ein aktiver Host (wenn der entsprechende Dienst aktiviert ist) mit einer ICMP5
Kapitel 3: Hackerangriffe: Methoden und Abwehr
Echorückmeldung beantwortet. Der nächste Schritt kann sich dann sehr gezielt gegen sein
eigentliches Zielsystem (z.B. einen Datenbankserver) richten. Fast jedes System (abhängig
von der Hardware, Software bzw. der Version eines aktiven Dienstes) weist bestimmte
Merkmale auf, die es charakterisieren. Daher ist es mittels eines sogenannten Portscans
(s. u.) möglich, das Betriebssystem oder die aktiven Services und auch deren
Versionsnummern zu erkennen. Dies ist problematisch, da im Internet Informationen über
bereits bekannte bzw. neu entdeckte Schwachstellen veröffentlicht werden. Zusammen mit
den Informationen die ein Angreifer über die auf einem System vorhandene Software hat,
ist es ihm möglich vorhandene Schwachstellen zu erkennen und diese gezielt zum
Eindringen in das System auszunutzen.
3.1.1 Portscanner
Portscanner (wie z.B. nmap) stellen einen möglichen ersten Schritt eines aktiven
Hackerangriffs dar, indem sie helfen, potentielle Zielsysteme zu erkennen und an diesen
mögliche Schwachstellen in Form von aktiven Diensten (Programme, die an speziellen
Ports erreichbar sind) zu entdecken. Hierzu werden verschiedene, im Folgenden
beschriebene Techniken verwendet, um das Netzwerk bzw. Zielsystem abzutasten.
Die verschiedenen Methoden von Portscans können anhand des Ausmaßes an Spuren, die
hinterlassen werden (in den Protokollen des Zielsystems) und durch die Verlässlichkeit der
Ergebnisse in den "offenen"-, den "halb offenen"- und den "stealth"-Portscan
gegliedert werden (Vgl. [Syn01]).
Bei einem Scan nutzt der Hacker bestimmte Eigenschaften der Kommunikation in TCP/IP
basierten Netzwerken. Grundsätzlich basiert ein Portscan darauf, dass für den Aufbau einer
Verbindung zwischen zwei Teilnehmern ein sogenannter "Drei-Wege-Handshake"
durchgeführt wird.
In dem folgenden Beispiel baut ein Client eine Verbindung zum World-Wide-Web-Dienst
auf, der an TCP-Port 80 ausgeführt wird. Der Client (Empfänger eines Dienstes) führt das
"Drei-Wege-Handshake" mit dem WWW-Dienst an Port 80 des Servers (Anbieter eines
Dienstes) durch. Dieses geschieht durch den Austausch von besonderen TCP Segmenten,
die hier vereinfacht nach den in ihrem Header gesetzten Kontrollbits benannt werden.
6
Kapitel 3: Hackerangriffe: Methoden und Abwehr
Beim "Drei-Wege-Handshake" wird das eintreffende TCP Segment mit gesetztem SYN
Flag (im folgenden nur als SYN bezeichnet) durch ein entsprechendes „SYN/ACK“
beantwortet, welches vom Client noch mit einem ACK ("acknowledgement") bestätigt
wird.
Abb.3: Das Drei-Wege-Handshake von TCP [Sca01, S.82]
Ist das letzte Signal beim Server eingetroffen, besteht eine gültige TCP-Verbindung
zwischen den beiden Systemen. Die Daten der Anwendungsschicht können jetzt über das
Netzwerk ausgetauscht werden. Wie im Folgenden gezeigt wird, gibt es allerdings auch
Methoden, die sich gerade nicht an diesen vorgegebenen Verbindungsaufbau halten.
Bei einem offenen Portscan werden vollständige Verbindungen mit einzelnen Ports eines
Zielsystems durch ein typisches (wie oben beschriebenes) "Drei-Wege-Handshake"
hergestellt. Es handelt sich hierbei um eine sowohl einfache, als auch schnelle Methode
eines Portscans. Derartige Verbindungsversuche können, abhängig vom Zustand des
jeweiligen Ports, auf zwei verschiedene Arten ablaufen, vorausgesetzt sie werden nicht
durch eine Firewall blockiert. In Tabelle 2 sind die jeweils für einen offenen bzw. einen
geschlossenen Port übertragenen Pakete bei einem offenen Portscan aufgelistet.
Übertragung bei einem offenen Port
Client --> Server : SYN
Server --> Client : SYN / ACK
Client --> Server : ACK
Übertragung bei einem geschlossenen Port
Client --> Server : SYN
Server --> Client : RST / ACK
Client --> Server : RST
Tabelle 2: Ablauf des „Drei-Wege-Handshakes" für offene bzw. geschlossenen Ports.
Der Client kann also an der entsprechenden Antwort den Zustand des Zielports erkennen
und mit dem Scannen des nächsten Ports fortfahren. Da normalerweise jeder
Verbindungsaufbau protokolliert wird, ist dieser Portscan leicht erkennbar und einfach
abzuwehren. Bei dieser Methode ist es nicht möglich, seine eigene IP-Adresse zu fälschen
(Spoofing), da die Antwort den Absender (Client) erreichen muss. Also besteht, aus Sicht
des Angreifers, ein weiterer „Nachteil“ aufgrund seiner relativ einfachen Überführung, da
er durch seine protokollierte IP-Adresse identifiziert werden kann. Beim "Spoofing" kann
ein Hacker eine falsche Quelladresse seiner Pakete im IP-Header (siehe Netzwerkschicht)
angeben, um seine Identität zu fälschen. Allerdings werden Antworten auf derartig
7
Kapitel 3: Hackerangriffe: Methoden und Abwehr
veränderte Pakete nicht an ihren eigentlichen Absender, sondern an die im IP-Header
eingetragene Adresse gesendet.
Bei einem "halb offenem" Portscan wird kein vollständiges "Drei-Wege-Handshake"
durchgeführt. Auf diese Weise kann verhindert werden, dass der Portscan vom Zielsystem
protokolliert wird. Als Beispiel einer "halb offenen" Scanmethode sei hier der sogenannte
„SYN-Scan“ besprochen [Fyo97]. Hierbei wird das SYN/ACK durch ein RST beantwortet,
was zum sofortigen Abbruch des Verbindungsaufbaus führt. Die Antwort bei einem
geschlossenen Port entfällt vollständig. Hierdurch kann erreicht werden, dass ein solcher
unvollständiger Verbindungsversuch nicht protokolliert wird. Daher ist es schwieriger,
diesen Portscan zu entdecken. Dadurch, dass diese Methode einen Teil der übertragenen
Daten einspart ergibt sich zusätzlich ein Geschwindigkeitsvorteil.
Bei dem „stealth“-Portscan wird beispielhaft auf den sogenannten „SYN/ACK“-Scan
eingegangen, der verwendet wird, um den Angriff noch besser zu tarnen. Die Ergebnisse
dieser Methode sind allerdings weitaus weniger verlässlich. Anstelle des üblichen "DreiWege-Handshakes" wird hier vom scannenden Client nur ein SYN/ACK gesendet. Gelangt
dieses Segment an einen geschlossenen Port, beantwortet der Server es durch ein RST, da
ohne ein vorangegangenes SYN von einem fehlerhaften Verbindungsversuch ausgegangen
wird. Im Falle eines offenen Ports erhält der Client keine Antwort des Servers, da dieser
das (informationslose) Segment unbeantwortet verwirft. Problematisch bei dieser Methode
ist es, dass alle durch eine Firewall (s. 3.3.1) blockierten Ports als offen interpretiert
werden.
Aus Sicht eines Netzwerkbetreibers ist es oftmals schwierig zu entscheiden, ab wann es
sich bei einer Übertragung um einen Portscan und somit um das Eindringen in das
Netzwerk handelt. Da prinzipiell alle Scan-Typen Pakete verwenden, die grundsätzlich
auch auf „natürlichem“ Wege entstehen können, muss ein Portscan durch die Anzahl der
von einem einzigen Client ausgehenden Pakete (bzw. Verbindungsversuche) identifiziert
werden, da man bei einem einzelnen Verbindungsaufbau niemals von einem „Scan“
sprechen kann. Diese Tatsache kann sich ein Angreifer zunutze machen, indem er seinen
Portscan über eine größere Zeitspanne verteilt und zum Scannen mehrere unabhängige
Clients verwendet (distributed scan) (Vgl. [Kei03, S.141ff]).
8
Kapitel 3: Hackerangriffe: Methoden und Abwehr
3.1.2 Social Engineering
Eine ganz andere Form des Einbruchs ist das "Social Engineering". Der Angreifer
verwendet hierbei keine technischen Hilfsmittel, um an Informationen zu gelangen,
sondern versucht jemanden dazu zu "überreden", ihm Zugang zu gewähren bzw. ungewollt
Hilfestellung zu leisten. Zunächst sammelt ein Angreifer möglichst viele Informationen
über sein potenzielles Opfer. Hierbei bedient er sich sämtlicher, öffentlich verfügbarer
Quellen. Unter einem Vorwand tritt er nun mit seinem Opfer beispielsweise per E-Mail in
Kontakt, wobei er eine falsche Identität verwendet. Unerfahrene oder gutgläubige Benutzer
lassen sich so beispielsweise dazu bewegen, Trojaner (s. 3.2.4) zu installieren, Details über
die Netzwerkstruktur preiszugeben oder sogar dazu, ihr Passwort und ihren
Benutzernamen zu übermitteln. Dieses Vorgehen wird an dieser Stelle erwähnt, da es sich
bei großen Firmen, mit gut gesicherten Netzwerken und vielen Mitarbeitern, durchaus als
erfolgreiche Strategie erweisen kann (Vg. [Kei03, S.60]).
3.1.3 Sniffer
Bei einem Sniffer handelt es sich um ein Programm, welches ein Computernetzwerk nach
Informationen absucht. Dieser Vorgang ist mit dem Abhören eines Telefons vergleichbar.
Die Vorgehensweise beim Sniffing ist stark vom betrachteten Netzwerktyp abhängig. Die
im Folgenden beschriebenen Sniffing Techniken beziehen sich auf das Abhören von
lokalen Ethernet Netzwerken. Derartige Sniffer sind in der Lage, alle Rohdaten, die über
eine Netzwerkschnittstelle geleitet werden, abzuhören und aufzunehmen. Dieser Vorgang
geschieht auf der Netzanschlussschicht des Internet-Modells. Daher können alle Regeln
der Protokolle auf höheren Ebenen umgangen werden. Das Sniffing-Tool benötigt hierzu
den direkten Zugriff auf den Netzwerktreiber des Computers. Derartige Programme
werden eingesetzt, um beispielsweise Netzwerkprobleme aufzuspüren, sie können aber
auch für die Zwecke eines Angreifers missbraucht werden.
Bekannte Sniffing-Softwarepakete sind beispielsweise Etherreal, Ettercap, Sniffer Pro,
TCPDump und dsniff. Die Vorgehensweise hängt hierbei von der Struktur des Netzwerkes
ab. Bei sogenannten Broadcast-Medien, sind die einzelnen Netzwerkteilnehmer über ein
gemeinsames Übertragungsmedium verbunden. Dies ist z.B. beim klassischen Ethernet
oder bei WLAN Netzwerken der Fall. Bei diesem Netzwerktyp werden alle Rechner an
einen
Ethernet-Hub
angeschlossen.
Die
versendeten
Daten
erreichen
jede
Netzwerkschnittstelle des lokalen Netzes und müssen hardwareseitig gefiltert werden. Um
9
Kapitel 3: Hackerangriffe: Methoden und Abwehr
Netzwerke dieses Typs zu "sniffen" genügt es, dass der Sniffer die Netzwerkkarte in den
sogenannten "promiscuous mode" versetzt, bei dem alle Daten ungefiltert empfangen
werden können.
Heutzutage werden in lokalen Netzwerken Ethernet–Switches verwendet (im Folgenden
einfach als Switch bezeichnet), um die einzelnen Rechner zu verbinden. Diese filtern den
Netzwerkverkehr zentral und erreichen auf diese Weise, dass die Netzwerkteilnehmer nur
die für sie bestimmten Daten empfangen. Diese Funktionsweise stellt allerdings weniger
einen Sicherheitsmechanismus dar, sondern dient der Verbesserung der Effizienz. Um die
Daten gezielt weiterleiten zu können, muss ein Switch speichern, welchem seiner Ports
welche MAC- Adresse zugeordnet ist. Um derartige Netzwerke abzuhören, ist es
notwendig, in die Kommunikation mit dem Switch aktiv einzugreifen, um den Datenstrom
umzuleiten. Hierzu können verschiedene Techniken wie beispielsweise das sogenannte
MAC-flooding, das ARP- bzw. das DNS-spoofing eingesetzt werden, auf die hier
allerdings nicht näher eingegangen wird (Vgl. [Ryn02, S.363ff]).
Durch diese Verfahren gelangt der Sniffer an alle Daten, die in dem gesamten lokalen
Netzwerk übertragen werden. Dies führt unweigerlich zu einer unüberschaubaren
Datenflut. Daher besteht eine weitere wichtige Aufgabe der Sniffing-Techniken darin,
diese zu analysieren und zu filtern. In einem ersten Schritt werden oft alle Daten in einer
Datei gespeichert, welche anschließend ausgewertet und gezielt nach bestimmten
Verbindungstypen durchsucht wird.
Bei dieser Auswertung verwendet der Angreifer
spezielle Tools, mit denen er die für ihn relevanten Informationen herausfiltern kann.
Beispielsweise
können
Authentifizierungsinformationen
wie
Benutzernamen
und
Passwörter durch ein Programm wie „BUTT-Sniffer“ oder „Dsniff“ in Übertragungen
aufgespürt und dann isoliert angezeigt werden. Die Fähigkeit dieser speziellen Tools
besteht darin, dass sie bestimmte Protokolle beherrschen und diese so gezielt decodieren
und nach Schlüsselinformationen durchsuchen können. Weitere Ziele eines Angreifers sind
typischerweise Email- , Web- oder Dateiübertragungen, also z.B. das SMTP-, HTTP- oder
FTP- Protokoll, um nur einige bekannte zu nennen.
Die Möglichkeiten des Abhörens nehmen durch die zunehmende Verschlüsselung
öffentlicher Internet-Dienste stark ab. Es gibt jedoch Sniffer, die in der Lage sind, einige
dieser Verschlüsselungstechniken zu umgehen. Die grundlegende Technik wird als Manin-the-Middle (MITM) Angriff bezeichnet, mit der SSH- (in der Version 1) und SSLVerbindungen überwacht werden können. Dieses gelingt, indem der Angreifer einen
10
Kapitel 3: Hackerangriffe: Methoden und Abwehr
Server einrichtet, welcher die Anforderung eines Clients, der eine gesicherte Verbindung
aufbauen möchte, beantwortet. Ein Benutzer, der diesen Computer kontaktiert, wird
fälschlicherweise
glauben,
er
hätte
die
gewünschte
verschlüsselte
Verbindung
aufgenommen. Gleichzeitig verbindet sich der Angreifer mit dem "echten" Server und gibt
sich dort als Benutzer aus. Somit fungiert der Angreifer in beiden Rollen, er entschlüsselt
die eingehenden Daten des Benutzers, um diese wiederum neu verschlüsselt an ihr
eigentliches Ziel weiterzuleiten.
3.2 Viren, Würmer, Trojaner und Hoaxes
Dieser Abschnitt befasst sich mit der Form eines „autonomen Angriffs“. Die Bedrohung
geht hier von Programmen aus, welche autonom, d.h. ohne explizite Kontrolle durch einen
Angreifer agieren und sich nicht gezielt gegen ein bestimmtes System richten. In diesem
Zusammenhang spricht man von feindseligem Code oder gelegentlich von „Malware“.
Zunächst geht es hier darum, eine Abgrenzung der verschiedenen Formen von
feindseligem Code vorzunehmen. Man unterscheidet Viren, Würmer und Trojanische
Pferde. Aufgrund neuerer Entwicklungen werden inzwischen auch sogenannte Hoaxes
(s. 3.2.5) und Kettenbriefe von Anti-Virenprogrammen bekämpft.
Diese Unterscheidung wird nicht anhand des tatsächlich angerichteten Schadens
vorgenommen, sondern richtet sich nach der Art der Verbreitung und der Taktik, die zur
Tarnung benutzt wird.
3.2.1 Viren und Würmer : Definition und Abgrenzung
Eine Abgrenzung zwischen Viren und Würmern findet sich in der RFC 1135 [RFC]. Dort
wird ein Virus wie folgt definiert:
„Ein Virus ist ein Codeabschnitt, der sich in einen Host, einschließlich dessen
Betriebssystem, einschleust, um sich zu verbreiten. Er kann nicht unabhängig existieren.
Es ist notwendig, dass sein Wirtsprogramm gestartet wird, um ihn zu aktivieren.“
Ein Virus breitet sich demnach innerhalb eines infizierten Systems lokal aus, indem er eine
Vielzahl von Kopien von sich selbst speichert. Er kann nur übertragen werden, indem sein
Wirtsprogramm auf „legalem Weg“ auf das System gelangt und dort ausgeführt wird.
Dieses kann via Diskette aber auch als Emailanhang geschehen.
11
Kapitel 3: Hackerangriffe: Methoden und Abwehr
Würmer hingegen breiten sich zwischen Systemen (beispielsweise über ein Netzwerk) aus
und verstecken sich typischerweise in eigenständigen, meist unauffälligen Dateien.
In RFC 1135 [RFC] werden Würmer folgendermaßen definiert:
„Ein Wurm ist ein Programm, das unabhängig ausgeführt werden kann und die Ressourcen
des Wirtssystems von innen verzehrt, um sich zu erhalten. Der Wurm kann dann neue
funktionsfähige Kopien von sich selbst auf anderen Wirtssystemen verbreiten.“
Zur Verbreitung nutzen Würmer bekannte Schwachstellen der Sicherheitsarchitektur von
Betriebssystemen und Protokollen aus oder Programmier- und Administrationsfehler,
durch die sie Zugang zu einem System erlangen können. Sie wenden zur Verbreitung
verschiedene Hacker-Methoden an, um automatisch in Systeme einzudringen, von denen
sie wiederum weitere Systeme angreifen.
3.2.2 Prinzipieller Aufbau von Viren und Würmern
Der Aufbau von schädlichen Programmen lässt sich in verschiedene allgemeine Abschnitte
aufteilen. Viren bzw. Würmer können in bis zu fünf funktionale Bereiche unterteilt
werden.
Es
werden
aber
mindestens
die
zwei
Hauptbestandteile,
der
Verbreitungsmechanismus und der Payload (hier Schadensteil), unterschieden [Bsi97].
Alle Viren und Würmer verfügen über einen Verbreitungsmechanismus, mit dem ihre
Ausbreitung sichergestellt wird. Aufgrund des Verbreitungsmechanismus unterscheiden
sich Viren von Würmern. Viren verbreiten sich nur lokal auf einem System. Würmer
verbreiten sich dagegen aktiv über ein Netzwerk. Es ist hiefür prinzipiell keine
menschliche Aktion (Übertragung des Wirtsprogramms) notwendig. Der Aufbau eines
Wurms ist analog zu dem eines Virus.
Der Erkennungsteil ist ein spezieller Abschnitt, welcher eine Funktion enthält, mit der
geprüft werden kann, ob eine Verbreitung des Virus oder Wurms auf ein bestimmtes neues
Ziel, beispielsweise eine Datei oder ein Rechner, bereits stattgefunden hat. Das wiederholte
Infizieren einzelner Bereiche würde den Virus ineffizient machen und somit seine
Ausbreitung gefährden.
Über einen Bedingungsteil ist es möglich, sowohl die Verbreitung als auch die
Schadensfunktionen an eine bestimmte, in diesem Abschnitt definierte Bedingung zu
knüpfen. Auslöser können etwa ein bestimmtes Datum oder eine definierte Anzahl von
12
Kapitel 3: Hackerangriffe: Methoden und Abwehr
Aufrufen sein. Ohne eine solche Bedingung ist es wahrscheinlicher, dass der Virus bzw.
Wurm entdeckt wird, bevor er einen hinreichenden Verbreitungsgrad erreicht hat.
Der Schadensteil enthält die eigentliche Nutzlast (Payload) des Virus. Hier befindet sich
der Code, der den eigentlichen Schaden anrichtet, welcher über die reine Existenz des
Virus und dessen Ressourcenverbrauch hinausgeht. Beispielsweise ist es möglich, Dateien
zu löschen oder sogar Hardware zu zerstören. Durch Programmierfehler oder Änderungen
am Betriebssystem kann zusätzlicher Schaden als Nebeneffekt entstehen.
Die Kombination aus dem Bedingungsteil und dem Payload wird oft auch als "logische
Bombe" bezeichnet.
Darüber hinaus werden sämtliche Techniken, die ein Virus/Wurm verwendet, um nicht
entdeckt zu werden, unter dem Tarnungsteil zusammengefasst. Es gibt z.B. sogenannte
„stealth“-Viren, die durch Eingriffe in das Betriebssystem versuchen, unentdeckt zu
bleiben. Diese können durch das Anzeigen falscher Dateigrößen oder das Sperren des
Zugriffs auf bestimmte Bereiche der Festplatte ihre Entdeckung verhindern.
3.2.3 Spezielle Virenformen und deren typische Charakteristik
Anhand des Verbreitungsmechanismus der Viren können die verschiedenen Unterarten
klassifiziert werden.
Der File–Virus, auch parasitischer- oder Link-Virus genannt, lagert sich an
Programmdateien, sogenannte Wirtsprogramme, an und fügt sich an deren Anfang in die
Befehlskette ein. Beim Aufrufen dieses Programms wird nun zuerst der Virus- und im
Anschluss der eigentliche Programm-Code ausgeführt, wodurch der Virus eine längere
Zeit unbemerkt bleiben kann. Es gibt auch primitive File-Viren, die sich entweder
fehlerhaft in ein Programm einschleusen oder dieses komplett überschreiben.
Eine besondere Form der File-Viren sind die polymorphen Viren. Diese Viren mutieren,
d.h. sie sind in der Lage, ihren Programmcode selbstständig zu verändern. Dieser
Tarnungsmechanismus wird auch als Polymorphismus (Vgl. [Ryn02], [Pla03]) bezeichnet.
Im Gegensatz zum biologischen Vorbild bleibt beim Mutieren des Virus seine
Funktionsweise immer identisch.
Eine relativ neue Virenform sind die Makroviren. Sie benötigen für ihre Existenz eine
spezifische Software, welche in der Lage ist einen speziellen Programmcode (sogenannte
Makros) auszuführen. Dieser Programmcode kann zusammen mit anderen Informationen
13
Kapitel 3: Hackerangriffe: Methoden und Abwehr
in programmeigenen Dateien abgespeichert werden, die wiederum nicht eigenständig
ausführbar sind. Da Anwendungen wie beispielsweise Textverarbeitungen zunehmend
komplexer werden und die Einbindung von nahezu beliebigen Programmcode zulassen,
nimmt sowohl die Bedrohung durch Makroviren als auch deren Verbreitung zu. Ein
beliebtes Beispiel hierfür ist VBA (Visual Basic for Applications), das im gesamten
Microsoft Office-Paket implementiert ist und umfangreiche Befehle zulässt. Aus
befallenen Office-Dateien (*.DOC, *.XLS,...) heraus können die Makroviren nicht nur
diese selbst, sondern oftmals auch systemübergreifend Dateien ändern oder löschen. Da
inzwischen viele Bestrebungen existieren, dass Office-Dokumente zu möglichst vielen
Office-Versionen auf verschiedenen Betriebssystemen kompatibel sind, ist die Verbreitung
von Makroviren prinzipiell sogar unabhängig vom Betriebssystem.
3.2.4 Trojanisches Pferd (Trojaner)
Bei einem Trojanischen Pferd, auch einfach Trojaner genannt, handelt es sich um ein
umfassendes Programm, welches sich als harmlos bzw. nützlich ausgibt, um dann versteckt
vor dem Benutzer verborgene Aktivitäten durchzuführen. Der Name deutet auf die
Analogie zum Trojanischen Pferd hin, das bei der Schlacht um Troja in die Stadt
eingeschleust wurde, um dem griechischen Heer Einlass zu verschaffen. Am deutlichsten
wird diese Ähnlichkeit bei den sogenannten „Backdoor“-Trojanern, die einem Angreifer
Zugang bis hin zur totalen Kontrolle eines Systems ermöglichen.
Im Gegensatz zu Viren und Würmern verbreiten sich Trojaner nicht selbstständig. Sie
werden entweder gezielt an einen Benutzer gesandt oder zufällig entdeckt und dann von
diesem ausgeführt. Um dieses zu erreichen und nicht entlarvt zu werden, wird dem
Benutzer eine "harmlose" Funktionsweise des Programms vorgetäuscht.
Der allgemeine Aufbau eines Trojanischen Pferdes lässt sich in zwei Bereiche, den
Tarnungsteil und den Payload, unterteilen (Vgl. 3.2.2).
Opfer eines Trojaners haben sich diesen also entweder aufgrund seiner vorgetäuschten
Funktionsweise aktiv beschafft oder ihnen wurde dieser im Zuge eines aktiven Angriffs
bewusst zugespielt. Darüber hinaus gibt es auch hybride Formen, bei denen ein Trojaner
mit einem Wurm „kombiniert“ wird, so dass auch beispielsweise eine automatische
Verbreitung über Emails möglich wird.
14
Kapitel 3: Hackerangriffe: Methoden und Abwehr
3.2.5 Hoaxes
Eine andere Bedrohung stellen Hoaxes dar. Es handelt sich hierbei um falsche
Virusmeldungen, die als E-Mail versendet werden. In diesen E-Mails wird meistens vor
einem neuen Virus gewarnt, der nicht durch eine Anti-Virensoftware bekämpft werden
kann. Außerdem wird der Empfänger dazu aufgefordert, diese E-Mail an möglichst viele
Personen weiterzuleiten. Teilweise wird sogar zu bestimmten, meist schädlichen Aktionen
aufgefordert. Ein weniger erfahrener Benutzer kann so dazu gebracht werden, wichtige
Systemdateien umzubenennen oder zu löschen. Zusätzlicher Schaden entsteht durch
verlorene Arbeitszeit und die Überlastung der E-Mail-Systeme. Typische Elemente eines
Hoax ist die Aufforderung, diese E-Mail an möglichst viele Personen weiterzuleiten, der
Hinweis auf eine völlig neue Form eines Virus oder Wurms, die Vorgabe einer seriösen
Informationsquelle und das Fehlen der E-Mail-Adresse des Absenders.
3.3 Wie kann man sich technisch vor Eingriffen in
Firmennetzwerke/WLANs schützen?
Besteht in einem Netzwerk ein Übergang zu anderen (externen) Netzwerken, ergibt sich
zwangsläufig das Problem, dass prinzipiell alle Rechner und Dienste von außen erreichbar
sind. Es werden im Folgenden einige Methoden beschrieben, mit denen die potenziellen
Risiken eines unerlaubten Eingriffes von außen verringert werden können. Aufgrund ihrer
physikalischen Struktur stellen Wireless Lan Netzwerke (WLAN) einen Sonderfall dar und
werden hier gesondert behandelt. Mit Ausnahme der WLANs schützt man Netzwerke an
zentralen Zugangspunkten. Dadurch wird die Administration, Konfiguration und Planung
der Netzwerksicherheit erleichtert.
3.3.1 Firewalls
Besonders wichtig im Zusammenhang mit der Netzwerksicherheit ist eine sogenannte
Firewall. Darunter wird allgemein ein System verstanden, welches den Datenverkehr
zwischen zwei Netzwerken kontrolliert. Üblicherweise befindet sich dieses am Übergang
zwischen dem lokalen und dem externen Netzwerk und wird teilweise durch eine Personal
Firewall an den einzelnen Hosts ergänzt. Man unterscheidet zwei grundlegende Typen von
Firewalls, Paketfilter und Proxy-Firewalls, da diese sich auf unterschiedliche Schichten des
OSI- / Internet-Modells beziehen (Vgl. [Heg02, S.66ff]).
15
Kapitel 3: Hackerangriffe: Methoden und Abwehr
Paketfilter sind auf der Ebene der Transport- und Internetschicht angesiedelt und
überwachen den Datenverkehr unabhängig von den kommunizierenden Anwendungen.
Ihre Funktionsweise besteht darin, bestimmte Eigenschaften der Pakete auszuwerten und
diese dann entweder zuzulassen oder abzuweisen. Die abgewiesenen Pakete werden
üblicherweise protokolliert.
Bezüglich der Informationsgewinnung aus den Paketen lassen sich zwei Arten
unterscheiden, die statische und die dynamische Paketfilterung. Nur letztere, auch
„Statefull Inspection“ genannt, ist zustandsabhängig und berücksichtigt zusätzlich
vorangegangene Pakete. Sie stellt gegenüber der statischen Paketfilterung einen weiteren
Sicherheitsgewinn dar. So lässt sich beispielsweise zu einer ausgehenden Verbindung bei
Bedarf die entsprechende Gegenrichtung (Pakete aus dem unsicheren Netzwerk) für die
Dauer der Kommunikation freischalten.
Die Auswertung geschieht bei beiden Typen anhand von vorher definierten Regeln. Als
sinnvoll hat sich hierbei das Erstellen einer Positivliste erwiesen, bei der alle Pakete, die
nicht mindestens einer Regel dieser Liste entsprechen, blockiert werden.
Zur Filterung können jeweils die folgenden Informationen verwendet werden:
•
IP-Adressen
Filterregeln können Quell- und Zieladressen der Pakete berücksichtigen. So können
Pakete, die von bestimmten Adressen ausgehen, gesperrt werden. Dies ermöglicht
die Abwehr eines Spoofing Angriffs, bei dem die Quelladresse eines externen
Paketes als interne abgeändert wird. Dieses ist möglich, da sich die Firewall an der
Schnittstelle der Netzwerke befindet und ihr immer bekannt ist, welchem Netzwerk
ein Paket wirklich entstammt. Durch Einschränkungen der erlaubten Zieladressen
können beispielsweise bestimmte Rechner des internen Netzwerkes vor dem
externen Zugriff geschützt werden.
•
Flags (Kontrollbits)
Die Berücksichtigung der Richtung eines Verbindungsaufbaus wird durch die
Auswertung der Kontrollbits des TCP- Headers möglich. Hier können auch
fehlerhafte Versuche eines Verbindungsaufbaus blockiert werden (vgl. Portscan).
•
Ports der Transportschicht
Eine Überwachung der Quell- und Zielports ermöglicht einen zusätzlichen Schutz
einzelner Dienste, die jeweils mit einem speziellen Port verknüpft sind.
•
Protokolltyp (z.B. TCP, UDP, ICMP)
16
Kapitel 3: Hackerangriffe: Methoden und Abwehr
Eine häufige Konfiguration ist hier beispielsweise das Blockieren jeglicher ICMP
und UDP Pakete (mit Ausnahme von DNS Anfragen). So wird das Netzwerk z.B.
gegen „Ping-sweeps“ (s. 3.1) gesichert.
•
Anwendungsdaten
Paketfilter können programmiert werden, die Daten außerhalb des Headers der
Transportschicht zu untersuchen. Da aber keine protokollspezifische Interpretation
der Daten (siehe Application Gateway) stattfindet, scheitert diese Analyse
beispielsweise bei fragmentierten Paketen oder verschlüsselten Übertragungen.
Paketfilter haben den Vorteil, dass sie in Echtzeit sehr große Datenmengen verarbeiten
können. Da die Anwendungsschicht allerdings unberücksichtigt bleibt, bieten diese auch
keinen optimalen Schutz. Beispielsweise kann durch einen Paketfilter nicht überprüft
werden, ob die an einem Port übertragenen Daten tatsächlich zu dem Dienst gehören, für
den dieser Port reserviert ist. Es können also über den Port 80, der üblicherweise für das
HTTP–Protokoll reserviert ist, unbemerkt auch beliebige andere Daten übertragen werden.
Im Gegensatz zu den Paketfiltern werden bei Proxy-Firewalls die Verbindungen an den
Netzwerkübergängen unterbrochen, so dass das sichere und das unsichere Netzwerk
physikalisch voneinander getrennt sind. Unter einem Proxy versteht man ein Programm,
das die Kommunikation zwischen zwei getrennten Netzwerken vermittelt, welche
üblicherweise jeweils mit einer Schnittstelle des Proxy-Hosts verbunden sind. Bei einem
Verbindungsaufbau aus dem internen Netzwerk richtet dieser Client eine Anfrage zunächst
an den entsprechenden Proxy. Dieser baut dann seinerseits eine Verbindung mit dem
eigentlichen Ziel auf, vorausgesetzt dass dieses nicht durch eine entsprechend definierte
Sicherheitsrichtlinie gesperrt ist. Aus Sicht des Zielhosts (im unsicheren Netzwerk)
erscheint der Proxy mit seiner IP-Adresse als Kommunikationspartner und nicht der
interne Client. In umgekehrter Richtung wird analog Verfahren und eine Verbindung
zunächst mit dem Proxy aufgebaut. Dadurch bleibt die Struktur des sicheren gegenüber
dem unsicheren Netzwerk verborgen und der Datenverkehr kann zentral überwacht
werden. Ein Nachteil dieser Firewall-Konfiguration ist, dass es keine Möglichkeit einer
direkten Verbindung zwischen Rechnern des internen Netzwerkes und denen des externen
Netzwerkes gibt, woraus sich gegebenenfalls Einschränkungen für die Benutzer ergeben.
Allgemein werden Proxy Gateways wiederum abhängig von ihrer Zuordnung im OSI- /
Internet- Modell in Circuit Level Gateways und Application Level Gateways unterteilt.
17
Kapitel 3: Hackerangriffe: Methoden und Abwehr
Ein Application Level Gateway ist auf der Anwendungsschicht des OSI-/Internet- Modells
angesiedelt und erlaubt eine Kontrolle des Inhaltes von Paketen. Es handelt sich hierbei um
den sichersten und aufwendigsten Firewalltyp. Bei einer Firewall auf dem Application
Level sind für jedes zur Verfügung gestellte Protokoll entsprechende Proxyprozesse auf
dem Firewall Host installiert. Die Kommunikation ist protokollabhängig an diese gerichtet
und kann so vermittelt werden. Es werden häufig zusätzliche Benutzerauthentifizierungen
eingebaut, wodurch zum Einen die Protokollierung der Kommunikation und zum Anderen
die Erstellung von Richtlinien, den Benutzer einbezieht. Dadurch wird es möglich,
zulässige Verbindungen anwendungs-, zeit-, benutzer- und rechnerbezogen zu definieren.
Zur Vermittlung der Kommunikation verhält sich ein Application Gateway wie das
entsprechende Originalprogramm eines verwendeten Protokolls (Abb.4). Durch die
inhaltliche Interpretation der übermittelten Daten ist es auch möglich, einzelne Befehle in
den Anwendungen zu unterbinden bzw. diese nach Schlüsselwörtern zu durchsuchen. Bei
einem HTTP-Proxy kann beispielsweise zwischen "normalem" Hypertext und JavaScript
unterschieden werden. Kommunikationsversuche von schädlichen Programmen, wie
beispielsweise Trojanern (s. 3.2.4), können hier ebenfalls aufgedeckt und somit
unterbunden werden. Auf diese Weise ist es möglich, einen gezielten Angriff auf bekannte
Schwachstellen einzelner Dienste bzw. Server abzuwehren.
Abb. 4: Kommunikation über ein Application Level Gateway [Heg02, S.200]
Ein Circuit Level Gateway (auch als TCP-/UDP-Relay bezeichnet) ist auf der
Transportschicht angesiedelt und stellt eine Alternative zur Paketfilterung dar. Dieses
Proxy Firewall Konzept ist auch dann einsetzbar, wenn kein Proxy für das entsprechende
Protokoll existiert. Prinzipiell besteht der Unterschied zur Paketfilterung in der
Unterbrechung der Verbindung an dem Proxy – Host. (Vgl. [Heg02, S.224])
3.3.2 Intrusion Detection Systeme (IDS)
Eine Firewall ist eine wirksame Technik, um sich gegen bekannte Angriffe aus einem
unsicheren Netzwerk zu schützen, allerdings bietet sie keine Möglichkeit, auf einen
18
Kapitel 3: Hackerangriffe: Methoden und Abwehr
unbekannten Angriff zu reagieren oder diesen zu entdecken. Eine zentrale Firewall bietet
darüber hinaus keinen Schutz gegen Angriffe aus dem internen Netzwerk.
Ein Intrusion Detection System ist ein Sicherheitssystem, mit dem Angriffe auf ein
Netzwerk erkannt werden können, indem Unregelmäßigkeiten im Netzwerk aufgespürt
werden. Beim Entdecken eines solchen Angriffs kann dieses System automatisch Alarm
auslösen, indem der zuständige Administrator benachrichtigt wird.
Ein IDS überwacht eine Vielzahl von Vorgängen, um diese gesammelten Daten
anschließend zu anlaysieren. So werden unter anderem die Protokolldateien empfindlicher
Systeme, der Netzwerkdurchsatz oder die CPU-Auslastung protokolliert. Analog zu den
Firewalls, gibt es Host basierte und Netzwerk basierte IDS. (Vgl. [Heg02, S.246])
3.3.2.1 Host basierte IDS
Host basierte IDS sind Systeme, die die relevanten Daten eines lokalen Computers
überwachen (Protokolldateien, Netzwerkverkehr und Prozesse). Aufgrund des hiermit
verbundenen hohen Aufwandes werden diese Systeme meist nur auf systemkritischen
Rechnern installiert.
3.3.2.2 Netzwerk basierte IDS
Netzwerk basierte IDS hingegen sammeln die für sie relevanten Daten durch das Abhören
(Sniffing) des Netzwerkes. Diese Systeme können beim Eindringen in das Netzwerk in
Echtzeit reagieren und somit die empfindlichen Rechner noch vor dem Angriff schützen.
Ein wie zuvor beschriebener Portscan kann somit entdeckt werden, bevor der Angreifer
relevante Informationen gewonnen hat. Im übrigen ist es nur durch ein Netzwerk basiertes
IDS möglich, einen „halb offenen“- bzw. „stealth“- Portscan zu erkennen, da diese nicht
als Verbindungsaufbau protokolliert werden. Als problematisch im Zusammenhang mit
Netzwerk basierten IDS erweist sich allerdings die Verschlüsselung. Obwohl diese
ebenfalls einen Sicherheitsmechanismus darstellt, verhindert sie die Auswertung der
abgegriffenen Informationen.
3.3.2.3 Erkennungsmechanismen eines IDS
Im Zusammenhang mit einem IDS unterscheidet man zwei grundlegende Methoden, mit
denen die gewonnen Daten auf Hinweise eines Angriffs untersucht werden können.
Zum Einen die sogenannte Missbrauchserkennung (Misuse-Detection), bei der analog zu
einem Virenscanner, die gesammelten Daten nach bekannten Signaturen eines Angriffs
19
Kapitel 4: Zusammenfassung und Ausblick
untersucht werden und zum Anderen die Anomalieerkennung (Anomaly-Detection). Hier
werden Abweichungen des „normalen“ Netzwerkverhaltens untersucht und gegebenenfalls
als möglicher Angriff interpretiert. Der Vorteil dieser Methode besteht darin, dass auch
bisher
unbekannte
Normalzustand
Angriffsarten
eines
Netzwerkes
entdeckt
nur
werden
schwer
zu
können.
erfassen,
Allerdings
was
zu
ist
der
häufigen
Fehlalarmmeldungen führt. In der Praxis werden normalerweise beide Typen der
Erkennung zusammen eingesetzt.
3.3.3 Wireless LAN
Im Gegensatz zu verkabelten Netzwerken, bei denen es aufgrund ihrer physischen Struktur
für einen Eingriff notwendig ist, sich direkten Zugang zum Kabelnetz zu verschaffen, ist es
bei einem WLAN Netzwerk ausreichend, sich innerhalb einer bestimmten Reichweite zu
befinden. Daher greift bei diesem Netzwerktyp das Konzept einer zentralen Firewall nicht.
Bezüglich der Sicherheit kommt hier der Verschlüsselung eine besondere Bedeutung zu.
Wireless LAN Netzwerke (nach IEEE-802.11) verwenden beispielsweise die sogenannte
WEP (Wired-Equivalent-Privacy) Verschlüsselung, bei der die per Funk übertragenen
Pakete jeweils einzeln durch einen Verschlüsselungsalgorithmus gesichert werden.
Ansonsten wäre es möglich, durch einen Sniffer (wie z.B. AiroPeek) den Funkverkehr und
damit die gesamte Kommunikation mitzuschneiden. In diesem Zusammenhang kann es
auch sinnvoll sein, das Funknetzwerk durch eine zusätzliche Firewall vom EthernetNetzwerk abzugrenzen. Es werden hier auch oft VPN Zugänge verwendet, um eine
zusätzliche Verschlüsselung und Authentifizierung zu nutzen.
4 Zusammenfassung und Ausblick
In dieser Ausarbeitung wurde ein Überblick über die Funktionsweise der unterschiedlichen
Formen von Bedrohungen durch Cracker-/Hackeraktivitäten gegeben. Diese reichen vom
aktiven Angriff, durch einen Cracker, bis zu einer autonomen Bedrohung durch Viren,
Würmer bzw. Trojaner. Zusätzlich wurden die grundsätzlichen Techniken zur Abwehr
gegen diese Bedrohung vorgestellt. Hierdurch ist die Vorraussetzung für eine juristische
Bewertung dieser und analoger Techniken geschaffen. Aufgrund der Tatsache, dass sich
mit jeder neuen Technologie auch neue Sicherheitslücken ergeben, die von Crackern
ausgenutzt werden können, wird dieses Thema mit großer Wahrscheinlichkeit nicht in
absehbarer Zeit an Brisanz verlieren.
20
Literaturverzeichnis
Literaturverzeichnis
[Shi02]
Robert J. Shimonski, et al “Sniffer Pro Network Optimization and
Troubleshooting Handbook”
[RFC]
http://www.faqs.org/rfcs/
[Syn01]
Synnergy Networks, “Examining port scan methods”
www.in-f-or.it/informatica/docs/portscan.pdf
[Ryn02]
Ryan Russel et al., „Die Hacker Bibel“, 2002
[Kei03]
Keith J., Mike Shema, Bradley C. Johnson,“Das Anti-Hacker-Toolkit”,2003
[Sca01]
Joel Scambray, Stuart McClure,„Das Anti-Hacker Buch für Windows“,2001
[Fyo97]
The Art of Port Scanning by Fyodor,
http://www.insecure.org/nmap/nmap_doc.html
[Pla03]
Jürgen Plate, Jörg Holzmann, „Sicherheit in Netzen“, 2003
http://www.netzmafia.de/skripten/sicherheit/index.html, FH München,
[Heg02]
H.-G- Hegering, H. Reiser, B. Oberhaitzinger, H. Gerloni,
„Praktikum IT-Sicherheit“, Ludwig-Maximilians-Universität München,
http://www.nm.informatik.uni-muenchen.de/Praktika/ws0203/secp/
Unterlagen/main_secp_student.pdf
[Bsi97]
Bundesamt für Sicherheit in der Informationstechnik (BSI), http://www.huberlin.de/bsi/viren/inhalt/inhalt.htm
21