Post on 06-Apr-2015
transcript
Intrusion Detection Systems
Funktionsweise, Probleme und Lösungsversuche
Intrusion Detection Systems
IP-Netzwerke, Paketformate und Kommunikationsablauf
Netzwerkangriffe, verfolgte Ziele und Angriffspunkte
Intrusion Detection Methodik
Probleme
Lösungsversuche
Reale Systeme - Der Versuch eines Vergleichstests
Literaturhinweise
IP-NetzwerkeIP-Paketheaderformat
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32Version IHL Servicetypen PaketlängeIdentifikation DF MF FragmentoffsetLebenszeit (TTL) Transportprotokollnr KopfprüfsummeIP SenderadresseIP ZieladresseOptionen Füllzeichen
IHL: Internet Header Length: Headerlänge in 32bit-WortenDF: Don´t fragmentMF: More fragments
IP-NetzwerkeTCP & UDP Paketheaderformat
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
Sende Port Ziel Port
Sequenznummer
Acknowledgement-Nummer
Daten U A P R S F- Reserviert R C S S Y I Window
Offset G K H T N N
Checksumme Urgent Pointer
Options Padding
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32Quell Port Ziel PortLänge Checksumme
TCP:
UDP:
Netzwerkangriffeverfolgte Ziele
Datenzugriff
Dienstzugriff
Sabotage
NetzwerkangriffeAngriffspunkte des Netzsystems Dienstzugriff:
in der Regel verbindungsorientierte Dienste
Datenzugriff: ebenso
Sabotage - Diverse Ansätze: Daten- oder Dienstzugriff s.o. Flooding „ping of death“ und ähnliche
Intrusion Detection SystemsMethodik
Rekonstruktion der Netzwerkdaten
Mustersuche in den rekonstruierten Daten
Auslösung des Alarms
Aufzeichnung des Netzverkehrs
ggf. Aktivierung von Gegenmaßnahmen
Intrusion Detection SystemsSystemstruktur - Datenfluß
Intrusion Detection SystemsProblembereiche
Qualitätsmerkmale Vollständigkeit
Genauigkeit
Rekonstruktion des Netzverkehrs?
Ziele des Gegenmaßnahmen?
Intrusion Detection SystemsRekonstruktionsprobleme I Verbindungsbeginn:
Beginn vor Start des IDS Vollständigkeit des Handshakes
Verbindungsinhalt Overlapping Fragments Mehrfache Pakete
Verbindungsende Korrektheit des Endes
Allgemein Checksummenfehler Sequenznummernfehler
Intrusion Detection SystemsTCP-Handshakes Verbindungsaufbau:
System A sendet SYN-Paket mit SEQ-Nummer X und ACK-Nummer Y an System B
System B sendet SYN-Paket mit SEQ-Nummer Y und ACK-Nummer X+1 an System A
System A sendet ACK-Paket mit SEQ-Nummer X+1 und ACK-Nummer Y+1 an System B
Verbindungsabbau I: Wie Verbindungsaufbau, aber mit FIN- statt mit SYN-Paketen.
Das erste FIN-Paket muß eine passende ACK-Nummer haben. Verbindungsabbau II:
Das beendende System sendet ein RST-Paket mit passender ACK-Nummer an das andere System. Keine Bestätigung.
IP-Fragmentierung
IP-Paketfragmentierung, wenn Ursprungspaket zu groß für nächsten Transportabschnitt
Beispiele für maximale Paketgrößen inkl. Header: Ethernet: 1506Byte X.25: 1024Byte ARCNet: <512Byte
Zeitlich ungeordnetes Eintreffen der Fragmente bzw. Pakete möglich
IP-FragmentierungNicht-pathologische Fragmentierung I
IP -F rag m en t 0M F : 1
D ata O ffse t: 0[1 2 3 ]
IP -F rag m en t 1M F : 1
D ata O ffse t: 3[4 5 6 ]
IP -F rag m en t 2M F : 0
D ata O ffse t: 6[7 8 9 ]
IP -P ake t/F rag m en t 0M F : 0
D ata O ffse t: 0[1 2 3 4 5 6 7 8 9 ]
IP -P ake t/F rag m en t 0M F : 0
D ata O ffse t: 0[1 2 3 4 5 6 7 8 9 ]
IP-FragmentierungNicht-pathologische Fragmentierung II
IP -F rag m en t 0M F : 1
D ata O ffse t: 0[1 2 3 ]
IP -F rag m en t 2M F : 0
D ata O ffse t: 6[7 8 9 ]
IP -F rag m en t 1M F : 1
D ata O ffse t: 3[4 5 6 ]
IP -P ake t/F rag m en t 0M F : 0
D ata O ffse t: 0[1 2 3 4 5 6 7 8 9 ]
IP -P ake t/F rag m en t 0M F : 0
D ata O ffse t: 0[1 2 3 4 5 6 7 8 9 ]
IP-FragmentierungForward Overlapping Fragments
IP -F rag m en t 0M F : 1
D ata O ffse t: 0[1 2 3 ]
IP -F rag m en t 2M F : 0
D ata O ffse t: 6[7 8 9 ]
IP -F rag m en t 1M F : 1
D ata O ffse t: 3[4 5 6 0 ]
IP -F rag m en t 0M F : 0
D ata O ffse t: 0[1 2 3 4 5 6 {7 0 }8 9 ]
IP -P ake t/F rag m en t 0M F : 0
D ata O ffse t: 0[1 2 3 4 5 6 7 8 9 ]
IP-FragmentierungReverse Overlapping Fragments
IP -F rag m en t 0M F : 1
D ata O ffse t: 0[1 2 3 ]
IP -F rag m en t 1M F : 1
D ata O ffse t: 3[4 5 6 ]
IP -F rag m en t 2M F : 0
D ata O ffse t: 5[0 7 8 9 ]
IP -F rag m en t 0M F : 0
D ata O ffse t: 0[1 2 3 4 5 {6 0 }7 8 9 ]
IP -P ake t/F rag m en t 0M F : 0
D ata O ffse t: 0[1 2 3 4 5 6 7 8 9 ]
IP-FragmentierungExtra Fragments
IP -F rag m en t 0M F : 1
D ata O ffse t: 0[1 2 3 ]
IP -F rag m en t 1M F : 1
D ata O ffse t: 3[4 5 6 ]
IP -F rag m en t 3M F : 0
D ata O ffse t: 9[0 1 2 ]
IP -F rag m en t 2M F : 0
D ata O ffse t: 6[7 8 9 ]
IP -F rag m en t 0M F : 0
D ata O ffse t: 0[1 2 3 4 5 6 7 8 9 ]![0 1 2 ]?
IP -P ake t/F rag m en t 0M F : 0
D ata O ffse t: 0[1 2 3 4 5 6 7 8 9 ]
IP-FragmentierungDoubled Fragments
IP -F rag m en t 0M F : 1
D ata O ffse t: 0[1 2 3 ]
IP -F rag m en t 1M F : 1
D ata O ffse t: 3[4 5 6 ]
IP -F rag m en t 0M F : 1
D ata O ffse t: 0[0 0 0 ]
IP -F rag m en t 2M F : 0
D ata O ffse t: 6[7 8 9 ]
IP -F rag m en t 0M F : 0
D ata O ffse t: 0([1 2 3 ]|[0 0 0 ])[4 5 6 7 8 9 ]
IP -P aket/F rag m en t 0M F : 0
D ata O ffse t: 0[1 2 3 4 5 6 7 8 9 ]
Intrusion Detection SystemsRekonstruktionsprobleme II
Die Rekonstruktionsprobleme lassen sich in zwei Varianten der Angriffsvertuschung zusammenfassen:
Insertion:Das IDS sieht mehr Daten als das angegriffene System
Evasion:Das IDS sieht weniger Daten als das angegriffene System
IDS: Insertion/Deletion Beispiel: IP-Headerfehler / Double Fragments
IP -F rag m en t 0M F : 1
D ata O ffse t: 0[1 2 3 ]
IP -F rag m en t 2 Z ZM F : 0
D ata O ffse t: 6[7 8 9 0 1 2 ]
IP -F rag m en t 2M F : 0
D ata O ffse t: 6[7 8 9 ]
IP -F rag m en t 1M F : 1
D ata O ffse t: 3[4 5 6 ]
IP -F rag m en t 0M F : 0
D ata O ffse t. 0[1 2 3 4 5 6 7 8 9 ][0 1 2 ]?
IP -P ake t/F rag m en t 0M F : 0
D ata O ffse t: 0[1 2 3 4 5 6 7 8 9 ]
IDS: Insertion/Deletion Beispiel: IP-Headerfehler / Early MF0
IP -F rag m en t 0M F : 1
D ata O ffse t: 0[1 2 3 ]
IP -F rag m en t 1 Z ZM F : 0
D ata O ffse t: 3[4 5 6 ]
IP -F rag m en t 2M F : 0
D ata O ffse t: 6[7 8 9 ]
IP -F rag m en t 1M F : 1
D ata O ffse t: 3[4 5 6 ]
IP -F rag m en t 0M F : 0
D ata O ffse t. 0[1 2 3 4 5 6 ][7 8 9 ]?
IP -P ake t/F rag m en t 0M F : 0
D ata O ffse t: 0[1 2 3 4 5 6 7 8 9 ]
IDS: Insertion/Deletion Beispiel: TCP-Sequenzfehler
TC P -S tream Te il 1 :[1 2 3 ]
TC P -P aketS E Q 1 1A C K 2
[]
TC P -P aketS E Q 1
A C K 1 1[1 2 3 ]
TC P -S tream Te il 2 :[4 5 6 ]
TC P -P aketS E Q 1 2A C K 3
[]
TC P -P aketS E Q 2
A C K 1 2[4 5 6 ]
TC P -S tream Te il X[0 0 0 ]
TC P -P aketS E Q 2 2A C K 3 2
[0 0 0 ]
TC P -S tream Te il 3[7 8 9 ]
TC P -P aketS E Q 1 3A C K 4
[]
TC P -P aketS E Q 3
A C K 1 3[7 8 9 ]
TC P -S tream :[1 2 3 ][4 5 6 ][7 8 9 ]
IDS: Insertion/DeletionBeispiel: TCP-Handshakefehler
TC P -P aket (S Y N + A C K )S E Q 1 0A C K 2
[]
TC P -P aket (S Y N )S E Q 1
A C K 1 0[]
TC P -P aket[1 2 3 ]
TC P -P aket (A C K )S E Q 1 1A C K 3
[]
TC P -P aket (A C K )S E Q 2
A C K 1 1[1 2 3 ]
u n g ü lt ig e r (? ) Teard own
(V erb in d u n g sen d e? )
TC P -P aket (R S T)S E Q 5 0A C K 1 2
[]
TC P -P aket[4 5 6 ]
TC P -P aket (A C K )S E Q 1 2A C K 4
[]
TC P -P aketS E Q 3
A C K 1 2[4 5 6 ]
TC P -S eq u en z :[1 2 3 ][4 5 6 ]
Intrusion Detection SystemsLösungsversuche - Rekonstruktion Check them all - Strategie
Problem: Rechenaufwand Problem: Speicherbedarf
Check known - Strategie Problem: Genaues Zielsystemverhalten muß bekannt sein.
Score them - Strategie Problem: „Weiche“ Definition
Trade-Offs:Speicher CPU Komplettheit Genauigkeit
Check All ++ ++ ++ --Check Known + + + ++Score them - + + -
Intrusion Detection SystemsZiele der Gegenmaßnahmen Kappen bestehender Verbindungen
Verhinderung zukünftiger Verbindungen komplette Blockade bestimmter IP-Subnetze
Blockade bestimmter IP-Nummern
Blockade bestimmter Dienste/Ports
Blockade bestimmter Ports von bestimmten IP-Nummern
Deaktivierung einzelner Dienste
GegenmaßnahmenProbleme - Lösungen? Ermittlung des Ursprungssystems
Lokales System? Ist die Ermittlung sicher?
Ermittlung des Zielsystems Existiert das Zielsystem? Wird es von den Angriffen erreicht?
Auswahl der Gegenmaßnahmen Trifft die Gegenmaßnahme nur das Ursprungssystem? Behindert die Gegenmaßnahme den regulären Betrieb?
Intrusion Detection SystemsDer Versuch eines VergleichstestsTest Erwartung RealSecure NetRanger SessionWall 3 Network Flight RecorderFragmentation + - - - -TCP 1 - + ? + +TCP 2 + + + - -TCP 6 - - + + +TCBC 3 + - - + +Evade 1 + + - - +
False Negative False Positive Correct
Dies ist nur eine Auswahl aus den Tests. Die vollständigen Tests siehe [1] oder http://www.incase.de/ueberblick.html
Intrusion Detection SystemsNicht behandelte Themen Denial of Service - Attacks (größtenteils)
Aus Sicht des Angreifers leichter durchzuführen Aus Sicht des IDS ist der Ursprung meist schwerer zu erkennen
Angriffe aus dem lokalen Netz Für den Angreifer meist wesentlich schwerer zu erreichen Aus Sicht des IDS häufig leichter zu erkennen (Ethernet HW
Addresses)
externe Problemumgehung - nur Angriffe aus externem Netz IP Fragment - Reassemblierung im Firewall TCP - Reordering im Firewall
Intrusion Detection SystemsLiteraturhinweise I "Insertion, Evasion, and Denial of Service: Eluding Network Intrusion
Detection",http://www.nai.com/services/support/whitepapers/security/IDSpaper.pdf, Thomas H. Ptacek (tqbf@securenetworks.com) & Timothy N Newsham (newsham@secureetworks.com), Secure Networks Inc., 1/1998 [1]
"INTERNET PROTOCOL DARPA INTERNET PROGRAM PROTOCOL SPECIFICATION", RFC 791, "Information Sciences Institute, University of Southern California, 4676 Admiralty Way, Marina del Rey, California 90291", 9/1981 [2]
"TRANSMISSION CONTROL PROTOCOL DARPA INTERNET PROGRAM PROTOCOL SPECIFICATION", RFC 793, "Information Sciences Institute, University of Southern California, 4676 Admiralty Way, Marina del Rey, California 90291", 9-1981 [3]
Intrusion Detection SystemsLiteraturhinweise II "INTERNET CONTROL MESSAGE PROTOCOL", RFC 792, J.
Postel, 9/1981 [4] "USER DATAGRAM PROTOCOL", RFC 768, J.Postel, 8/1980 [5] "ASSIGNED NUMBERS", RFC 1700, J. Reynolds & J. Postel,
10/1994 [6] "TCP/IP and IP Addressing",
http://www.rware.demon.co.uk/ipadd.htm, Rhys Haden, 1998 [7] "Security White Papers",
"http://www.nai.com/services/support/whitepapers/security/", Network Associates [8]