Network Security
by ShADoW mAx
Ein Netzwerk besteht aus mehreren Computern, die z.B. mit Netzwerkkarten und den dazugehörigen Kabeln untereinander verbunden sind, damit diese dann Daten austauschen können.
LAN´s sind normalerweise kleine Netzwerke, die sich innerhalb eines Hauses
befinden.
Solche Netzwerke, sind in der Regel private Netzwerke, wie sie z.B. häufig von
kleinen Firmen oder Schulen verwendet werden.
*Lokal bedeutet soviel wie "vor Ort".
das Internet
-Das Internet gehört zu der Kategorie "Global Area Network" (GAN). Folglich
ist es (in Bezug auf dem Umfang des Netzwerkes) das genau Gegenteil des LAN´s,
weil die damit verbunden Computer, Daten über den ganzen Globus austauschen
und das Netzwerk somit nicht (nur) lokal -also vor Ort- ist. Das Internet ist
jedenfalls das größte Netzwerk von allen, welches Millionen von Computern aus
der ganzen Welt verbindet
Die Grundbausteine des Internets wurden bereits am Ende der Sechziger Jahre
gelegt.
Ursprünglich sollte das Internet für Militärische Zwecke genutzt werden. Das
Verteidigungsministerium der USA wollte 1964 aus Angst vor einem Atomaren Schlag
der Russen ein Netzwerk schaffen, indem die Rechner unabhängig von einander
Daten über eine große Distanz aus tauschen können.
Das Netzwerk sollte auch dann funktionieren, wenn ein Rechner oder eine Leitung
ausfallen würde. Allerdings scheiterte dieses Projekt
letzendlich.
Nur zwei Jahre später griff das Amerikanische Militär-Forschungsinstitut mit
dem Namen Advanced Research Projects Agency (kurz ARPA genannt),diese Idee auf...
und vernetzte die ersten vier Rechner untereinander.
Im Jahre 1969 waren an dem Netzwerk bereits 40 Rechner angeschlossen. Immer
mehr Forschungsinstitute erkannten die Vorteile, welchen man aus dem Nutzen
eines solchen Netzwerk hatte. Auf Grund dessen breitete sich das Netzwerk (welches
damals noch Apranet genannt wurde) zunehmen aus.
Informations-quelle : http://selfhtml.teamone.de/intro/internet/entstehung.htm
Heutzutage wird das Internet größtenteils privat und kommerziell genutzt.
Der normale User "surft durch´s Netz" (indem er sich Webseiten anschaut, wie
z.B. www.ProSieben.de oder www.Berlin.de)
Webseiten
Das Wichtigste das man in Zusammenhang mit dem Internet wissen sollte, ist die
Tatsache, daß die
Webseiten die man sich anschaut, HTML Datein sind.
HTML Datein beinhalten Befehle, die vom Browser (wie z.B. Microsoft Internet
Explorer oder Netscape) gelesen und im Browserfenster wiedergegeben werden.
Eine solche HTML Datei, kann man mit einem normalen Text-Editor (wie z.B. Window´s Notepad) schreiben ...
und z.B. mit dem Internet Explorer betrachten.
Die Leute, welche die Webseiten erstellen/bearbeiten, werden als Webmaster bezeichnet.
Dienste (Server/Client Prinzip)
Im Internet kann man diverse Dienste in Anspruch nehmen, wie z.B. den eMail
Dienst, oder den Chat-Service...
Hinter dem Wort eMail verbrigt sich die englische Beichnung - electronic Mail
(was im Deutschen für elektronische Post steht). Der eMail Service hat
sich mittlerweile als die weit verbreiteste Form derNachrichtenvermittlung im
Internet etabliert. Es weren täglich Millionen von eMails rund um den Globus
verschickt.
Um diesen Service nutzen zu können, muiss man sich einen Account bei einem
Anbieter wie z.B: www.hotmail.com oder
www.gmx.de
erstellen. Nachdem man sich bei einem solchen Anbieter regestriert hat, ist
man imstande, über seinen eMail Accout eMails zu verschicken ... und welche
zu empfangen.
Eine ausführliche Beschreibung dazu findest Du : hier .
-Chat Service
.
Ein Großteil der Internet User benutzt regelmäßig den Chat Service. Dieser Dienst ermöglicht es einem, sich mit mehreren Leuten gleichzeitig mit Hilfe der Tastatur zu unterhalten (in Textbasierender Form).
Diese Dienste werden jedenfalls von Firmen (wie z.B. Lycos oder Freenet)
auf ihrer Webseite angeboten. Damit diese Anbieter einen solchen Dienst
(engl. Service) überhaupt bereitstellen können, müssen sie ihren Computer als
Server (mit der jeweiligen Server Software) einrichten.
Wenn man also z.B. eine eMails verschicken möchtet, spricht
man einen
Computer an, der mit der eMail-Server Software eingerichtet wurde.
Im Internet findet man oft Anbieter, die einem Internet Speicher (Webspace)
anbieten. Auf diesen Computer kann man dann (z.B. Musik-) Datein hochladen,
damit sie von anderen heruntergeladen (und letztendlich abgespielt) werden
können.
Die Webseiten die Du Dir anschaust (wenn Du z.B. www.shadowmax.de) besuchst,
sind auch auf einem (als Webserver eingerichteten) Computer gespeichert
wurden.
In Anspruch nehmen kann man diese Dienste mit einer Software, die als Client bezeichnet wird. Der User, der z.B. eine eMail verschicken möchte, tut das mit seinem eMail-Client.
Der normaler Internet User verschickt seine eMails über die Webseite des Providers (über die er den jeweiligen Server anspricht). Dazu benutzt er den Client, der "im Browser integriert ist".
Die Computer in einem Netzwerk kommunizieren über sogenannte
Netzwerk-Protokolle.
Im Internet und in den meisten anderen Netzwerken wird das das Internet Protokoll
(I.P.) und das Transmission
Control Protokoll (T.C.P.) genutzt, damit die Rechner untereinander Daten austauschen
können.
Wenn Du eine Webseite besuchst, sprichst Du den Webserver (auf dem die HTML
Datei liegt) über das I.P.
und T.C.P. -Protokoll an... und über diese Protokolle, wird dann auch die HTML
Seite auf Deinen Rechner
übertragen.
Die I.P. Adresse ist ein ein Teil des Internet Protokolls (I.P.). Du wirst
sozusagen über Deine I.P. Adresse im Netzwerk identifiziert !
Im Internet bekommt man seine I.P. Adresse von seinem Provider (über den Du
ins Internet gehst, wie z.B. T-Online) zugewiesen. Diese I.P. Adressen (über
die Dein Rechner dann identifieziert und somit auch angesprochen wird), sind
dynamich. Das heißt, daß man immer eine neue I.P. Adresse zugewiesen bekommt
(sobald man sich neu in´s Internet einwählt)! Also wenn Du z.B. mit einem Rechner
Daten austauschen möchtest, muß Dein Rechner ihn über diese I.P. Adresse ansprechen
(und der spricht wiederum Dich über Deine I.P. Adresse an). Und wenn dann der
Rechner (von dem Du Daten haben möchtest) die Internetverbindung trennt und
sich neu in´s Internet eingewählt hat, hat er eine neue I.P. Adresse, über die
Du ihm dann ansprechen mußt (weil Du ihn nichtmehr über seine alte I.P. Adresse
erreichen kannst). Allerdings gibt es auch "feste"
I.P. Adressen z.B. in LAN´s... .
Zur Zeit besteht eine I.P. Adresse aus vier, durch Punkte getrennte Zahlenfolgen,
die zwischen 0 und 255 liegen (z.B. 149.225.187.52). Jeder Provider vergibt
andere I.P. Adressen, Microsoft Network z.B. vergibt I.P. Adressen, die zwischen
149.225.1.1 und 149.225.225.225 liegen, T-Online vergibt unter anderem I.P.
Adressen, die zwischen 62.158.1.1 und 62.158.255.255 liegen.
Als I.P.-Subnetz werden die untergeordneten I.P. Adressen bezeichnet,
(z.B. 62.158.181.1 bis 62.158.181.255).
-I.P. Nummer ist nur eine andere Bezeichnung für I.P. Adresse-
Das Transmission Control Protokoll (TCP/IP) leitet die Daten an den jeweiligen Service (wie z.B. ICQ, Napster ...) weiter! Damit diese Dienste überhaupt funktionieren können, müssen sie ja ersteinmal angesprochen werden! Und das geschiet über den Ports, hinter denen sie sich verbergen.
Ein Port ist so eine Art Zuordnungsadresse für den jeweiligen Service.
Man spricht einen Service also über den Port an.
Das Chatprogramm ICQ wird z.B. über den Port 4000 angesprochen, Napsteruser tauschen ihre Musik über den Port 6699 aus...
EMail Server, werden (wie Du es im vorherigen Beispiel vielleicht schon bemerkt hast) über den Port 25 angesprochen (hinter dem sich der SMTP-Service verbirgt).
..
Ergänzung : Webserver
Wie bereits schon erwähnt, sind Webserver eingerichtet wurden, damit z.B. Webmaster ihre Daten (wie z.B. HTML-Datein oder Bilder...) auf dem Server speichern können, über dem dann andere (z.B. die Besucher der Homepage, mit ihren Browsern) diese Daten abrufen können.
Für das Verbinden... ist normalerweise das I.P.
Protokoll zuständig, allerdings gibt es noch andere Protokolle die daran beteiligt
sind, daß Du letztendlich die Webseite sehen kannst.
Ich will Dich jetzt noch nicht mit den jeweiligen Einzelheiten der Protokolle
langweilen, sondern Dir einfach nur erklären, wie es dazu kommt, daß Du hier
diese HTML Seite hier sehen kannst.
Als erstes muß eine HTML Seite erstellt werden.
Als erstes muß man einen Anbieter finden, der einem Webspace (Speicher auf dem Server) anbietet (wie z.B: Freenet ).
Wenn Du Dir bei Freenet einen Account angelegt hast, kannst Du Datein, mithilfe so einer Maske hochladen.
Wie man hier unschwer erkennen kann, habe ich die Grafische
Oberfläche von Freenet benutzt, um die HTML Datei (test.html) auf dem Freenet-Webserver (in meinem "Ordner"
ShadowMax) hochzuladen.
Nun kannst Du (als "Homepage Besucher mit Deinem Browser") auf diese
Datei zugreifen, indem Du die "Adresse des Webservers" (http:\\.people.freenet.de)
und dann den Pfad der HTML-Datei angibst (http:\\people.freenet.de\ShadowMax\test.html).
Der Webserver wird übrigens nicht direkt über die Adresse http:\\.people.freenet.de...
angesprochen, sondern über seine I.P. Adresse!
Simpel ausgedrückt, werden die I.P. Adressen (wie z.B. 194.97.3.213) von dem Domain Name Service-Protokoll (DNS) "überdeckt". Das DNS Protokoll ist dafür zuständig, das man die Server... überhaupt über solche Domain-Namen wie z.B. www.shadowmax.de oder www.people.freenet.de ansprechen (b.z.w. letztendlich erreichen) kann.
Wie Du hier sehen kannst, verbirgt sich "hinter" meiner Domain "www.shadowmax.de", der Freenet-Webservers, auf dem meine Homepage-Datein gespeichert sind (die I.P. Adresse des Webservers, kannst Du ebenfalls in der unteren Task-leiste sehen)!
In dieser Kapitel werde ich erklären, wie ein System angegriffen
werden kann und wie man sich davor schützt.
Als Hacker werden diejenigen Leute bezeichnet, die sich widerrechtlichen Zugang
zu einem Computer System verschaffen.
Grundsätzlich gibt es zwei Arten zu hacken !
Hierbei versucht man, die User-I.D. und das Passwort des Opfers herauszufinden, damit man sich dann damit als User einloggt und somit den jeweiligen Dienst beansprucht (wenn man z.B. einen eMail-Account knackt, um die eMails des Opfers durchzulesen, oder den Chat-Account knackt, um sich im Chat als Opfer auszugeben...).
-Sicherheitslöcher ausnutzen
Hacker nutzen in der Regel Schwachstellen aus, um sich Zugang zu einem System zu verschaffen. Die meisten Sicherheitslöcher sind die Folge von Programmierfehlern. Der Angreifer muss also wissen, was für Software auf dem System installiert ist, um es angreifen zu können.
Es gibt z.B. Programmierfehler, durch die man Angreifbar wird...
wie z.B. Speicher Überläufe [engl. Buffer Overflows], durch die der Angreifer
unter anderem auch vollständige Lese und Schreibrechte
bekommen könnte.
Für solche Schwachstellen, werden meistens Programme entwickelt, die diese
Sicherheitslücken ausnutzen können.
Diese Programme werden als Exploits bezeichnet.
Durch die richtige Konfiguration des Computers, kann man schon von vornherein
die Angriffsfläche minimieren.
In den meisten Fällen muss man auf Komfort verzichten, um sicherer zu surfen
zu können.
Es gibt viele Dienste, die schwere Sicherheitslücken aufweisen. Selbst so
harmlos erscheinende Programme wie z.B: Outlook oder der Microsoft Internet
Explorer, weisen teilweise verherende Sicherheitslücken auf.
Um Angreifern eine möglichst geringe Angriffsfläche bieten zu können, müssen
solche Sicherheitslücken gefunden und geschlossen werden.
Kurz gesagt : desto weniger Programme Du verwendest, desto sicherer bist Du auch.
Ich kann selber nur zu gut verstehen, wenn Du auf solche
Dienste (wie z.B. Napster, ICQ...) nicht verzichten möchtest....
aber wenn Deinen Rechner sicher konfigurieren möchtest, musst Du sie wohl
oder übel deaktivieren, weil man
zum einem ohne größeren Aufwand Deine I.P. Adresse über diese
Dienste herausbekommen kann...
und sie ausserdem Sicherheitslücken beeinhalten könnten.
Wenn Du die Dienste trotzdem weiterhin benutzen möchtest, solltet Du überprüfen, ob die von Dir verwendete Version irgentwelche Sicherheitsrelevanten Bugs beeinhaltet.
Dazu must Du die Versionsnummer des jeweiligen Programmes kennen.
Bei einigen ist die Versionsnummer offensichtlich (weil diese z.B. bereits
beim Programmstart angezeigt wird oder dezent im Hintergrund sichtbar ist).
In manchen Fällen musst Du Dir die Readme-Datei des Programmes zu Gemüte
führen um an die Versionsnummer heran zu kommen.
Sobald Du die Versionsnummer hast, solltest Du sowohl bei herkömmlichen
als auch bei den einschlägig bekannten Security-Seiten (wie z.B: heise.de
oder packetstorm nach Sicherheitslücken suchen.
Für normale Suchmaschienen ist der Eintrag "Softwarename + Versionsnummer
+ exploit" meistens ganz hilfreich.
. benötigst!
Und diejenigen, auf die Du verzichten kannst, solltest Du Sicherheitshalber
deaktivieren ! Sicherlich würdest Du Dir gerne noch ein paar Lieder über Napster herunterladen, oder über
ICQ mit Deinen Freunden chatten, doch dadurch wirst Du angreifbar!
Du mußt selbst entscheiden, ob Du das Risiko eingehen willst oder nicht. Der
normaler 0815 User wird sicherlich nicht auf ICQ &Co verzichten wollen, aber wenn Dir Deine Sicherheit am
Herzen liegt (weil Du vielleicht von der Arbeit aus surfst oder weil Du vertrauliche
Sachen auf Deinem Computer hast...) solltest Du auf jeden Fall diese Service deaktivieren! Zum einem, weil man über "diese Öffentlichen"
Service Deine I.P.
Nummer herausbekommen kann und weil sie zudem noch eine mögliche Angriffsfläche
bieten!
Um Deine I.P. Nummer herauszubekommen, benötigt man z.B. nur eine Firewall (mehr dazu später).
Beim Aol Instant Messager (Chat Programm) geht das ganz
einfach...
der Angreifer braucht sich nur mit Dir direkt verbinden (z.B. unter dem Vorwand,
daß er Dir irgendein cooles Programm zuschicken möchte). Daraufhin wird sich
dann seine Firewall melden (indem sie ihm fragt, ob Du eine Verbindung mit Dir
aufbauen darf... und somit hat er auch schon Deine I.P. Adresse).
Keine Sorge, ich werde in meiner nächsten Lektion noch erklären, was eine Firewall ist...!
Hier ist ein Beispiel von der Atguard
Ein Angreifer könnte die I.P. Adresse ohne weiteres auch über Napster herausbekommen
-Napster ist ein Programm, mit dem man Musik (normalerweise im MP3 Format) mit anderen Napser-Usern austauschen kann.-
Hier ist noch ein Bild von der Atguard !
Hier ist ein Beispiel von der Conseal Firewall.
-Picture cooming soon-
-Diese Firewall (Atguard) kannst Du Dir von http://www.stophack.net/atguard/new_features.shtml herunterladen-
Cookies
Auf Deinem Rechner werden (fast immer) Cookies gespeichert. Das sind Textdateien,
die die Server beim Einloggen (z.B. bei eMail Services wie z.B. www.Hotmail.de, oder beim Chatten, wie z.B. bei http://www.berlin.de/home/MeineStadt/Chats...) abfragen, damit man sich z.B. schneller Einloggen kann, oder
um Statistiken abzufragen (z.B. wie oft der User schon die Homepage besucht
hat) oder um z.B. den User mit dem im Cookie gespeicherten Namen "anzureden"...
Jedenfalls kann man somit sehen, welche Webseiten Du besucht hast.
Noch schlimmer finde ich allerdings, daß bei den meisten User-Accounts auch
(mehr oder weniger verschlüsselte) Benutzernamen (Accountnamen/I.D.) und Passwörter
(!) in den jeweiligen Cookies gespeichert werden. Ein Anderer könnte somit z.B.
herausbekommen, welchen Chatnamen und welches Passwort Du benutzt und unter
Deinem Namen chatten oder Deine eMails lesen oder verschicken... Es könnte auch
vorkommen, daß man Deine Adresse herausbekommen würde, weil Du sie auf irgendeiner
Seite (bei der Registrierung) eintragen mußtest.
Wenn Du mal sehen willst wie
ein Cookie funktioniert, kannst hier drauf klicken.
Ich kann Dir nur empfehlen, Deine Cookies zu löschen
(Sie sind normalerweise unter Deinem Windowsverzeichnis im Ordner Cookies gespeichert,
wenn Du den Microsoft Internet Explorer verwendest, wenn Du Netscape verwendest,
werden sie normalerweise unter "Programme\Netscape\User..." gespeichert).
Du kannst natürlich auch gegebenenfalls (in der Browseroption) die Cookies von vornherein deaktivieren.
-später werde ich nocheinmal näher auf die Cookies eingehen (Lektion 3)-
Ich würde Dir raten, daß Du die Javascripts bei Dir deaktivierst.
Bei dem Microsoft Internet Explorer, kannst Du das (wie
hier ) unter "Extras\Internet
Optionen\Sicherheit\Stufe anpassen".
Bei Netscape, kannst Du die Javascripts unter "Bearbeiten/Preferences"
deaktiviern.
Mit Javascripts, kann man nämlich eine Menge über Dich herausfinden!
Z.B. Deinen Useragent, die zuletzt Besuchte Webseite...
Am schlimmsten finde ich allerdings, daß "mit Hilfe" dieser Javascripts,
öffter I.P. Adressen geloggt werden.
Wie Du das z.B. an den Besucherstatistiken auf meiner
Homepage sehen kannst.
http://counterstats7.bravenet.com/index.php?id=311369
Wenn ich mich nicht an die Hacker-Ethik halten würde, könnte ich somit z.B. ohne Aufsehen zu erregen ganz einfach die I.P. Adresse von jemanden herausbekommen, den ich z.B. beim chatten mit dem Aol Instant Messager kennengelernt habe (indem ich diese Statistiken überwachen, nachdem ich meine URL gegeben habe). Wenn ich dann die I.P. Adresse hätte, bräuchte ich nur noch ein "Remote-Buffer-Overflow-Exploit" für die jeweilge AIM Version benutzen, um mir damit "Remote Zugriff" (Fern-zugriff) auf seinen Rechner zu verschaffen und dann...!
-Das ist aber im Moment noch unwichtig, ich werde später
aber sicherlich noch ein Tutorial über Buffer Overflows (und String Vulnerabilities...)
verfassen (die Exploit -Alpha Version, kannst Du Dir aber schonmal unter Exploits- anschauen)-
Mit Hilfe eine Firewall kann man seinen Rechner direkt vor Angriffen schützen.
Firewalls wurden entwickelt, um diese Datenkommunikation zu sichern.
Ohne Sicherheitstool (wie z.B. eine Firewall)
werden alle Netzwerk-Verbindungen automatisch angenommen!
Vollkommen egal, ob das nun der nette Freenet-Webserver von nebenan,
oder der böse Cracker von der anderen Straßenseite ist.
Firewalls protokollieren alle Netzwerk-Verbindungen
des eigenen Rechners, in dem jeweiligen Netzwerk.
Eine Firewall friert ersteinmal die eingehenden Verbindungen ein ...
und zeigt Dir die I.P. Adresse des Rechners an, der mit Dir
kommunizieren möchte. Außerdem zeigt sie Dir den Port (eventuell sogar den Service der dahinter steht) an, über dem die Verbindung aufgebaut werden
soll.
Dann kannst Du entscheiden, ob die Firewall die Netzwerk-Kommunikation durchlassen
lassen darf, oder ob sie diese Kommunikations-Verbindung abblocken soll. Deshalb
mußt Du genau wissen, woher die Verbindung kommt (anhand der I.P. Adresse) und welchen Service sie (anhand des Portes) ansprechen will.
Man kann bei seiner Firewall schon von vornherein festlegen, welche I.P.
Adresse/n (oder ganze Subnetze...) Verbindungen aufbauen dürfen, oder welche
alle geblockt werden. Oder über welche Ports man Verbindung aufnehmen darf...
I.P. Sperre
Man kann ganze I.P. Subnetze von vornherein sperren (so das z.B. nur Verbindung aus dem eigenen
Netzwerk zugelassen wird).
Die meisten Privatanwender verwenden Desktop Firewalls, welche man im Handel
(als Softwarepaket) kaufen kann. Die Desktop Firewalls (für Windows), sind normalerweise
sehr einfach zu Bedienen
Meiner Meinung nach, ist die Atguard-Firewall (http://www.stophack.net/atguard/new_features.shtml) für Anfänger sehr geeignet, weil sie realativ sicher ist und man sie ohne tiefergehende Netzwerkkenntnisse bedienen kann.
Deshalb habe ich mich auch entschlossen,
eine kurze Einführung, für Grundlegende Bedienung der Atguard zu verfassen.
Wie man auf diesen Bild hier unschwer erkennen kann, zeigt mir meine Atguard
Firewall an, daß eine Netzwerkverbindung (von einem Rechner mit der I.P. 90.0.0.255)
über den Port 138 (das NB.-Protokoll, das beim Datenaustausch in dem "Microsofts
Netzwerk" beteiligt ist) aufgebaut werden
soll.
Über "just for this attempt:" kann die Verbindung
für diesen Moment zulassen (oder auch für diesen Moment blocken). Wenn dann
dieselbe (gleiche I.P./Rechner, gleicher Port)
Verbindung zu einem späteren Zeitpunkt wiederhergestellt wird, fragt mich die
Firewall wieder ab, ob die Verbindung genehmigt oder geblockt werden soll.
Mit "for this, and all future attempts, create a rule to:" kann ich Regeln festlegen (z.B. ob die Verbindung in Zukunft immer akzeptiert oder verworfen werden soll, ob er nur den Service oder auch andere Service nutzen darf...).
Über die Firewall Einstellung kannst Du schon im voraus Regeln festlegen (so daß die Firewall Dich bei einer neuen Verbindung nicht mehr fragen muß, was sie zu tun hat, sondern gleich selbst die Alternative ergreift)
Bei "Action:" kann festlegen ob eine Verbindung zugelassen wird (permit) oder ob sie abgeblockt werden soll (block).
Bei "Direction:" kannst Du festlegen ob die Regel für eingehende (inbound) oder ausgehende (outbound) Verbindungen gilt.
Bei "Protocol" kannst Du bestimmen, für welches Protokoll (TCP/UDP und ICMP) die Regel gilt.
Tiefergehende Informationen bezüglich dieser Firewall kannst Du Dir hier besorgen.
[...]
Ergänzung (beeinhaltet ein paar ältere Texte, aus der vorherigen Version)
2001 by ShADoW mAx