Angriffswerkzeuge
Transcription
Angriffswerkzeuge
Angriffswerkzeuge Vortrag von Rüdiger Busch Veranstaltung Sicherheit in Rechnernetzen Übersicht Passwortbrecher Sniffer Viren Würmer Trojaner (D)DoS Scanner Passwortbrecher Passwörter bilden häufig den ersten und teilweise einzigen Schutz vor unbefugtem Zugang Passwörter und "pass phrases" finden eine Reihe von Anwendungen Einloggen auf Terminal Email Konto Abfragen Verschlüsselung per PKI Passwortbrecher Englisch: password cracker Einfache Verschlüsselungsalgorithmen können leicht rückgerechnet werden Passwörter werden über Hashfunktion über ein Einweg-Verfahren "verschlüsselt" Passwörter werden also nicht entschlüsselt, sondern neu berechnet und verglichen Passwortbrecher Methoden Passwörter erraten Brute-force Verwendung von Lexika Regelbasiertes Brute-force + Lexika Passwortbrecher John the Ripper Crack NTCrack PGPCrack ZipCrack Sniffer Was ist ein Sniffer? Sniffer Was ist ein Sniffer? Hard- oder Software zum Mitschneiden von Daten z.B. PS1 mit Linux ;-) Zwei Kategorien "Interne" Sniffer "Externe" Sniffer Sniffer erkennen Problem bei Sniffern, sie arbeiten passiv Entdecken schwer möglich Interne Sniffer mittels geeigneter Software Externe Sniffer durch Überwachung der Zugangsmöglichkeiten Sniffer Typen Packet Sniffer Durch Konfiguration können gezielt Daten gefiltert werden Erfolg abhängig von Art des Netzes (Hub/Switch) Key capture Sniffer Tasttatureingaben werden mitgeschnitten Verschlüsselung von Daten meist zwecklos Vorheriger Zugriff auf Rechnern notwendig Primäre Ziele Ziel von Snifferattacken Loginnamen und Passwörter ermitteln Vertrauliche Daten ermitteln Zugang zu benachbarten Netzwerken erlangen Viren Prinzipielle Funktionsweise begin look for (infizierbare Objekte) if (keine vorhanden) exit else (infiziere Objekte) endif end Arten von Viren Bootsektor Virus Dateivirus Mehrfach Virus Makrovirus Skriptvirus Hoax Virus Bootsektor Virus Eine der ältesten Virenarten Schreibt sich in Bootsektor oder MBR Erstellen erfordert relativ hohen Kenntnisstand Bootsektor muss ausführbar sein Effektiver Schutz bei Disketten, Schreibschutz Neue Bootsektorviren sind rar geworden Dateivirus Ziel sind ausführbare Dateien (inkl. VxD, DLL, Fontfiles etc.) Recht hoher Kenntnisstand erforderlich Keine Beschränkung der Länge, da sie sich an Dateien anhängen Kontrollierte (dezente) Verbreitung möglich Mehrfach Virus Kombination verschiedener Viren Nutzt verschiedene Infektionsmechanismen Makrovirus Virus infiziert nicht Betriebssystem sondern Komponenten einer Entwicklungsumgebung Auftreten verstärkt bei Microsoft Umgebungen Wird vielfach eingesetzt Nutzer überdurchschnittlich unbedarft Designfehler, da ausführbarer Code im Datenbereich erlaubt ist Skriptvirus Batchfiles Shellskripte VB-Skripte eMail eingebettet in HTML In letzterem Fall auch im Bereich der Würmer zu finden Hoax Virus Nutzt "Social Engineering" Die häufigsten Formen als "Scherz" gemeinte Falschmeldung "leerer" Virus Aufforderung, einen gefälschten Patch einzuspielen (-> Trojaner) Sober.F Sehr geehrte Damen und Herren, das herunterladen von Filmen, Software und MP3s ist illegal und somit Strafbar. Wir möchten Ihnen hiermit vorab mitteilen, dass Ihr Rechner unter der IP 62.243.48.105 erfasst wurde. Der Inhalt Ihres Rechner wurde als Beweismittel sichergestellt und es wird ein Ermittlungsverfahren gegen Sie eingleitet. Die Strafanzeige und die Möglichkeit zur Stellungnahme wird Ihnen in den nächsten Tagen schriftlich zugestellt. Die von uns gesammelten Daten unter dem Aktenzeichen #30430 sind für Sie und ggf. Ihrem Anwalt beigefügt und einsehbar. Da wir negative Erfahrungen mit Mailbomben in der Vergangenheit gemacht haben, wurde die Herkunft dieser Mail verschleiert. Nähere Auskunft erteilt Ihnen die Kriminalpolizei Düsseldorf, Europa Sonderkommission "Internet Downloads" Rufnummer innerhalb Deutschland (0211) 870 - 0 oder (0211) 870 - 6868 Rufnummer außerhalb Deutschland (0049211) 870 - 0 oder (0049211) 870 - 6868 Hochachtungsvoll i.A. PK Mollbach Anhang: aktenz30430.txt.com Würmer Würmer zeichnen sich durch eigenständige Vermehrung aus Sie können zusätzliche Programme wie Viren und Trojaner enthalten Sie sind meist auf ein System spezialisiert Verbreitung per eMail Schwäche im IIS Beispiel Code Red Ziel: Unpatched Microsoft IIS Web Server Buffer Overflow Erste Auffälligkeit: 13.7.2001 Version 2 mit verbesserter Verbreitungstechnik wurde am 19.7.2001 entdeckt Innerhalb von 13 Stunden wurden über 360.000 Rechner infiziert Primäre Ziele: Schnelle Verbreitung und DDoS Angriff gegen das Weiße Haus Prinzip von Code Red 1. Initialisierung 2. Wurm erzeugt 100 Threads von sich selbst 1. 99 Threads kontaktieren nach einem nicht ganz zufälligen Muster andere Rechner und versuchen diese zu infizieren 2. 100. Thread prüft ob englisches System vorliegt Falls ja, wird für 10h die Webseite modifiziert Sonst, Verhalten wie die anderen 99 Prinzip von Code Red 3. Jeder Wurm prüft auf c:\notworm 1. Wurm legt sich schlafen falls vorhanden 2. Anderfalls beginnt jeder Thread seinerseits mit der Infektion anderen Systeme 4. Jeder Wurm prüft das Datum (GMT) 1. 1.-19. Verbreitungsphase 2. 20.-28. DDoS gegen WhiteHouse.gov 3. Rest inaktiv Trojaner Begriff stammt aus der griechischen Mythologie siehe Homers Iliad Selbständiges Programm mit Schadensfunktion ausspionieren mitschneiden zerstören Hintertür Trojaner Trojaner können an beliebiger Stelle versteckt werden Das Entdecken eines unbekannten Trojaners ist nahezu unmöglich Die Klassiker Root-Kits Back Orifice NetBus Trojaner Trojaner wie NetBus werden als Fernwartungssoftware bezeichnet Einige Programme erfüllen mehr oder weniger einen nützlichen Dienst, beinhalten aber "bösartigen" Code Beispiel: ein mehrere hundert Zeilen langes Skript, angeboten in einer Newsgroup, beinhaltete rm -rf $HOME echo Boom! NetBus (D)DoS Was bedeutet (D)DoS? DoS = Denial of Service DDoS = Distributed Denial of Service Ziel eines solchen Angriff ist es, einen oder mehrere Dienste zeitweilig oder vollständig abzuschalten Arten von DoS Einfache aber z.T. sehr destruktiv Festplatte formatieren Wichtige Dateien löschen (z.B. Passwortdatei) Steckverbindungen lösen Rechner ausschalten Überlast Angriffe Process Overload z.B. durch rekursive fork Anweisung, :(){ :&:;};: System Overload mehrere find oder komplexe Berechnungen Disk Attack Rekursive Erzeugung von Unterverzeichnissen Auch ein häufiger Fehler, Backup Datei liegt in Backup Verzeichnis Gegenmaßnahmen set maxuproc=100, kill -TERM -1, kill -9 <processgroup> Als root: renice 19 $$ Festplatte partitionieren, Diskquota verwenden Netzwerk Überlast Angriffe Angriffe, die von außerhalb erfolgen können Service Overloading Message Flooding Clogging (Signal Grounding) Service Overloading Massive Anfragen (von einem Rechner) an einen Dienst stellen Auswirkung Dienst, Rechner oder Netzwerk ist blockiert Gegenmaßnahmen Aufteilung des Netzes in Subnetze Aufteilung der Dienste Gefahrenpotenzial ist gering, da heutige Rechner sehr leistungsfähig sind Message Flooding Statt Anfragen an einen Dienst zu stellen, werden sehr viele Nachrichten (z.B. echo-back) gesendet Ähnliches gilt für einen Broadcast Storm Gegenmaßnahme ist ebenfalls Aufteilung in Subnetze Clogging (Verstopfen) Ausnutzen des TCP Handshakes SYN Anfrage wird gestellt Auf SYN-ACK wird nicht geantwortet Jede Anfrage muss für einen Zeitraum offen gehalten werden Weitere Anfragen werden blockiert Im schlimmsten Fall Pufferüberlauf mit Absturz Gegenmaßnahmen Herabsetzen des Timeouts Nicht zu niedrig wählen! (schlechte Verbindungen) Mehr Verbindungen erlauben Syn Cookies verwenden Vorsicht: Können u.U. zum Umgehen von Firewall Regeln genutzt werden Signal Grounding Angriff erfolgt physisch, also nicht von außerhalb Entfernung von Terminatoren Kurzschließen einer Leitung Gegenmaßnahmen Sichern der Leitungen Ausfälle sofort überprüfen DoS auf Anwendungsebene eMail Bomben List Linking (Eintrag in Mailing Listen) Spam Distributed Denial of Service Bekannt seit Anfang 2000 Ablauf eines Angriffs Vorbereitung Zugang/Kontrolle von Systemen wird erlangt, z.B. mit Hilfe von Würmern, Viren oder manuell Bevorzugte Ziele sind privat genutzte Rechner mit DSL Zugang (Stets online und häufig schlecht gewartet) Distributed Denial of Service Ablauf eines Angriffs (forts.) Signalisierung Auf ein Signal hin werden alle korrumpierten Systeme aktiviert Um Rückverfolgung zu erschweren wird meist „relayed“, d.h. Aktivierung über anderen Host Flooding Der eigentliche DoS Angriff Große Packete, um Bandweite zu füllen Kleine Pakete, um einen Host zu blockieren DDoS Gegenmaßnahmen Erkennen Klassifizieren ACL, NetFlow (Cisco) Backscatter Analyse Tracing Umleiten Erkennen Provider untersucht CPU Last des Routers show proc cpu CPU Auslastung für fünf Sekunden: A%/B% A% gibt die allgemeine CPU Last an B% zeigt die Last für Packet forwarding A%-B% entspricht der Last fürs Routing d.h. wenn Routing Last hoch ist, deutet es auf einen DoS Angriff mit zufälligen (gespooften) Quelladressen hin Klassifizieren Verwendung von ACL (Access Control Lists) Anstatt zu filtern, können spezielle Pakettypen gezählt werden, z.B. permit icmp any any echo (2 matches) permit icmp any any echo-replay (21374 matches) permit tcp any any (15 matches) NetFlow ist ein Tool von Cisco und wird hier nicht weiter beschrieben Backscatter Analyse Analyse des DoS Rückverkehrs unter Verwendung von "black hole" Routern Annahme: Gefälschte IP Adressen verwenden den gesamten Adressraum, also auch 1.0.0.0/8, 2.0.0.0/8, 5.0.0.0/8 Diese Adressräume sind noch nicht vergeben, 3/256 des Rückverkehrs können somit umgeleitet und analysiert werden Tracing Bei echten Quelladressen kein Problem whois -h whois.[arin|apnic|ripe].net <ip prefix> Schwierig bei gefälschten Adressen Hier muss Router für Router zurückverfolgt werden NetFlow ACL Umleiten Im Falle eines Angriffs kann der gesamte Verkehr eines Ziels umgeleitet werden Der "sink hole" Router sollte an einer leistungsstarken Leitung liegen Änhlich wie bei "black hole" Router können die Daten anschließend ausgewertet werden Das Ziel ist nach der Umleitung nicht mehr erreichbar Alle anderen Rechner bleiben unbehelligt Sink Hole Router Sink Hole Router Zusammenfassung Möglichkeiten zum Angriff vorhandene Angriffswerkzeuge einfache Gegenmaßnahmen, soweit vorhanden