Kantonsschule Ausserschwyz Maturaarbeit Oktober 2012 Der „DNS-Changer“ und seine Funktionsweise. Autor, Klasse Roman Lacher, 4f Adresse Hungerstrasse 8 8832 Wilen bei Wollerau Betreuende Lehrperson Andreas Umbach Maturaarbeit Oktober 2012 Roman Lacher Inhaltsverzeichnis 1. Abstract…………………………………………………………………….. 2 2. Vorwort……..……………………………………………………………… 3 3. Einleitung………………………………………………………………….. 4 4. Die Chronologie des DNS-Changers………………………………..….…. 6 5. Domain Name System………………………………………………….…. 9 6. TCP/IP………………………………………………………………….….. 13 7. Die Funktionsweise des DNS-Changers……………………………...…… 22 8. Praktische Arbeit……………………………………………………….….. 23 9. Meine persönliche Meinung und Schlusswort…………………………….. 24 10. Der Brief an die Firma Swisscom als Beispielexemplar………………………... 25 11. Glossar……………………………………………………………………... 26 12. Quellen……………………………………………………………...……… 28 13. Eigenständigkeitserklärung………………………………………………... 31 1 Maturaarbeit Oktober 2012 Roman Lacher 1. Abstract In meiner Arbeit untersuche ich den Trojaner „DNS-Changer“ auf seine Funktionsweise und wie die Angreifer Profit aus ihm ziehen können. Der DNS-Changer hat in der Zeit zwischen 2008 und 2012 grossen Schaden angerichtet. Das Spezielle an dem Trojaner ist, dass er, obwohl er Ende 2011 vom FBI zerschlagen wurde, bis Mitte 2012 erheblichen Schaden anrichtete. Um dies zu verstehen, ist einiges an Wissen erforderlich. Darum werde ich in dieser Arbeit das „Domain Name System“ erklären. DNS wurde bereits 1983 eingeführt und ist verantwortlich, dass unser Computer andere Rechner im Internet finden kann. Ausserdem wird das Thema „TCP/IP“ genauer behandelt. TCP/IP wird benötigt, um ein Server zu kontaktieren und Informationen von ihm heurunterzuladen wie zum Beispiel eine Webseite. Nachdem Sie diese Arbeit gelesen haben, wissen Sie, was alles passiert, wenn Sie in ihrem Browser „www.google.ch“ eingeben. 2 Maturaarbeit Oktober 2012 Roman Lacher 2. Vorwort Für das Thema meiner Arbeit habe ich mich schnell entschieden. Nachdem ich mich im vorigen Jahr mit Computervieren im Allgemeinen beschäftigt habe, wollte ich in dieser Arbeit etwas genauer vorgehen. Da ich regelmässig die Nachrichten aus der Informatikbranche lese und der DNS-Changer sehr populär war, hatte ich keine Probleme mich zu entscheiden. Die Artikel, welche ich über den DNS-Changer bereits vor dem Beginn meiner Arbeit gelesen hatte, fand ich sehr interessant, da dieser Trojaner ganz anders funktioniert als andere Trojaner. Ausserdem habe ich im Jahr davor erstmals Netzwerkpakete kennengelernt. Damals verstand ich zwar den Sinn solcher Pakete, allerdings konnte ich nicht wirklich den Aufbau verstehen. Ich habe mich dann entschieden, TCP/IP ebenfalls zu behandeln, weil diese die Pakete verarbeiten und den sogenannten „Header“ erstellen. Der Header ist für mich der interessanteste Teil, weil mit diesem der Computer genau weiss, was er mit den jeweiligen Paketen machen soll. Bedanken möchte ich mich als Erstes bei Herrn Andreas Umbach, da er als Betreuungsperson mich auf das Thema TCP/IP aufmerksam gemacht hat. Er konnte mir problemlos meine Fragen über das eher komplizierte Thema beantworten. Ferner möchte ich mich bei meinen Eltern und meinem Bruder bedanken, dass sie meine Arbeit gelesen haben und mir Feedback gaben. Es gibt in dieser Arbeit Wörter, welche beim erstmaligen Erscheinen fettgedruckt sind. Diese Begriffe werden im Glossar, welches sich am Ende dieser Maturaarbeit befindet, erklärt. 3 Maturaarbeit Oktober 2012 Roman Lacher 3. Einleitung Viren und Trojaner sind im Internet eine grosse Bedrohung. In dieser Arbeit liegt der Schwerpunkt auf dem Trojaner „DNS-Changer“. Damit man allerding seine Funktionsweise verstehen kann, muss man die Technik, welche im Hintergrund läuft, kennen: Dazu gehört das „Domain Name System“, was dem Name DNS-Changer offensichtlich sehr nahe liegt. Ausserdem muss man verstehen, wie ein Internet Programm eine Webseite öffnet. Dies funktioniert mithilfe von sogenannten Datenpaketen. Der Computer fragt den Besitzer der Seite an, damit dieser ihm die Seite zuschicken kann. Damit der Computer nun die gewünschte Seite kontaktieren kann, muss er erstmals wissen, wo sie sich befindet. Dies ist die Aufgabe vom DNS. Nachdem der PC den Server, auf dem die Seite gespeichert ist gefunden hat, muss er wissen, wie er dem Server Bescheid geben kann, dass er gerne die gesuchte Seite herunterladen möchte. Dies geschieht mithilfe von Protokollen. Was hier noch sehr kompliziert klingt, ist tatsächlich nicht einfach zu versehen, jedoch sollte man am Ende meiner Maturaarbeit genau versehen, wie das System dahinter funktioniert. Der DNS-Changer macht grundsätzlich keinen Schaden an dem Computer, solange man nicht ins Internet geht, da er nur den DNS-Eintrag verändert. Wenn man weiss, wo der DNSEintrag sich befindet und wie man ihn verändern muss, ist der DNS-Changer kein Problem. Jedoch weiss der grösste Teil der Internetnutzer nicht mal, das es DNS überhabt gibt, da alles vollständig im Hintergrund abläuft. Geht man aber ins Internet, kann man sich nicht mehr normal darin bewegen, da man nicht auf die korrekten Seiten kommt. Der Trick des DNS-Changers ist es, das System auf falsche Seiten zu leiten. Dem Computer wird dabei gar nichts auffallen, da die falschen Webseiten für ihn ganz normal aussehen. Beginnen werde ich mit den Geschehnissen des DNS-Changers, damit man eine Vorstellung bekommt, wie der DNS-Changer aufgekommen ist, sich verbreitete, vom FBI zerschlagen wurde und warum der DNS-Changer nach dem Vernichten immer noch schädlich war. Ich werde Schritt für Schritt erklären, was passiert, wenn der Nutzer auf „www.google.ch“ zugreifen möchte. Dazu gehe ich zuerst auf das Domain Name System ein, danach auf TCP/IP. Bei TCP/IP werde ich kurz auf das OSI-Modell eingehen und dann auf den spezifischen Aufbau von TCP/IP. Die Funktionsweise jeder Schicht des TCP/IP Modells werde ich genauer erklären. Mithilfe der oben beschriebenen Theorie können Sie problemlos die Funktionsweise des DNS-Changers verstehen und können die grosse Gefahr in ihm sehen. 4 Maturaarbeit Oktober 2012 Roman Lacher Zum Schluss werde ich den praktischen Teil meiner Arbeit beschreiben. Ich habe verschiedene Internetanbieter in der Schweiz über den DNS-Changer befragt, weil der Trojaner auch in der Schweiz verbreitet war und es im Interesse der Anbieter liegt, den Trojaner zu bekämpfen. 5 Maturaarbeit Oktober 2012 Roman Lacher 4. Die Chronologie des DNS-Changers Zuerst beginne ich mit den Ereignissen des DNS-Changers. Die Idee, DNS Einträge von Routern oder Computern zu ändern, besteht schon länger. Im September 2006 berichteten erstmals diverse PC Magazine und Antivirenprogramme von einem Video Codec mit einem sehr verdächtigen Inhalt. Dieses Programm heisst zCodec und sollte angeblich bei Musik- und Videowiedergaben die Qualität bis zu 40 Prozent verbessern. Hinter diesem Programm steckte in Wirklichkeit der Trojaner mit der Bezeichnung „Trojan.Win32.DNSChanger.en“, der daraufhin versuchte, auf Server mit der IP: 85.255.X.X zuzugreifen. Ausserdem wurden dabei noch weitere Schädlinge heruntergeladen. ZCodec ist zwar nur für Windows, der Trojaner kann allerdings sowohl Windows als auch Mac OS befallen. Seit diesem Zeitpunkt gab es immer wieder Zwischenfälle, bei denen der DNS-Changer verbreitet wurde. Zum Beispiel am 11. Mai 2008 als viele Webseiten mit einem Link versehen wurden, der auf eine andere Webseite führte. Auf jener Seite gab es dann angeblich ein Video, welches man nur ansehen konnte, wenn man eine Art Hilfsprogramm zum Abspielen des Videos herunterlud. Dieses Hilfsprogramm war jedoch eine kleine Sammlung von Trojanern, bei denen der DNS-Changer auch dabei war. Ende 2008 erschienen im Web erstmals Berichte über einen Trojaner mit eingebautem DHCP-Server. Wie sich herausstellte, handelte es sich hierbei ebenfalls um den DNSChanger, der sich weiterentwickelt hatte, bevor er vernichtet wurde. Dass sich Trojaner modifizieren lassen, ist bekannt. Jedoch war dieser Schritt des DNS-Changers eine Wende, da von nun an alle PCs, welche an einem Netzwerk angeschlossen waren, beeinflusst wurden, selbst wenn nur ein einziger Rechner betroffen war. Strenggenommen war dieser Trojaner nicht mehr der ursprüngliche Trojaner, jedoch gab es einige Punkte, die dafür sprachen, dass man sowohl den alten, als auch den neuen Trojaner als DNS-Changer bezeichnete. Der Name des DHCP Trojaners war „Trojan.Flush.M“ und dieser versuchte so schnell wie möglich Abfragen von Clients zu beantworten. Die Antworten dieses DHCP Servers waren immer ein Verweis zu folgenden zwei Piraten DNS-Servern: 85.255.112.36 und 85.255.112.41. Wie man sieht, waren wahrscheinlich immer noch die gleichen Verbrecher dahinter wie am Anfang. Ausserdem ist die grundsätzliche Funktionsweise des DNS-Changers nicht verändert worden. Am 9. November 2011 wurden in Estland sechs Personen festgenommen. Das amerikanische Bundesamt für Ermittlung „FBI“ hatte bei der Operation Ghost Click das gesamte Botnetz des DNS-Changers zerstört. Das FBI rechnete mit 4 Millionen infizierten Rechnern weltweit. Damit diese betroffenen Rechner weiterhin noch ins Internet kamen, stellte das FBI eigene DNS-Server zur Verfügung. Diese sollten 4 Monate weiter laufen bis sie endgültig abgestellt 6 Maturaarbeit Oktober 2012 Roman Lacher wurden. Wer bis dahin seinen DNS-Eintrag nicht korrigiert hatte, hatte ab diesem Zeitpunkt keinen Internetzugang mehr. Die Verbrecher haben sich seit 2007 laut FBI 14 Milliarden US Dollar ergaunert. Ausserdem wurden weltweit Privatpersonen, Unternehmen und sogar Regierungsbehörden infiziert. Die Laufzeit von den DNS-Servern der FBI wurde immer wieder verlängert, weil noch zu viele Rechner auf die Übergangsrechner zugriffen. Es gab viel Kritik an das FBI, weil nur passive Massnahmen nicht ausreichen würden. Es wurde vorgeschlagen, dass das FBI doch infizierte Nutzer auf eine Website leiten sollte, welche die Benutzer über ihre Infektion informieren könnte. Jedoch hatte das FBI nie etwas in dieser Richtung unternommen. Ursprünglich sollten die Server am 8 März 2012 offline gehen, jetzt sollten sie erst am 9. Juli 2012 abgestellt werden. Am 11. Januar 2012 ging die Website „www.dns-ok.de„ online, mit der Nutzer ganz einfach überprüfen konnten, ob sie infiziert waren. Am 23. Mai 2012 begann Google infizierte Nutzer auf ihre Infektion hinzuweisen. Am 9. Juli 2012 wurden dann die DNS-Server abgestellt. Der befürchtete Massenaufruhr bei den Internetbetreibern blieb aus. Viele Informatiker befürchteten einen grossen Ausfall des Internets bei vielen Personen und Unternehmen, jedoch blieb dieser aus. Inzwischen wurden zwei IP Adressblöcke, welche ehemals den Piraten DNS-Servern gehörten, wieder freigegeben. Auf dieser Karte wird der Verbreitungsgrad des DNS-Changers gezeigt. 7 Maturaarbeit Oktober 2012 Roman Lacher Diese Meldung von „www.dns-ok.de“ kommt, wenn der Rechner nicht vom DNS-Changer betroffen ist. Diese Meldung von „www.dns-ok.de“ bedeutet, dass der Rechner mit dem DNS-Changer infiziert ist. 8 Maturaarbeit Oktober 2012 Roman Lacher 5. Domain Name System Wieso wird das DNS benötigt? Das Domain Name System wurde 1983 entwickelt und wird vom Prinzip her noch heute verwendet. DNS ist ein wichtiger Bestandteil des Internets, denn ohne das DNS wäre das Internet niemals so gross und schnell geworden. Wenn wir in unserem Internet Browser die Adresse „www.google.ch“ eingeben, kann die Seite problemlos aufgerufen und dargestellt werden, obwohl der Computer selbst in Wirklichkeit mit „www.google.ch“ gar nichts anfangen kann. Ein Computer kann die Webseite nur finden, wenn er die dazugehörende IP Adresse hat. Und da es viel zu kompliziert für die Internetnutzer wäre, alle IP Adressen zu merken, gibt es das DNS, das die Umwandlung von „www.google.com“ zu „173.194.44.215“ im Hintergrund vollzieht. Man sagt dazu auch Namensauflösung. Wie funktioniert die Namensauflösung? Vor 1983 gab es ausschliesslich die sogenannte Hostdatei auf nahezu jedem Rechner. Diese war nur eine einfache Liste mit allen Namen und die dazugehörigen IP Adressen. Da das Internet jedoch immer grösser wurde, kam es zu drastischen Performance Problemen. Ausserdem konnte ein Administrator eines Servers nur sehr schwer seine IP Adresse ändern, da er jede Hostdatei informieren müsste. Aus diesen Gründen wurde 1983 das DNS entwickelt. Ich werde das DNS anhand eines kleinen Beispiels aus unserem Alltag erklären: Stellen Sie sich vor, ein Chef hat eine Adresse und möchte herausfinden, wer dort wohnt. Er wird die Adresse seinem Sekretär weitergeben und auf den Namen warten. Der Sekretär wird zuerst in seinem Büchlein mit den wichtigsten Adressen suchen, falls er eines hat. Wenn nicht, wird er einen weiteren Angestellten damit beauftragen, den Namen herauszufinden. Dieser wird zuerst überlegen, aus welcher Region die Adresse kommt, und dann im entsprechenden Adressbuch nachschauen. Sobald er den Namen gefunden hat, wird er den Namen dem Sekretär zurückgeben und der wiederrum seinem Chef. In unserem Beispiel ist der Chef der Internet Browser, der Sekretär der Resolver, der Angestellte der DNS-Server und das Telefonbuch der Nameserver. Unter Internet Browser versteht man die Benutzeroberfläche. Hier kann der Benutzer die Webseiten aufrufen und darstellen lassen. Beispiele für Browser sind unter anderem der Internet Explorer, Mozilla Firefox, Google Chrome, Opera. Der Resolver befindet sich normalerweise im eigenen System, kann sich aber auch auf einem externen Rechner befinden. 9 Maturaarbeit Oktober 2012 Roman Lacher Ein DNS-Server bekommt Anfragen von Resolvern, die er entweder selbst beantworten kann, oder Nameserver und Root-Server befragt. DNS-Server werden normalerweise vom eigenen Internetprovider bereitgestellt. Man kann auch eigene DNS-Server laufen lassen. Dies ist aber ein Ausnahmefall. Zum Schluss gibt es noch die Nameserver. Von ihnen gibt es unzählige. Sie sind dezentral im Internet verteilt, und sollte ein Server einmal ausfallen, so übernimmt einfach ein anderer Server seine Aufgabe. Um etwas Ordnung zu schaffen, wurden die Nameserver in Zonen eingeteilt. Sobald der Benutzer „www.google.ch“ eingegeben hat, wird der Internet Browser die Adresse dem Resolver weitergeben. Dieser schaut dann in der Hostdatei nach, ob ein Eintrag mit der zu suchenden Adresse übereinstimmt. Falls ja, wird er die IP Adresse dem Browser als Antwort zurückgeben. Meistens jedoch ist die zu suchende Adresse nicht dabei, denn die Hostdatei ist mehr ein Überbleibsel aus der Zeit vor 1983. Nachdem der Resolver die zu suchende Adresse nicht in seinem Speicher gefunden hat, wird er den DNS-Server anfragen. Der Resolver findet den DNS-Server über den DNS-Eintrag oder indem er einen DHCP Server anfragt. Dieser DNS-Server wird dann zuerst in seinem eigenen Cache nachschauen, ob ein Eintrag vorhanden ist. Falls ja, wird er die dazugehörende IP Adresse an den Resolver zurückschicken. Falls nicht, wird er anfangen, verschiedene Nameserver zu kontaktieren. In meinem Beispiel ist es an dieser Stelle der Angestellte, der sich überlegt hat, aus welcher Region die Adresse stammt, indem er die Postleitzahl und den Ort anschaut und so entschiedet zu welchem Adressbuch er greift. Die Internetadresse, auch Domain genannt, ist wie die Adressbücher nach einer „Zonenstruktur“ aufgebaut. Die Top-Level-Domain beschreibt sozusagen das Land und die Region der Internetadresse. Mit Hilfe der Domain kann man das gesuchte Haus finden und das „www“ steht für die Person innerhalb des Hauses. 10 Maturaarbeit Oktober 2012 Roman Lacher Die Punkte dienen als Abgrenzung zwischen den verschiedenen Teilen. Grundsätzlich gehört der Punkt ganz am Schluss auch zur vollständigen Domain, man kann ihn jedoch weglassen. Der Resolver vervollständigt automatisch nicht komplette Domainabfragen. Das Prinzip, mit dem der Angestellte in den Adressbüchern nach dem gesuchten Namen Ausschau hält, ist eher schwierig mit dem DNS-Server zu vergleichen, da der Server nicht selbstständig entscheiden kann, welche Nameserver –in unserem Beispiel Adressbücherinfrage kommen. Damit die DNS-Abfrage auch in einer vernünftigen Zeit ablaufen kann, sind sie in Zonen eingeteilt. Als erstes wird der DNS-Server einen Root-Server kontaktieren. Dieser kann anhand der Top-Level-Domain sagen, welche Top-Level-Domain-DNS-Server befragt werden müssen. Danach wird der entsprechende Top-Level-Domain-DNS-Server kontaktiert. Dieser gibt dann die IP Adressen aller möglichen DNS-Server in der entsprechenden Zone zurück. Die Top-Level-Domain-DNS-Server werden stets nur rekursive Abfragen akzeptieren. Das bedeutet, dass die Antwort, welche sie zurückschickt entweder die IP Adressen der infrage kommenden DNS-Server ist oder dass es kein Resultat gibt. Wenn er kein Resultat bekommen hat, wird er dem Resolver und dieser dann dem Browser melden, dass es die Domain gar nicht gibt. Sobald er aber eine Liste von Nameservern bekommen hat, wird der DNS-Server anfangen, einen zu kontaktieren. Hier gibt es drei Möglichkeiten von Antworten. Entweder der Nameserver kennt die IP-Adresse von der Domain und sendet sie zurück, oder er schickt eine IP Adresse eines anderen Nameservers zurück, welcher die gesuchte IP Adresse vielleicht kennen könnte, oder er antwortet, dass er die IP Adresse nicht hat und auch nicht weiss, wer sie haben könnte. Man nennt diese Art von Abfragen auch iterative Abfragen. Der DNS-Server wiederholt so lange den Prozess, bis er alle Nameserver aus der Zone ausprobiert hat, welche er vom Top-Level-Domain-DNS-Server bekommen hat. Falls er kein Resultat gefunden hat, wird er dem Resolver und der wiederum dem Browser sagen, dass es die Domain innerhalb des Top-Level-Domains nicht gibt. Wenn er jedoch die gesuchte IP Adresse gefunden hat, wird er diese an den Resolver zurückschicken und der wird die IP Adresse dann dem Browser weiterleiten. Es gibt verschiedene Arten von Nameservern: - Master: Ein Master Server wird auch als „autorisierte Quelle“ bezeichnet. Seine Tabelle ist immer verbindlich und steht in der Hierarchie als oberstes in seiner Zone. - Slave: Ein Slave Server erhält die komplette Tabelle der gesamten Zone. Ein Slave Server ist ebenfalls eine „autorisierte Quelle“. Falls eine IP Adresse sich verändert, bekommt er unmittelbar die Aktualisierung der Zonendatei vom Master Server. 11 Maturaarbeit Oktober 2012 Roman Lacher - Caching-Only: Ein Caching-Only Server ist eine „nicht autorisierte Quelle“. Der Server lernt bloss die Antworten auf die Abfragen von anderen Servern und speichert sie bei sich. Grundsätzlich speichert jeder DNS-Server seine Abfragen, dass er im Falle einer Wiederholung, schneller antworten kann. Der Caching-Only-Server hat aber keine Zonendateien und kann somit mit keinen zuverlässigen Resultaten antworten. Alle Abfragen im Cache haben ein TTL (Time to Live). Damit setzt der Master Server das Verfallsdatum für die Datei fest. IP Adressen, die sich häufig ändern, haben entsprechend automatisch einen kürzeren TTL als solche, die sehr lange gleich bleiben. Was sind die Vorteile von DNS? Die Vorteile vom DNS gegenüber der Hostdatei sind sehr bedeutend: - Das DNS lässt sich beliebig vergrössern und verkleinern, wobei das Erstgenannte für das Wachstum des Internets entscheidend ist. Sobald ein Server voll ausgelastet ist, kann ohne Performanceverlust ein neuer gestartet werden, da die Listen mit den IP Adressen auf externen Servern liegen und der neue Server sich nur eine Kopie dieser Zonendatei beschafft. - Wenn ein Host seine IP Adresse ändert, ist das nur ein Eintrag im Master Server, welcher verändert werden muss. Dieser leitet dann die Informationen an alle Slave Server weiter. Hier ein Beispiel einer DNS-Abfrage von „wegdes-Internets.de“ 12 Maturaarbeit Oktober 2012 Roman Lacher 6. TCP/IP Nachdem der Internet Browser den gesuchten Server gefunden hat, muss er anfangen mit ihm zu kommunizieren, damit er die gewünschte Website herunterladen kann. Dies macht er, indem er ein Paket schickt, in dem sich unter anderem die IP Adresse des Senders und des Empfängers befinden. Darauf möchte ich aber erst später eingehen, da man dazu noch etwas Vorwissen braucht, was im Folgenden erläutert wird. Die Geschichte des Internets Ich beginne mit der Geschichte des Internets, damit ich mich später darauf beziehen kann. Die Entwicklungen der ersten Netzwerke sind interessant und sie sind entscheidend für das heutige Internet und weiteren bedeutenden Errungenschaften der Menschheit, wie zum Beispiel den unzähligen Weltraumprogrammen und dem GPS, da sie Forscher verbunden hatte. Am 7. Februar 1958 wurde das „Advanced Research Projects Agency“ (ARPA) aufgrund des Sputnik-Schocks vom damaligen Präsidenten des USA Eisenhower gegründet. Ihr bekanntestes und bedeutendste Projekt war das ARPANET. Er verband 1969 bereits einige Amerikanische Universitäten und Forschungsstationen. Damals wurden viele, noch heute genutzte Grundlagen zur Datenkommunikation entwickelt. Seit 1982 benutzt das ARPANET TCP/IP als Protokollstandard. Damit begann die Erfolgsgeschichte von TCP/IP, Unix und des Internets. 1985 eröffnete die „National Science Foundation“ (NSF) das NSFNet. Das NSFNet war kleiner und gleichschnell wie das ARPANET. Der entscheidende Unterschied war allerdings, dass das NSFNet für alle Wissenschaftler und Ingenieure von den USA zugänglich gemacht wurde. Um dieses Ziel noch besser zu erreichen, erneuerte NSF 1987 die Struktur vom NSFNet, was zur Folge hatte, dass das NSFNet schneller wurde als das ARPANET. Seit dem ist das NSFNet nur noch am Wachsen. Das ARPANET wurde 1990 ausgeschaltet. Das Internet ist grundsätzlich immer noch das NSFNet. Jedoch ist es nicht mehr von einem Kernnetzwerk oder einer Kernregion abhängig, sondern erstreckt sich über das gesamte Internet. 13 Maturaarbeit Oktober 2012 Roman Lacher Protokolle Protokolle kann man als eine Art formale Verhaltungsregel zwischen verschiedenen Rechnern untereinander bezeichnen, auch vergleichbar mit den Diplomatischen Regeln. Diese Regeln sind nur dazu da, dass es keine Missverständnisse gibt und dass jeder genau weiss, wie er sich zu verhalten hat. Genauso läuft es bei den Servern. Damit ein europäischer und ein chinesischer Server miteinander kommunizieren können, sind Protokolle nötig. Der chinesische Server verwendet beispielsweise einen ganz anderen Zeichensatz als der Europäische. Die Protokolle werden in den RFCs beschrieben. RFC steht für „Requests for Comments.“ TCP ist zum Beispiel RFC 1323. Momentan gibt es fast 7000 RFCs wobei viele nicht mehr verwendet werden, weil sie überholt sind. Das OSI-Modell Um eine Webseite aufzurufen reicht ein einziges Protokoll bei Weitem nicht. Die moderne Datenkommunikation ist sehr vielschichtig. Um diese Schichten besser zu verstehen entwarf man das OSI-Modell. Grundsätzlich beschreibt das OSI-Modell sieben Schichten. Diese haben alle eine eigene Aufgabe. Es ist keinesfalls so, dass es für jede Schicht genau ein Protokoll gibt. Protokolle können auch mehrere Schichten übernehmen, wie später in dem TCP/IP-Modell gezeigt wird. Ich werde nun die sieben Schichten genauer erläutern: 1. Bitübertragungsschicht (engl. Physical Layer) Die Bitübertragungsschicht definiert die Hardware Bedingungen, wie zum Beispiel der Spannungspegel oder die Position der Kontakte im Stecker. 2. Sicherungsschicht (engl. Data Link Layer) Diese Schicht kontrolliert, ob die Daten über die physische Schnittstelle übermittelt werden können, respektive übermittelt worden sind. 3. Vermittlungsschicht (engl. Network Layer) Die Vermittlungsschicht isoliert die oberen Schichten von den darunterliegenden. Sie kümmert sich um die Adressierung und Auslieferung der Daten. 4. Transportschicht (engl. Transport Layer) Die Transportschicht garantiert eine einwandfreie Datenübertragung durch Fehlererkennung. 5. Kommunikationssteuerungsschicht (engl. Session Layer) Sie beschreibt den Pfad von den Anwendungen, wie zum Beispiel Ports. 14 Maturaarbeit Oktober 2012 Roman Lacher 6. Darstellungsschicht (engl. Präsentation Layer) Hier wird entschieden, wie die Daten dargestellt werden müssen. Dies ist bereits eine Schicht, die nur für den Nutzer da ist. 7. Anwenderschicht (engl. Application Layer) Diese Schicht besteht aus Anwendungen, mit denen der Benutzer im Internet surfen kann. Zum Beispiel der Browser oder ein Mailprogramm. Wenn ein Datenaustausch stattfindet, wird ein Datenpaket von ganz oben Schritt für Schritt hinuntergereicht. Sobald es unten angekommen ist, wird es gesendet. Beim Empfänger wiederum wird das Paket wieder hochgegeben. Beim Senden eines Paketes wird jede Schicht seine Informationen vor dem Paket anhängen. Diesen Teil nennt man Header und diesen Prozess beschreibt man als Kapselung. Beim Empfänger findet der Prozess genau umgekehrt statt. Das Paket wird während des Hochreichens ausgepackt. Jede Schicht erhält das Paket von der unteren Schicht und liest den Header. Sobald die Schicht fertig ist, entfernt er seinen Header und gibt ihn weiter. Das hier gezeigte OSI-Modell ist eine starke Verallgemeinerung. Da ich mich auf das Thema TCP/IP spezialisiert habe, möchte ich auf die Protokollarchitektur von TCP/IP eingehen. Die Protokollarchitektur von TCP/IP TCP/IP ist der Überbegriff. Wenn von einer TCP/IP Struktur die Rede ist, heisst das nicht zwingend, das eine TCP Verbindung vorliegt. Es kann genauso gut ein anderes Protokoll vorliegen, wie zum Beispiel UDP. Wie man sieht, gibt es im TCP/IP Modell nur vier Schichten, nämlich die Netzzugangsschicht, die Internetschicht, die Transportschicht und die Anwenderschicht. Der Grund, dass es nur noch vier Schichten sind, ist, das gewisse Schichten zusammengefasst werden. Die jeweiligen Ebenen werden jetzt genauer betrachtet: 15 Maturaarbeit Oktober 2012 Roman Lacher Die Netzzugangsschicht Diese Schicht beschäftigt sich unter anderem mit dem Zerteilen von Datenpaketen in sogenannte Frames, welche dann übermittelt werden können, da nicht jede Schnittstelle ein ganzes Paket auf einmal versenden kann. Eine weitere Aufgabe ist das Versehen der physischen Schnittstellen mit einer Adresse. Dies ist eine grosse Stärke von TCP/IP. Es kann alle Schnittstellen universell mit Adressen beschreiben. Die Netzzugangsschicht von dem TCP/IP Modell beinhaltet die Vermittlung, Sicherung und Bitübertragung des OSI-Modells. Die Internet-Schicht Das „Internet Protocol“ (IP) ist das wichtigste Protokoll dieser Schicht. Grösstenteils wird im Internet IP Version 4 verwendet. IP Version 6, mit mehr Adressmöglichkeiten und grösserem Header, ist allerdings auf dem Vormarsch. In dieser Arbeit wird nur IP Version 4 behandelt. Die wichtigste Aufgabe von IP ist das Erstellen von sogenannten Datagrammen. Ein Datagramm ist das Paketformat. Ein Datagramm besteht aus 5 bis 15 Zeilen, oder auch Wörter gennant. Jedes Wort ist 32 Bit lang. In der Grafik sind am oberen Rand die Bit eingezeichnet. Da mit 0 begonnen wird, ist das letzte Bit das 31., also insgesamt 32 Bit. Der gesamte IP-Header eines Pakets ist dementsprechend normalerweise 160 Bit gross, was 20 Bytes entspricht. Er kann optional bis 480 Bit oder 60 Bytes verlängert werden. - Version: Die genutzte Version von IP. Normalerweise Version 4, Version 6 tritt aber immer mehr auf. (4 Bit breit) - Length: Die Länge des IP-Headers wird in Vielfachen von 32 angegeben. Ein 20 Bytes Header -umgerechnet 160 Bit- hat zum Beispiel die Länge 5. (4 Bit breit) - Type of Service: Dieses Feld zeigt die Priorität des Paketes an. (8 Bit breit) - Total Length: Gibt die totale Länge des gesamten Datagramms inklusive Header an. (16 Bit breit) 16 Maturaarbeit Oktober 2012 Roman Lacher - - - - - - Identification: Es kann sein, dass Datagramme noch zu gross sind, um direkt versendet zu werden. Darum beschreibt das gesamte zweite Wort die Zugehörigkeit des Paketes. Wenn das Paket fragmentiert wird, kann mithilfe des Identifikationsfeldes und der Quelladresse die Fragmente problemlos wieder zu einem Datagramm zusammengesetzt werden. (16 Bit breit) Flags: Dieses Feld ist 3 Bits breit. Das erste Bit ist immer 0. Wenn das zweite Bit 0 ist, darf das Datagramm nicht fragmentiert werden, wenn das zweite Bit 1 ist, darf es zerlegt werden. Wenn das dritte Bit 0 ist, bedeutet es, dass das Fragment das letzte war, wenn es 1 ist, heisst es, dass weitere Fragmente folgen. Fragment Offset: Dieses Feld besagt, ab welcher Stelle das Fragment innerhalb des Datagramms beginnt. (13 Bit breit) Time to Live: Beschreibt die Lebenszeit des Pakets. Jedes Mal, wenn das Datagramm bei einer Station ankommt wird die Lebenszeit um eins reduziert. Sobald es bei null angekommen ist, wird das Paket verworfen. Dies verhindert, dass Pakete ewig im Internet herumirren und so nur Rechenzeit vergeuden. (8 Bit breit) Protocol: Diese Feld sagt aus, welches Protokoll in der Transportschicht verwendet wird. Zum Beispiel hat TCP den Wert 6 und UDP den Wert 17. (8 Bit breit) Header Checksum: Die Prüfsumme für den Header ist eine eigene Kontrolle, ob alle Werte im Header noch stimmen. Bei jeder Station wird die Prüfsumme neu berechnet. (16 Bit breit) Source Address: Dies ist die IP-Adresse des Senders. (32 Bit breit) Destination Address: Die Zieladresse ist die IP-Adresse des Empfängers. (32 Bit breit) Options: Optionale Zusatzinformationen, wie zum Beispiel eine strikte Wegvorgabe für das Paket oder ein Aufzeichnen des Weges oder eine Zeitangabe. (Muss ein Vielfaches von 32 breit sein, ist es das nicht, wird das Wort mit Nullen aufgefüllt. Maximale Länge: 320 Bit) Data: Hier beginnen die zu überliefernden Informationen. Diese gehören nicht zu Header. Routing: Nachdem IP den Header für das Paket erstellt hat, entscheidet es, wohin das Paket geschickt wird. Dies nennt sich Routing. Falls sich das Ziel im eigenen Netzwerk befindet, wird es sofort ausgeliefert. Wenn nicht, wird das Paket an die nächste Station geschickt. Grundsätzlich gibt es zwei Arten von Stationen: Hosts und Gateways. Gateways können Pakete zwischen Netzwerken weiterleiten, Hosts nicht. 17 Maturaarbeit Oktober 2012 Roman Lacher Auf dem Schema ist ersichtlich, welchen Weg ein Paket von Host A1 nach Host C1 nehmen könnte. Pakete können nur innerhalb eines physischen Netzwerkes versendet werden. Nachdem das Paket von der Anwendungsschicht, durch die Transportschicht durchgereicht worden ist, erstellt das Internet Protokoll den Header für das Paket. Ausserdem wird das IP feststellen, dass Host C1 sich nicht im Netz A befindet. Also sendet das IP das Paket von A1 über das Netz A zum Gateway G1. Da dieses Verbindung zu Netz A und Netz B hat, kann es Pakete beliebig zwischen den beiden Netzen weiterleiten. Nachdem Gateway G1 nun das Paket über den Netzzugang empfangen hat, wird das IP feststellen, dass das Paket nicht für sich selbst bestimmt ist, also wird das Paket weitergeschickt. Da das Ziel weder im Netz A noch im Netz B liegt, wird es das Datenpaket zu Gateway G2 weiterleiten, welches Zugang zu Netz C hat. G2 empfängt das Paket und stellt fest, dass es nicht für sich bestimmt ist, das Ziel allerdings sich im Netz C befindet, zu dem es Zugang hat. G2 sendet also das Paket über das Netz C weiter zu Host C1. Nachdem das Paket über den Netzzugang empfangen wurde, stellt die Internet Schicht von C1 fest, dass das Paket für sich selber bestimmt ist. Also wird IP seinen Header entfernen und es über die Transportschicht zur Anwenderschicht weitergeben. So kommt eine Information von Host A1 zu Host C1. Die Internetschicht kann auch mithilfe des „Internet Control Message Protocol“ (ICMP) von sich aus direkt mit Gateways kommunizieren. Folgende Möglichkeit hat die Internetschicht: - Flusssteuerung: Falls Datenpakete für ein Gateway, oder dem Ziel-Host zu schnell ein, kann der Überforderte eine „ICMP-Source-Quench“ Meldung zum Sender losschicken. Der Sender wird dann vorübergehend das Senden von Paketen einstellen. - Erkennung unerreichbarer Ziele: Falls ein Ziel nicht erreichbar ist, wird eine „Destination-Unreachable“ Meldung geschickt. - Umleitung von Routen: Ein Gateway kann eine „Redirect“ Meldung senden. Dies bewirkt, dass die Datenpakete ein anderes Gateway verwenden werden. Meistens entsteht eine „Redirect“ Meldung, wenn ein anderes Gateway der bessere Weg wäre. - Prüfung entfernter Rechner: Mit der „ICMP-Echo“ Meldung, kann man überprüfen ob ein Internet Protokoll eines Rechners aktiv und korrekt ist. 18 Maturaarbeit Oktober 2012 Roman Lacher Die Transportschicht Die Transportschicht, eigentlich Host-zu-Host-Transportschicht, ist die Schicht über der Internetschicht. Sie ist dazu da, dass die zwei Rechner wissen, was sie mit den ankommenden Paketen anfangen sollen. Während die Internetschicht sich mehr mit dem Versenden von Paketen und dem Routing beschäftigt, ist die Transportschicht dazu da, damit die Rechner miteinander kommunizieren können. Es gibt zwei wichtige Protokolle: UDP und TCP. Ich werde beide erklären. Das „User Datagram Protocol“ (UDP) UDP ist ein schnelles, einfaches und verbindungsfreies Datagramm-Protokoll. Leider ist es dadurch auch „unzuverlässig.“ Das heisst, dass es lediglich keine Kontrollmechanismen gibt, ob das Paket angekommen ist. Verbindungsfrei bedeutet, dass zwei Rechner keinen Kontakt zueinander aufbauen müssen. Ein Beispiel einer Verbindung folgt im nächsten Abschnitt. Die Frage, warum man UDP brauchen sollte, wenn es doch unzuverlässig sei, ist ganz einfach zu beantworten: Wenn nur kleine Datenmengen übertragen werden müssen, ist es einfacher den Datensatz immer wieder zu senden, bis er ankommt, als eine komplizierte Verbindung aufzubauen. Oder wenn bereits eine eigene Kontrolltechnik von der Anwendung genutzt wird, ist es sinnlos, eine weitere zuverlässige Schicht hinzuzufügen. Ein UDP Header ist dank der fehlenden Verbindungs- und Kontrolltechnik sehr kurz, was ein weiterer Vorteil gegenüber TCP ist. Mit so einem kleinen Header ist der Versand und die Auswertung des Pakets beim Empfänger wesentlich einfacher und schneller. - Source Port: Diese Feld bezeichnet den Port, von dem Programm, dass das Paket losgeschickt hat. (16 Bit breit, optional) - Destination Port: Ist der Port, an den das Paket weitergegeben werden soll. (16 Bit breit) - Length: Beschreibt die Länge des Pakets, in Oktetten. (16 Bit breit) - UDP Checksum: Mit dieser Checksumme wird überprüft, ob der Header noch stimmt. (16 Bit breit, optional) 19 Maturaarbeit Oktober 2012 Roman Lacher Das „Transmission Control Protocol“ (TCP) TCP sorgt für eine korrekte Übertragung von Daten. Falls Pakete verlorengehen, ist das Protokoll fähig, selbstständig die verlorengegangenen Pakete solange erneut zu schicken, bis alles richtig angekommen ist. Dazu setzt TCP auf eine Verbindung. Wie so eine Verbindung in der Regel zustande kommt wird jetzt erläutert. Host A will Host B Daten schicken. Die Verbindung wird mit einem 3-Wege-Handshake geöffnet. Dazu sendet Host A ein Paket indem das „Synchronize sequence numbers“ SYN-Bit gesetzt ist. Dieses Bit teilt Host B mit, dass Host A eine Verbindung aufbauen möchte und mit welcher Startnummer Host A beginnen wird. Host B wird daraufhin mit einem „Acknowledgment“ ACK antworten. In diesem Paket steht, dass Host B bereit ist Daten zu empfangen und mit welcher Startnummer er beginnt. Im dritten Schritt schickt Host A ein ACK Paket. Dieses dritte Paket, ist für Host B die Bestätigung, das Host A das Paket bekommen hat. In diesem dritten Paket sind bereits die ersten Daten. Nachdem alle Pakete gesendet wurden, wird die Verbindung wieder mit dem 3-WegeHandshake geschlossen. Dies läuft genau gleich wie bei der Öffnung der Verbindung ab. Nur das jetzt das „No more data from sender“ FIN-Bit gesetzt ist. Während bei UDP jedes Paket für sich unabhängig ist, sieht TCP die Pakete eher als eine Art Datenstrom. So wird beim Beginn der Übertragung die „Initial Sequence Number“ ISN festgelegt. Die ISN beschreibt den Beginn der Pakete. Aus Sicherheitsgründen sollte diese Startnummer immer eine Zufallszahl sein, trotzdem ist sie oft 0. Jedes Paket wird dann fortlaufend von der ISN nummeriert. Eine weitere Besonderheit von TCP ist das Feld „Frame“. Der Empfänger teilt dem Sender mit, wie viele Datenpakete er maximal verarbeiten kann. Dies verhindert ein Überlasten des Empfängers, denn eine Überlastung hätte fatale Folgen. Da der Empfänger keine Bestätigung mehr senden kann, weil er überfordert ist, wird der Sender die gleichen Pakete immer wieder senden, nebst denen, die neu dazukommen. Das Fenster verschiebt sich immer mit den bestätigten Paketen mit. - Quell-Port: Hier steht der Port von der Anwendung des Senders. (16 Bit breit) 20 Maturaarbeit Oktober 2012 Roman Lacher - - - - - Ziel-Port: Der Ziel-Port besagt, an welches Programm das Paket weitergegeben werden muss. (16 Bit breit) Sequenz-Nummer: Steht für die Nummer, des Pakets. Sie ist dazu da, dass TCP alle Pakete richtig sortieren kann, egal wann und in welcher Reihenfolge sie angekommen sind. (32 Bit breit) Acknowledgement-Nummer: Mit dieser Betätigungsnummer kann der Sender sichergehen, dass alle Pakete vollständig angekommen sind. Diese Nummer wird vom Empfänger zum Sender zurückgeschickt. (32 Bit breit) Data Offset: Beschreibt die Länge des Headers in Anzahl 32-Bit-Blöcke. (4 Bit breit) Reserviert: Dieses Feld ist immer auf 000000 gesetzt. Falls in Zukunft noch Erweiterungen für den TCP Header kommen, können sie hier eingesetzt werden. (6 Bit breit) Flags: Kennzeichnung für die Kommunikation von Sender und Empfänger. Zum Beispiel: ACK, SYN, FIN, URG (6 Bit breit) Windows-Grösse: Zeigt dem Sender, wie viel der Empfänger auf einmal verarbeiten kann. (16 Bit breit) Check-Summe: Mit dieser Summe wird überprüft, ob der TCP Header korrekt ist. (16 Bit breit) Urgent-Pointer: Zusammen mit der Sequenz-Nummer kann TCP mit dieser Nummer die genaue Position der Daten im Datenstrom bestimmen. Dieses Feld ist nur gültig, wenn das Flag auf URG gesetzt ist. (16 Bit breit) Optionen/Füllbits: Hier werden Optionale Informationen eingetragen. (Vielfaches von 32 lang, wenn nicht, wird es mit Nullen aufgefüllt) Die Anwenderschicht Die Anwenderschicht ist die oberste Schicht des TCP/IP Modells. Mit ihr kann der Nutzer interagieren. Die bekanntesten und am weitverbreitetsten Dienste sind folgende: - HTTP: Das Hypertext Transfer Protocol dient zur Übermittlung von Webseiten. - FTP: Das File Transfer Protocol dient zur Datenübertragung. - SMTP: Mit dem Simple Mail Transfer Protocol ist es möglich, elektronische Post zu versenden und zu verwalten. - Telnet: Mit dem Network Terminal Protocol kann man sich auf andere Rechner anmelden. HTTP und SMTP wird sehr häufig auch von unerfahrenen Nutzern verwendet, FTP und Telnet ist eher etwas für erfahrene Netzwerknutzer. Es gibt inzwischen unzählige weitere Protokolle, diese vier sind jedoch für jeden Bereich die am meisten verwendeten. 21 Maturaarbeit Oktober 2012 Roman Lacher 7. Die Funktionsweise des DNS-Changers Die einzige Aufgabe des DNS-Changers ist, wie sein Name bereits sagt, das Austauschen des DNS-Eintrages. Dies führt dazu, dass der Resolver bei der DNS-Abfrage auf einen falschen DNS-Server zugreift. Normalerweise wird der DNS-Server vom eigenen Internetprovider bereitgestellt. Dieser wird auf jeden Fall alle Anfragen korrekt beantworten. Dieser falsche DNS-Server wird von Betrügern bereitgestellt. Auf diesem falschen DNS-Server läuft das ganz normale DNS-Programm. Für die meisten Anfragen wird der falsche DNS-Server einen echten DNS-Server befragen, damit er auf die Anfragen des Resolvers antworten kann. Wenn er das nicht macht, würde er zu schnell auffliegen. Nur in gewissen Fällen, bei dem der Verbrecher Gewinn machen will, wird er einen falschen Eintrag machen. Es gibt grundsätzlich drei Möglichkeiten, aus dem DNS-Changer Profit zu ziehen. Die einfachere der drei Methoden ist es, mit Hilfe von Werbung und Spam dies zu erreichen. Dazu werden Webseiten erstellt, die mit Werbung vollgepackt werden. Wenn nun ein Nutzer eines infizierten Rechners zum Beispiel „www.google.ch“ aufrufen will, bekommt der falsche DNS-Server die Anfrage für „www.google.ch.“ Dieser gibt nun statt 173.194.32.119 eine andere IP aus. Weder der Resolver, noch der Browser werden den Betrug bemerken. Nur dem Benutzer wird auffallen, dass er nicht die Startseite von Google bekommen hat, sondern Werbung. Diese Methode lohnt sich für die Angreifer erst, wenn genügend Rechner infiziert sind, denn der DNS-Server muss finanziert werden. Durch Werbung verdient man erst viel Geld, sobald auch viele Leute die Werbung aufrufen. Gegen Ende des DNS-Changers waren ungefähr vier Millionen Rechner infiziert. Bei so vielen Rechnern hat sich der Aufwand bei den Angreifern definitiv gelohnt. Die zweite Methode ist etwas komplizierter, jedoch effektiver. Sie nennt sich „Phishing.“ Das Ziel dieser Möglichkeit ist es, an Zugangsdaten von Kunden verschiedener Online-Banken zu kommen. Ich werde es mit dem Beispiel von „Paypal“ zeigen. Zuerst wird eine Webseite erstellt, die absolut identisch aussieht wie „www.paypal.com.“ Danach wird in der Tabelle vom falschen DNS-Server der Paypal-Eintrag von 23.54.98.234 auf die IP Adresse der Kopie geändert. Wenn nun ein infizierter Benutzer auf „www.paypal.com“ zugreift, wird er auf die Kopie der Seite kommen. Haben die Verbrecher die Webseite gut genug nachgemacht, hat der Nutzer keine Chance zu erkennen, dass die Seite nur eine Kopie ist. Nachdem der ahnungslose Nutzer seine Daten eingegeben hat, wird er von den Verbrechern ausgeraubt. Die dritte Möglichkeit, ist es zum Beispiel die Seite von Adobe zu kopieren. Falls ein infizierter Nutzer den Adobe Flash Player herunterladen will, bekommt er statt dem Flash Player weitere Viren. In diesem Rahmen könnten die Verbrecher sogar den gesamten Computer übernehmen und Daten klauen. 22 Maturaarbeit Oktober 2012 Roman Lacher 8. Praktische Arbeit In dem praktischen Teil meiner Arbeit, untersuchte ich, wie die Schweizer Internetprovider auf den DNS-Changer reagierten. Ich schrieb am 4. Juli 2012, kurz bevor die FBI DNS-Server ausgeschaltet wurden, 15 verschiedene Internet Provider an. In diesen Briefen stellte ich mich kurz vor und schrieb von meiner Maturaarbeit. Danach beschrieb ich den DNS-Changer, damit die Befragten wussten, auf welchen Trojaner ich mich bezog. Mein Ziel war, herauszufinden, wie die verschiedenen Provider mit den Trojaner umgingen. Ich wollte wissen, ob die Provider wussten, wer von ihren Kunden alles infiziert war und ob sie etwas dagegen unternommen haben. Ausserdem wollte ich wissen, was sie am 9. Juli 2012 unternehmen wollten, da man bis dahin noch annahm, dass in der Schweiz immer noch tausende Computer infiziert waren. Im Anhang befindet sich ein Beispiel eines solchen Briefes. Gesendet habe ich die Briefe an folgende 13 Provider: COLT, Green, ImproWare, Orange, Renet, Rii-Seez-Net, Sasag, Sunrise, Swisscom, Thurcom, UPC Cablecom, VTX, WWZ. Ich habe von sieben Providern eine schriftliche Antwort bekommen, nämlich von Green, RiiSeez-Net, Sasag, Sunrise, Swisscom, Thurcom und UPC Cablecom. Die WWZ hat mich telefonisch kontaktiert und meine Fragen beantwortet. Als ich die Antworten bekommen habe, war ich zunächst positiv überrascht, da alle Provider den DNS-Changer zumindest kannten. Die grösseren Provider, wie zum Beispiel Swisscom, UPC Cablecom, Sunrise und Green haben die Kunden aktiv informiert und so die Anzahl der Infektionen stark gesenkt. Ausserdem schrieben die Provider, dass sie Mitglied des geschlossenen Benutzerkreises von MELANI (Melde- und Analysestelle für Informationssicherung der Schweiz) seien. MELANI informierte alle grossen Provider in der Schweiz regelmässig über die aktuelle Lage des DNSChangers. Von MELANI bekamen die Provider auch die IP Adressen der betroffenen Nutzer. Die kleineren Provider schrieben, dass sie sowieso nur eine gut zu überschaubare Anzahl an Kunden hätten und dass sie abwarten wollten. Dem 9. Juli 2012 konnten die Provider dementsprechend gelassen entgegentreten. Alle antworteten mir, dass sie am Morgen des 9. Julis ihre Mitarbeiter vom Kundendienst sensibilisiert hätten. Allerdings hatte kein Internetprovider vermehrte Kundendienstanfragen zu verzeichnen. Swisscom hat als einzige direkt betroffene Kunden etappenweise gesperrt, nachdem die infizierten Kunden nach mehreren Mitteilungen (E-Mails, Briefe) nicht reagiert hatten. Ich versuchte danach einen solchen Brief zu bekommen, jedoch wurde mir bei der erneuten Anfrage keine Antwort mehr geschickt. 23 Maturaarbeit Oktober 2012 Roman Lacher 9. Meine persö nliche Meinung und Schlusswort Ich finde, die schweizer Provider haben grossen Respekt verdient. Alle Provider haben für sich die beste Entscheidung getroffen, sodass ein grosser Internetkollaps in Schweizer Haushalten und Firmen ausblieb. Hätte das FBI ähnlich wie schweizer Provider gehandelt, wäre es einfacher gewesen, die Infizierten auf den Trojaner aufmerksam zu machen. Sie hätten sich viel Geld sparen können, denn wenn sie aktiv die Infektionsrate gesenkt hätten, hätten sie die übernommenen DNS-Server früher ausschalten können. Jetzt kennen Sie die Gefahren des DNS-Changers. Ausserdem wissen Sie, wie das „Domain Name System“ und „TCP/IP“ funktioniert. Wenn Sie das nächste Mal auf „www.google.ch“ zugreifen, überlegen Sie sich, was Ihr Computer und andere Rechner in der halben Sekunde alles machten. Ich finde die Geschwindigkeit der heutigen Technik bereits atemberaubend und kann mir gar nicht vorstellen, wie schnell die Technik in 10 Jahren sein wird. 24 Maturaarbeit Oktober 2012 Roman Lacher 10. Der Brief an die Firma Swisscom als Beispielexemplar Roman Lacher Hungerstrasse 8 8832 Wilen bei Wollerau Swisscom AG Alte Tiefenaustrasse 6 3050 Bern Wilen, 4. Juli 2012 Sehr geehrte Damen und Herren Ich bin Schüler an der Kantonschule Ausserschwyz in Pfäffikon und stehe ein Jahr vor meiner Matura. Zur Matura gehört eine umfangreiche Arbeit, an der ich mehrere Monate schreibe. Das Thema meiner Matura-Arbeit ist die Untersuchung eines Trojaner, der weltweit im letzten halben Jahr für grosses Aufsehen gesorgt hat. Diesbezüglich werde ich verschiedene Provider in der Schweiz zu diesem Thema befragen. Ich werde die verschiedenen Antworten in meiner Arbeit zusammenfassen und vergleichen. Die Arbeit wird danach in der Kantonschule Ausserschwyz veröffentlicht. Der Trojaner DNS-Changer hat in der Schweiz viele Computer infiziert. Ich habe mich in den vergangen Monaten mit den Geschehnissen des DNS-Changers auseinander gesetzt und mich in das Thema TCP/IP eingearbeitet. Am 9. Juli 2012 werden die vom FBI übernommenen DNS-Server abgeschaltet. Allerdings sind laut FBI immer noch einige tausend Computer vom DNS-Changer infiziert. Diese werden sobald die Server abgeschaltet sind, keinen Internetzugriff mehr haben. Sie werden sicherlich einige Beschwerden von Nutzern bekommen, die nicht wissen, dass sie infiziert sind. Ich würde gerne von Ihnen wissen, ob und wann Sie bemerkt haben, dass gewisse Kunden vom DNS-Changer betroffen waren oder immer noch sind. Haben Sie Ihre Kunden informiert oder intern reagiert. Ausserdem würde ich gerne wissen, wie Sie am 9. Juli 2012 ihren Nutzern helfen werden. Ich danke Ihnen jetzt schon für Ihre Antwort für meine Matura-Arbeit. Ich füge Ihnen ein vorfrankiertes Rückantwortcouvert bei. Freundliche Grüsse Roman Lacher 25 Maturaarbeit Oktober 2012 Roman Lacher 11. Glossar Administrator: Ein Administrator kann man mit einem Verwalter gleichstellen. In dieser Arbeit ist immer ein Netzwerkadministrator gemeint. Ein Netzwerkadministrator kümmert sich um die Wartung eines Netzwerk. Wenn man etwas im Netzwerk Netzwerkadministrator sein Einverständnis geben. verändern will, muss der Bit/Byte: Ein Bit ist entweder 0 oder 1. Diese zwei Zahlen sind die einzigen, die der Computer kennt. Man redet auch vom binären Zahlenformat. Ein Byte sind 8 Bit hintereinander. Zum Beispiel: 0110 1010. Botnetz: Ein Bot ist ein Computerprogramm, welches selbstständig Aufgaben erledigen kann. Wenn nun mehrere Computer verbunden sind und die Bots miteinander Synchron arbeiten, spricht man von einem Botnetz. Cache: Der Cache ist der Zwischenspeicher eines Computers. Man kann ihn mit dem Kurzzeitgedächtnis des Menschen vergleichen. DHCP Server: DHCP steht für „Dynamic Host Configuration Protocol.“ Ein DHCP Server kann folgende Zuweisungen an Clients machen: - IP Adressen vergeben - Das zu nutzende Gateway bestimmen - Proxy Konfiguration übernehmen (Stellvertreter, welcher genutzt werden kann, um die eigene IP nicht zu verraten) - DNS-Server - Sekundärer DNS-Server Oktetten: Oktetten sind 8 Bit. Ein Oktett kann als Synonym für Byte verwendet werden. 26 Maturaarbeit Oktober 2012 Roman Lacher Port: Ein Port ist die Schnittstelle zwischen der Transportschicht und der Anwenderschicht. Mithilfe des Portes weiss TCP oder UDP an welches Programm die Pakete gegeben werden müssen. Sputnik Schock: Am 4. Oktober 1957 wurde der erste Satellit von der Sowjetunion ins All geschossen. Danach hatten die Amerikaner Angst, den Kalten Krieg zu verlieren. Deshalb wurde viel Geld in die Forschung investiert, um den Rückstand auf die Sowjetunion aufzuholen. Trojaner: Trojaner werden oft als nützliche Programme getarnt, führen allerdings im Hintergrund eine ganz andere Funktion aus. Mit Trojanern kann man zum Beispiel einen anderen Computer ausspionieren und sogar fernsteuern. Unix: Unix ist ein Betriebssystem. Viele andere Betriebssysteme wurden von Unix abgeleitet. Zonendatei: Eine Zonendatei ist mit einem Telefonbuch zu vergleichen. In ihr stehen die Namen und IP Adressen einer Region. Meistens ist eine Region ein Zahlenblock wie zum Beispiel: 193.23.34.213 bis 193.23.36.213. 27 Maturaarbeit Oktober 2012 Roman Lacher 12. Quellen Textquellen: Buch: - TCP/IP Network Administration, 3th Edition im Verlag O’Reilli & Associates, Inc, Craic Hunt (Deutsche Übersetzung) Internet: (Alle Zugriff 10.10.2012) - http://www.wiwo.de/technologie/digitale-welt/dns-changer-250-000-computern-drohtder-blackout/6847554.html - http://www.switch.ch/de/about/news/2012/dnscheck.html - http://www.heise.de/newsticker/meldung/Trojaner-im-Video-Codec-159371.html - http://www.pandasecurity.com/spain/homeusers/security-info/aboutmalware/encyclopedia/overview.aspx?IdVirus=128208&sind=0 - http://www.heise.de/security/meldung/Trojaner-mit-eingebautem-DHCP-Server187744.html - http://www.fbi.gov/news/stories/2011/november/malware_110911 http://www.bo.de/router/process/news_lokales/artikel_topmeldung/489?page_id=63& - db=news_lokales&table=artikel_topmeldung&id=489 http://www.computerbase.de/news/2012-01/bsi-raet-zur-system-ueberpruefung-vor- - dem-8.-maerz/ http://www.heise.de/newsticker/meldung/Operation-Ghost-Click-FBI-nimmt- - - DNSChanger-Botnetz-hoch-1376540.html http://www.heise.de/newsticker/meldung/Google-warnt-DNSChanger-Opfer1582621.html http://www.computerbase.de/news/2012-07/fbi-schaltet-dns-changer-netz-ab/ http://www.heise.de/newsticker/meldung/Rechnern-mit-DNS-Changer-drohtNetzblockade-1634132.html http://computer.t-online.de/internet-was-ist-eine-ip-adresse-/id_47922534/index http://de.wikipedia.org/wiki/Domain_Name_System http://blog.jenshellmeier.de/windows-7-hosts-datei-bearbeiten/2910/ http://openbook.galileocomputing.de/unix_guru/node204.html http://www.brautomation.com/downloads_br_productcatalogue/BRP44400000000000000100513/D atenblatt_8BAC0122.000-1_D_039.pdf http://www.darpa.mil/About/History/History.aspx http://tools.ietf.org/html/rfc1323 http://tools.ietf.org/html/rfc1034 28 Maturaarbeit Oktober 2012 Roman Lacher - - http://tools.ietf.org/html/rfc1035 http://tools.ietf.org/html/rfc2181 http://tools.ietf.org/html/rfc792 ftp://ftp.rfc-editor.org/in-notes/rfc-index.txt http://www.examicus.de/e-book/185691/analyse-von-logfile-statistiken-zurabsatzpolitischen-auswertung-von-internetpraesenzen http://ps2.kev009.com/wisclibrary/aix51/usr/share/man/info/en_US/a_doc_lib/aixbman/comm admn/tcp_protocols.htm http://de.wikipedia.org/wiki/Transmission_Control_Protocol http://de.wikipedia.org/wiki/IP-Paket http://de.wikipedia.org/wiki/IPv4 http://www.tutorialsweb.com/networking/tcp-ip/udp-tcp.htm http://de.wikipedia.org/wiki/User_Datagram_Protocol http://www.elektronik-kompendium.de/sites/net/0812271.htm http://en.wikipedia.org/wiki/IPv4#Header http://de.wikipedia.org/wiki/Byte http://szenesprachenwiki.de/definition/bot/ http://de.wikipedia.org/wiki/Oktett_(Informatik) http://de.wikipedia.org/wiki/Sputnikschock http://de.wikipedia.org/wiki/Trojanisches_Pferd_(Computerprogramm) http://de.wikipedia.org/wiki/Unix Bildquellen: Buch: - TCP/IP Network Administration, 3th Edition im Verlag O’Reilli & Associates, Inc, Craic Hunt (Deutsche Übersetzung) Internet: - http://www.examicus.de/object/document.185691/ef50558f4e1d85cdd894979b00396b ca_LARGE.png - http://www.tutorialsweb.com/networking/tcp-ip/udp-tcp.htm - https://imperia.trendmicroeurope.com/imperia/md/images/us/trendwatch/currentthreatactivity/ghostclick/heatmap_infected_machines.png - http://www.elektronik-kompendium.de/sites/net/0812271.htm - http://www.mikrocontroller.net/topic/244714 - http://imt.unipaderborn.de/index.php?eID=tx_cms_showpic&file=uploads%2Fpics%2Fdnsok.jpg&md5=c4296db1da416719c4e1726f96dfdd03cdcd049b&parameters[0]=YTo0 OntzOjU6IndpZHRoIjtzOjQ6IjgwMG0iO3M6NjoiaGVpZ2h0IjtzOjQ6Ijgw&paramet ers[1]=MG0iO3M6NzoiYm9keVRhZyI7czo0MjoiPGJvZHkgYmdDb2xvcj0iI2ZmZm 29 Maturaarbeit Oktober 2012 Roman Lacher - ZmZiIg&parameters[2]=c3R5bGU9Im1hcmdpbjowOyI%2BIjtzOjQ6IndyYXAiO3M 6Mzc6IjxhIGhyZWY9Imph&parameters[3]=dmFzY3JpcHQ6Y2xvc2UoKTsiPiB8ID wvYT4iO30%3D http://www.grin.com/object/document.154918/c0dec07a2d64bd3bbe2a834d6b5c4cb4 _LARGE.png http://www.intego.com/mac-security-blog/wpcontent/uploads/2012/07/INTG_July9th_06d_CO1.jpg http://cdn.thenextweb.com/wp-content/blogs.dir/1/files/2012/07/DNS-Changer-CheckUp-Clean-1-520x415.jpg http://www.coolpctips.com/wp-content/uploads/2012/07/DNS-Changer.jpg http://c7.valuewalk.com/wp-content/uploads/2012/07/DNSChanger-Malware.jpg http://media02.hongkiat.com/quicktips/DNSChanger-front.jpg 30 Maturaarbeit Oktober 2012 Roman Lacher 13. Eigenstä ndigkeitserklä rung Ich erkläre hiermit, dass ich die vorliegende Arbeit selbstständig und nur unter Benutzung der angegebenen Quellen verfasst habe und ich auf eine eventuelle Mithilfe Dritter in der Arbeit ausdrücklich hinweise. 31 Maturaarbeit Oktober 2012 Roman Lacher