HEINZ NIXDORF INSTITUT Universität Paderborn EIM Institut für Informatik 1 Algorithm. Grundlagen...

23
HEINZ NIXDORF INSTITUT Universität Paderborn EIM ‒ Institut für Informatik 1 gorithm. Grundlagen des Internets . Mai 2003 Christian Schindelhauer Vorlesung Sommersemester 2003 Algorithmische Grundlagen des Internets III Christian Schindelhauer [email protected] HEINZ NIXDORF INSTITUT Universität Paderborn Fakultät für Elektrotechnik, Informatik und Mathematik Institut für Informatik AG Theoretische Informatik Algorithmen, Komplexitätstheorie, Paralleles Rechnen

Transcript of HEINZ NIXDORF INSTITUT Universität Paderborn EIM Institut für Informatik 1 Algorithm. Grundlagen...

Page 1: HEINZ NIXDORF INSTITUT Universität Paderborn EIM Institut für Informatik 1 Algorithm. Grundlagen des Internets 12. Mai 2003 Christian Schindelhauer Vorlesung.

HEINZ NIXDORF INSTITUTUniversität Paderborn

EIM ‒ Institut für Informatik

1Algorithm. Grundlagen des Internets12. Mai 2003

Christian Schindelhauer

Vorlesung Sommersemester 2003

Algorithmische Grundlagen des Internets

IIIChristian Schindelhauer

[email protected]

HEINZ NIXDORF INSTITUTUniversität Paderborn

Fakultät für Elektrotechnik, Informatik und MathematikInstitut für Informatik

AG Theoretische InformatikAlgorithmen, Komplexitätstheorie, Paralleles Rechnen

Page 2: HEINZ NIXDORF INSTITUT Universität Paderborn EIM Institut für Informatik 1 Algorithm. Grundlagen des Internets 12. Mai 2003 Christian Schindelhauer Vorlesung.

HEINZ NIXDORF INSTITUTUniversität Paderborn

EIM ‒ Institut für Informatik

2Algorithm. Grundlagen des Internets12. Mai 2003

Christian Schindelhauer

Inhalte

1. Kurzübersicht TCP/IP

2. IP: Der Kampf gegen DoS-Angriffe (denial of service)

3. TCP: Verteilte faire und effiziente Durchsatzoptimierung

4. Der Webgraph:• Struktur und Aufbau • Suchalgorithmen für das Internet

5. P2P (Peer to Peer-Netzwerke): Effizientes File-sharing

6. Web-Caching: Surfen ohne Engpässe

Page 3: HEINZ NIXDORF INSTITUT Universität Paderborn EIM Institut für Informatik 1 Algorithm. Grundlagen des Internets 12. Mai 2003 Christian Schindelhauer Vorlesung.

HEINZ NIXDORF INSTITUTUniversität Paderborn

EIM ‒ Institut für Informatik

3Algorithm. Grundlagen des Internets12. Mai 2003

Christian Schindelhauer

Netzwerkschicht (I)(network layer)

o IP (Internet Protocol) + Hilfsprotokolle ICMP (Internet Control Management Protocol) IGMP (Internet Group Management Protocol) Ermöglicht Verbund von (lokalen) Netzwerken

IP ist ein unzuverlässiger verbindungsloser Datagrammauslieferungsdienst

o Datagramm besteht aus Anwendungsdaten und Header:• Absender, Zieladresse• TOS-Feld (type of service)• TTL-Feld (time to live)• ... (z.B. Paketlänge, Checksum für Header)

Page 4: HEINZ NIXDORF INSTITUT Universität Paderborn EIM Institut für Informatik 1 Algorithm. Grundlagen des Internets 12. Mai 2003 Christian Schindelhauer Vorlesung.

HEINZ NIXDORF INSTITUTUniversität Paderborn

EIM ‒ Institut für Informatik

4Algorithm. Grundlagen des Internets12. Mai 2003

Christian Schindelhauer

Dienstverweigerungsangriffe(Denial of Service DoS)

Denial of Service (DoS)-Angriffe verbrauchen die Ressourcen eines Rechners oder Netzwerks, um deren

Verfügbarkeit zu verringern oder auszuschalten.

Angriffsziel Rechner– z.B. SYN-Angriffe:

• Angriffsziel Rechner im Internet

• Eine Reihe von „half-open“ TCP-Verbindungen wird aktiviert

• Ununterscheidbar von regulären Anfragen

• Der TCP-Server muss SYN/ACK-Pakete senden und auf Reaktion warten

– Rechnerangriffe können rel. gut lokal abgewehrt werden

Angriffsziel Netzwerk– z.B. SMurf-Angriff oder

distributed DoS (DDoS)– Angriff gegen Internet-

Service Provider (ISP)– Großer Datenstrom wird

auf Netzwerk gerichtet– Mit gleicher Häufigkeit

werden gültige wie DoS-Pakete wegen Überlastung durch IP gelöscht

– Netzwerkangriffe sind schwierig zu bekämpfen

Page 5: HEINZ NIXDORF INSTITUT Universität Paderborn EIM Institut für Informatik 1 Algorithm. Grundlagen des Internets 12. Mai 2003 Christian Schindelhauer Vorlesung.

HEINZ NIXDORF INSTITUTUniversität Paderborn

EIM ‒ Institut für Informatik

5Algorithm. Grundlagen des Internets12. Mai 2003

Christian Schindelhauer

IP ist DoS-anfällig

Wie kann man die Quelle(n) einer eingehenden Datagrammflut mit gefälschten Quell-IP-Adressen

bestimmen?

• DoS-Angriffe auf IP-Ebene können meist nicht zurückverfolgt werden

– Der Angreifer erzeugt Datagramme mit falscher Quell-IP-Adresse

– Dem Empfänger der Datagramme steht die Routeninformation nicht zur Verfügung

– Es sei denn alle Router kooperieren bei der Suche, während einer Attacke

• DoS-Datagramme können nicht von legitimen Datatgrammen unterschieden werden

– Nur implizit und aus dem Kontext.

Beispiele:• Universitätsrechner werden

oft benutzt, um DoS-Attacken mit korrekter Quellinformation zu führen.

• 11. September 2001 – Sämtliche Nachrichtensites brachen unter der legitimer Last zusammen

Page 6: HEINZ NIXDORF INSTITUT Universität Paderborn EIM Institut für Informatik 1 Algorithm. Grundlagen des Internets 12. Mai 2003 Christian Schindelhauer Vorlesung.

HEINZ NIXDORF INSTITUTUniversität Paderborn

EIM ‒ Institut für Informatik

6Algorithm. Grundlagen des Internets12. Mai 2003

Christian Schindelhauer

Quellbestimmung einer DoS-Attacke

• Motivation:– Im einfachsten Fall: Quelle = Angreifer– Abschalten instrumentalisierter Rechner beendet (vorerst) den

Angriff

• Problem Reflektorangriff– Angreifer schickt Datagramme mit Opfer-IP-Adresse als falscher

Quellinformation an unbeteiligte Netzteilnehmer (Rechner oder Drucker

– Die unbeteiligten Netzteilnehmer beantwortet Request an mutmaßliche Quelle

– Das Opfer erhält die DoS-Attacke von diesen instrumentalisierten Netzteilnehmern

• Gegenmaßnahme– Vom instrumentalisierten Netzteilnehmer aus, muss der

Angreifer gefunden werden

Page 7: HEINZ NIXDORF INSTITUT Universität Paderborn EIM Institut für Informatik 1 Algorithm. Grundlagen des Internets 12. Mai 2003 Christian Schindelhauer Vorlesung.

HEINZ NIXDORF INSTITUTUniversität Paderborn

EIM ‒ Institut für Informatik

7Algorithm. Grundlagen des Internets12. Mai 2003

Christian Schindelhauer

Lösungen gegen DoS-Attacken

Ingress filtering [Ferguson, Senie ’98]

– Router blockieren Pakete mit fehlerhafter Quellinformation

– Sinnvoll an Schnittstellen von ISP

– Effektiv nur bei universellen Einsatz

– Wird aber nicht bei der Mehrheit der ISP eingesetzt

Link testing by input debugging

– Routenrückverfolgung stromaufwärts

– Opfer beschreibt allgemeines Merkmal der DoS-Datagramme (attack signature)

– Opfer kommuniziert diese Merkmal an Netzwerkbetreiber der eingehenden Datagramme

– Dieser wiederholt dies bis zur Quelle

– Einige ISP haben dieses Verfahren automatisiert [Stone ’00]

Page 8: HEINZ NIXDORF INSTITUT Universität Paderborn EIM Institut für Informatik 1 Algorithm. Grundlagen des Internets 12. Mai 2003 Christian Schindelhauer Vorlesung.

HEINZ NIXDORF INSTITUTUniversität Paderborn

EIM ‒ Institut für Informatik

8Algorithm. Grundlagen des Internets12. Mai 2003

Christian Schindelhauer

Quellbestimmung einer DoS-Attacke

Link testing durch controlled flooding [Burch, Cheswick ’99]

– Opfer verfügt über eine aktuelle Routingkarte– Während eines DoS-Angriffs konstruiert das Opfer die Angriffsrouten

stromaufwärts• indem es alle Möglichkeiten der letzten unbekannten Station selber durch

einen DoS-Angriff belegt• Läßt die Datenmenge kurzfristig nach, ist eine Station gefunden und der

Vorgang wird per Tiefensuche fortgesetzt– Nachteile

• Opfer wird selber zum Angreifer• Kaum geeignet für verteilte DoS-Angriffe (DDoS)• Kann leicht von einem Angreifer überlistet werden

– durch eingebaute Fluktuationen

Page 9: HEINZ NIXDORF INSTITUT Universität Paderborn EIM Institut für Informatik 1 Algorithm. Grundlagen des Internets 12. Mai 2003 Christian Schindelhauer Vorlesung.

HEINZ NIXDORF INSTITUTUniversität Paderborn

EIM ‒ Institut für Informatik

9Algorithm. Grundlagen des Internets12. Mai 2003

Christian Schindelhauer

Quellbestimmung einer DoS-Attacke

ICMP Traceback– Mit geringer W’keit (z.B. 1/20.000) wird in einem

Router ein ICMP-traceback-datagramm an den Zielknoten geschickt

– Der Zielknoten kann dann den Weg rekonstruieren– Nachteile: ICMP-Pakete könnten bei Pufferüberlauf

vor IP-datagrammen gelöscht werden

Marking [Savage et al. ’00]– In ungenutzte Felder des IP-

Headers schreibt jeder Router seine Adresse mit gewisser W’keit

– Nachteil:• DDoS-Pfade nur schwer

rekonstruierbar

Logging– Jeder Router zeichnet

alle IP-Header auf– Durch Data-Mining-

Techniken kann der Angreifer bestimmt werden

– Aber enormer Aufwand

Page 10: HEINZ NIXDORF INSTITUT Universität Paderborn EIM Institut für Informatik 1 Algorithm. Grundlagen des Internets 12. Mai 2003 Christian Schindelhauer Vorlesung.

HEINZ NIXDORF INSTITUTUniversität Paderborn

EIM ‒ Institut für Informatik

10Algorithm. Grundlagen des Internets12. Mai 2003

Christian Schindelhauer

Quellbestimmung einer DoS-Attacke

Verwaltungs-aufwand

Netzwerklast Router-aufwand

Post mortem fähig

Präventiv/ reaktiv

Ingress filtering

moderat niedrig moderat Nein präventiv

Link testing by input

debugginghoch niedrig hoch schlecht reaktiv

Link testing by flooding

niedrig hoch niedrig schlecht reaktiv

Logging hoch niedrig hoch ausgezeichnet reaktiv

ICMP Traceback

niedrig niedrig niedrig ausgezeichnet reaktiv

Markieren niedrig niedrig niedrig ausgezeichnet reaktiv

Page 11: HEINZ NIXDORF INSTITUT Universität Paderborn EIM Institut für Informatik 1 Algorithm. Grundlagen des Internets 12. Mai 2003 Christian Schindelhauer Vorlesung.

HEINZ NIXDORF INSTITUTUniversität Paderborn

EIM ‒ Institut für Informatik

11Algorithm. Grundlagen des Internets12. Mai 2003

Christian Schindelhauer

ICMP Traceback(Analyse I)

Theorem1. Wird mit Wahrscheinlichkeit p ein ICMP-Paket erzeugt, dann sind erwartet ((ln d) + O(1))/p DoS-Pakete

ausreichend zur Bestimmung eines DoS Pfades aus d Routern.2. Um mit Wahrscheinlichkeit 1 ‒ ε den Pfad zu bestimmen genügen ln(d)/p ‒ ln(ε)/p DoS Pakete.

BeweisSei t die Anzahl der DoS-Pakete. Bezeichne Xi,t die Zufallsvariable die Anzahl der Pakete, die Router i nach t DoS-Paketen erzeugt. Dann ist die Wahrscheinlichkeit P[Xi,t = 0], dass Router i kein ICMP-Paket erzeugt:

Lemma: Für alle n>1 gilt:

Page 12: HEINZ NIXDORF INSTITUT Universität Paderborn EIM Institut für Informatik 1 Algorithm. Grundlagen des Internets 12. Mai 2003 Christian Schindelhauer Vorlesung.

HEINZ NIXDORF INSTITUTUniversität Paderborn

EIM ‒ Institut für Informatik

12Algorithm. Grundlagen des Internets12. Mai 2003

Christian Schindelhauer

ICMP Traceback(Analyse II)

• Sei t die Anzahl der DoS-Pakete• Bezeichne Xi,t die Zufallsvariable für die Anzahl der Pakete, die

Router i nach t DoS-Paketen erzeugt.

• Die Wahrscheinlichkeit, dass einer der d Router kein Paket schickt, ist

Page 13: HEINZ NIXDORF INSTITUT Universität Paderborn EIM Institut für Informatik 1 Algorithm. Grundlagen des Internets 12. Mai 2003 Christian Schindelhauer Vorlesung.

HEINZ NIXDORF INSTITUTUniversität Paderborn

EIM ‒ Institut für Informatik

13Algorithm. Grundlagen des Internets12. Mai 2003

Christian Schindelhauer

ICMP Traceback(Analyse III)

2. Fall: Die Wahrscheinlichkeit, dass einer der d Router kein Paket schickt, soll kleiner als sein.

Damit ist

1. Fall: Sei Y die Zufallsvariable, die beschreibt, wieviele Runden notwendig sind, bis jeder der d Router ein Paket verschickt hat

Es gilt

Page 14: HEINZ NIXDORF INSTITUT Universität Paderborn EIM Institut für Informatik 1 Algorithm. Grundlagen des Internets 12. Mai 2003 Christian Schindelhauer Vorlesung.

HEINZ NIXDORF INSTITUTUniversität Paderborn

EIM ‒ Institut für Informatik

14Algorithm. Grundlagen des Internets12. Mai 2003

Christian Schindelhauer

ICMP Traceback(Analyse III)

1. Fall: Sei Y die Zufallsvariable, die beschreibt, wieviele Runden notwendig sind, bis jeder der d Router ein Paket verschickt hat

Es gilt

Der Erwartungswert von Y ist dann

Page 15: HEINZ NIXDORF INSTITUT Universität Paderborn EIM Institut für Informatik 1 Algorithm. Grundlagen des Internets 12. Mai 2003 Christian Schindelhauer Vorlesung.

HEINZ NIXDORF INSTITUTUniversität Paderborn

EIM ‒ Institut für Informatik

15Algorithm. Grundlagen des Internets12. Mai 2003

Christian Schindelhauer

ICMP Traceback(Analyse III)

Page 16: HEINZ NIXDORF INSTITUT Universität Paderborn EIM Institut für Informatik 1 Algorithm. Grundlagen des Internets 12. Mai 2003 Christian Schindelhauer Vorlesung.

HEINZ NIXDORF INSTITUTUniversität Paderborn

EIM ‒ Institut für Informatik

16Algorithm. Grundlagen des Internets12. Mai 2003

Christian Schindelhauer

ICMP Traceback(Analyse IV)

ZusätzlicheAnnahmen:

Page 17: HEINZ NIXDORF INSTITUT Universität Paderborn EIM Institut für Informatik 1 Algorithm. Grundlagen des Internets 12. Mai 2003 Christian Schindelhauer Vorlesung.

HEINZ NIXDORF INSTITUTUniversität Paderborn

EIM ‒ Institut für Informatik

17Algorithm. Grundlagen des Internets12. Mai 2003

Christian Schindelhauer

MarkierungVoraussetzungen und Annahmen

• Ein Angreifer kann alle Pakettypen erzeugen

• Verschiedene Angreifer können konspirieren

• Angreifer wissen, dass die Pakete zurückverfolgt werden

• Pakete können verloren gehen oder ihre Reihenfolge kann vertauscht werden

• Angreifer senden zahlreiche Pakete

• Die Route zwischen Angreifer und Opfer ist relativ stabil

• Die Router habe beschränkte Rechen- und Speicherressourcen

• Die Router arbeiten im wesentlichen ordnungsgemäß

Page 18: HEINZ NIXDORF INSTITUT Universität Paderborn EIM Institut für Informatik 1 Algorithm. Grundlagen des Internets 12. Mai 2003 Christian Schindelhauer Vorlesung.

HEINZ NIXDORF INSTITUTUniversität Paderborn

EIM ‒ Institut für Informatik

18Algorithm. Grundlagen des Internets12. Mai 2003

Christian Schindelhauer

Das Traceback-Modell

V: OpferRi: Router

Aj: mögliche AngreiferAx =A3 : tatsächlicher Angreifer

P = (R2,R4,R5): Angriffspfad

(R1,R3, R2,R4,R5): von Ax

vorgetäuschterPfad

A1

A3

R3

R1

V

A2

R5

R2

R4

V

A2

R5

R2

R4

P

R3

R1

Page 19: HEINZ NIXDORF INSTITUT Universität Paderborn EIM Institut für Informatik 1 Algorithm. Grundlagen des Internets 12. Mai 2003 Christian Schindelhauer Vorlesung.

HEINZ NIXDORF INSTITUTUniversität Paderborn

EIM ‒ Institut für Informatik

19Algorithm. Grundlagen des Internets12. Mai 2003

Christian Schindelhauer

Problemstellungen

o Exact traceback: Berechne exakten Angriffspfad P

o Approximate traceback: Finde Pfad P‘ mit Angriffspfad P als Suffix Angreifer kann längeren Pfad vortäuschen

o Zwei Algorithmen:1. Markierungsalgorithmus im Router

Algorithmus schreibt Pfadinformation in den IP-Header durchlaufender Datagramme

2. Pfadrekonstruktion durch Opfer Löst approximate traceback

o Qualtitätsmerkmale: Konvergenzzeit: Anzahl notwendiger Pakete zur Lösung Speicherbedarf in IP-Header Berechnungsaufwand

Page 20: HEINZ NIXDORF INSTITUT Universität Paderborn EIM Institut für Informatik 1 Algorithm. Grundlagen des Internets 12. Mai 2003 Christian Schindelhauer Vorlesung.

HEINZ NIXDORF INSTITUTUniversität Paderborn

EIM ‒ Institut für Informatik

20Algorithm. Grundlagen des Internets12. Mai 2003

Christian Schindelhauer

Node Append

Pfadprotokoll (node append)

– In IP-Header wird gesamte Pfadinformation gespeichert

– Jeder Router hängt seine IP an.☺Konvergenzzeit: 1☹Pfadlänge im vorhinein nicht

bekannt• Datagrammlänge (praktisch)

konstant• Angreifer kann falsche Pfade

fingieren☹Erheblicher Overhead

Markierung bei Router Rbegin

for all packets w doFüge R zu w hinzu

odend

Pfadrekonstruktion durch Opfer V

beginfor a packet w do

Extrahiere Pfad P aus wodreturn P

end

Page 21: HEINZ NIXDORF INSTITUT Universität Paderborn EIM Institut für Informatik 1 Algorithm. Grundlagen des Internets 12. Mai 2003 Christian Schindelhauer Vorlesung.

HEINZ NIXDORF INSTITUTUniversität Paderborn

EIM ‒ Institut für Informatik

21Algorithm. Grundlagen des Internets12. Mai 2003

Christian Schindelhauer

Node Sampling

Knotenproben (node sampling)

– Mit Wahrscheinlichkeit p>1/2 schreibt der Router seine IP-Adresse in den IP-Header

– Nur eine Adresse

Markierung bei Router Rbegin

for all packets w dox ← Zufallszahl aus

[0..1]if x<p then

w.router ← R(Ersetze alte Inform.)

fiod

end

Pfadrekonstruktion durch Opfer Vbegin

for all packets w doN(R) ← Anzahl Pakete mit

Router R aus Paket wodP ← sortierte Liste aller

vorgekommenden Router R gemäß N(R)

return Pend

Page 22: HEINZ NIXDORF INSTITUT Universität Paderborn EIM Institut für Informatik 1 Algorithm. Grundlagen des Internets 12. Mai 2003 Christian Schindelhauer Vorlesung.

HEINZ NIXDORF INSTITUTUniversität Paderborn

EIM ‒ Institut für Informatik

22Algorithm. Grundlagen des Internets12. Mai 2003

Christian Schindelhauer

Konvergenz Node Sampling

Lemma

Die Wahrscheinlichkeit bei der Pfadrekonstruktion von Node-sampling ein Paket mit Router-IP R, der Hopdistanz d zum Opfer hat zu finden ist

• mindestens p(1‒p)d-1 und • höchstens p(1-p)d-1+(1-p)D,

wobei D die Hopdistanz des Angreifers ist.

Beweis:

1. Fall: Der Angreifer sendet keine Pakete mit Routerinfo R

o W’keit, dass d-1 Router Routerinfo nicht überschreiben: (1-p)d-1

o W’keit, dass Router R Routerinfo überschreibt: p

2. Fall: Der Angreifer sendet nur Pakete mit Routerinfo R

o W’keit, dass D Router Routerinfo nicht überschreiben: (1-p)D

o W’keit, dass Router R Routerinfo überschreibt: p(1-p)d-1

Page 23: HEINZ NIXDORF INSTITUT Universität Paderborn EIM Institut für Informatik 1 Algorithm. Grundlagen des Internets 12. Mai 2003 Christian Schindelhauer Vorlesung.

HEINZ NIXDORF INSTITUTUniversität Paderborn

EIM ‒ Institut für Informatik

23Algorithm. Grundlagen des Internets12. Mai 2003

Christian Schindelhauer

Konvergenz Node Sampling

TheoremDie erwartete Konvergenzzeit E[T] von Node Sampling bei

Wahrscheinlichkeit p>1/2 istbei einer Angriffspfadlänge von D.

Beweis: Hauptproblem: Vertauschen von Nachbarn im Angriffspfad.Methode: Geschickte Verwendung von Chernoff-Schranke:

Theorem Chernoff-Schranke:Wenn X1,..,Xn unabhängige binäre Zufallsvariablen und

wobei E[Xi] = μ, dann gilt

Für δ ≥ 0

Für 0 ≤ δ ≤ 1