Security in Peer to Peer Systemen Christoph Gow, Adrian Leemann, Amir Sadat Übersicht 1. 2. 3. 4. 5. 6. 7. Einleitung Aufbau P2P Systeme Sicherheitsbedrohungen I2P Fazit Pause Diskussion Einleitung Motivation Peer to Peer Solutions Steigende Leistungsanforderungen in der Kommunikationstechnologie Effizienzüberlegungen (Lastverteilung/Auslastung) Verbund gemeinsamer Interessen Integration von Daten- / Informationsbeständen. … Peer to Peer auf dem Weg aus der Grauzone? Zunehmens wegkommen vom illegalen Filesharing hin zu Businesstauglichen Anwendungen Ausprägungen Filesharing (BitTorrent, eMule, …) Grid Computing Kollaboration (DMS) Bsp. Groove Instant Messaging (Skype, MSN, ICQ …) Aufbau von Peer to Peer Netzwerken Zentralisierte P2P Systeme Implementiert zentralen Koordinator Transfer direkt Peer zu Peer Bsp: Napster Zentraler Server, Trust, (Effizienzaspekte) Single Point of Failure, Bedrohungen technischer/rechtlicher Natur Hybride P2P Systeme Peers/Leafnodes und Superpeers Hierarchische Struktur Dezentral, Wegfall von Koordinatore problemlos Verlust Vertrauensinstanz Reines P2P Komplett dezentralisiert nur Peers Kein Single Point of Failure, begünstigt Anonymität Verlust Vertrauensinstanz, Effizienz Distributed Hash Table - DHT Strukturiertes P2P (verteilte Indexstruktur über Hashtabellen) Gleiche Bedeutung/Verantwortung der Knoten ‚lookup‘ von Datenbeständen (die bekannt sind) -> jeder Knoten besitzt Routingtabelle Skalierbar, Robust Anfällig auf Routingangriffe DHT – Routing Beispiele: CHORD, CAN Sicherheitsbedrohun gen in Peer to Peer Systemen Denial of Service: Problem Ziel: Services unerreichbar machen Häufigste Methode: Flooding mit Garbage-Paketen DDoS: mehrere Hosts am Angriff beteiligt (z.B. durch Zombie Systeme) Je zentralisierter System desto kritischer DoS Denial of Service: Lösungsansatz Nicht komplett blockierbar, wenn verteilter Angriff (DDoS) → auch legitime Hosts beteiligt Pricing: Anzahl der Anfragen ist zeitlich beschränkt; Requester muss rechenintensive Puzzles lösen, was ein Fluten erschwert Je dezentraler ein System desto weniger kritisch DoS Keine kritische Stelle, die getroffen werden kann Höhere Netzwerklast bleibt jedoch -> Pricing Man in the Middle: Problem Angreifer platziert sich zwischen 2 Knoten Overlay erleichtert gezieltes Einordnen (DHT!) 2 Arten: Passiv: Verkehr abhören, Informationen sammeln; wird nicht entdeckt solange passiv Aktiv: Spoofing (falsche Identitäten vortäuschen), … Man in the Middle: Lösungsansatz Abhörsichere Leitung -> unrealistisch Kryptographische Verfahren Digitale Signatur für Authentizität Asymmetrische Verschlüsselung für Datentransfer Schlüsselvergabe als kritischer Punkt System für Einordnung im Identifier Space verantwortlich machen Gezieltes Einordnen erschwert Incorrect Routing Updates (DHT): Problem DHT: Routing-Tabelle auf jedem Knoten Tabellen mit Hilfe der Nachbarn (Overlay) aufgebaut Veränderungen der Topologie (join/leave) machen periodische Tabellenupdates nötig Bösartige Knoten können den Nachbarn falsche Informationen liefern -> Anfragen werden falsch weitergeleitet Incorrect Routing Updates (DHT): Lösungsansatz Richtlinien für den Aufbau von RoutingTabellen, die verifizierbar sind (Bsp: PastryPräfixe) Erreichbarkeit der Knoten vor dem Update prüfen Incorrect Lookup Routing (DHT): Problem Bösartiger Knoten kann Lookup an falsche oder nicht existierende Knoten weiterleiten -> erneute Übertragung wird getätigt… Incorrect Lookup Routing (DHT): Lösungsansatz Jede Weiterleitung muss Paket ein Stück näher an das Endziel bringen (Bsp: Präfix-Routing von Pastry) -> Initiator der Anfrage muss den Prozess beobachten (dürfen) Bei Entdeckung von bösartigem Knoten: Backtracking zum letzten sauberen Knoten Gesuch auf alternativen Pfad stellen Partitioning: Problem Bootstrapping: Peer muss für initialen Zugang zum Netzwerk einen aktuellen Teilnehmer kontaktieren z.B. Serverliste, hardcoded, bekannter Knoten von früher Bösartiger Knoten kann neuen Teilnehmer in falsches, paralleles Netzwerk lotsen Paralleles Netzwerk: Service verweigern, Informationen erschliessen, … Partitioning: Lösungsansatz Vertraute Instanz kontaktieren Problem: DHCP → vertrauenswürdiger Knoten von gestern heute vielleicht bösartig Zentraler Server? Network Poisoning: Problem Sehr trivialer Angriff Betrifft besonders Filesharing Angabe von falschen Metadaten oder fehlerhafter Inhalt Vergiften des Netzwerks mit diesen Junk Files durch sogenannte Spoofer Ressourcenverschwendung auf Anwenderseite, da fast nicht zu erkennen Folge: Attraktivität des Netzes sinkt, Population nimmt ab Network Poisoning: Lösungsansatz Fehlerhafte Files vor herunterladen identifizieren Integrity Rating: Bewerten der Filequalität Problem: auch Spoofer können davon Gebrauch machen Reputation Mechanismus: andere Benutzer bewerten Hashes: Herunterladen von Dateien aufgrund eindeutigem → -> woher beziehen? Einzig zentrale Lösung könnte das sicherstellen Rational Attack: Problem Effizienz vom System abhängig von Kooperation der Peers Freerider – Problematik und asymmetrische Leistungsfähigkeiten Mechanismen zur fairen Zuweisung von Ressourcen notwendig Rational Attack: Lösungsansatz Tit-for-Tat: „Wie du mir, so ich dir“ (Bittorrent und Samsara) Creditsystem: Höhere Priorität in Warteschlange (eMule) Etc. -> momentan sehr auf Filesharing fokussiert, in Zukunft auch für andere Anwendungsgebiete wichtig Reputationsmechanismen (P2PRep) Data Backup: Problem Backup Daten im ‚bedrohlichen‘ Netz Missbrauch von Daten Trittbrettfahrerei Böswillige Zerstörung von Daten Data Backup: Lösungsansatz Verteilte Redundanz Bsp. pStore Bei 25% Knotenausfall bleiben 95% des Datenbestand Datenverschlüsselung & paarweise Authentifikation Checkups & Tit for Tat Sybil Attack: Grundlage Wegen fehlender zentraler Kontrollstelle möglich. Kennung von Knoten via IP -> Spoofing Vorgaukeln von verschiedenen Identitäten Fehlleitung von Suchanfragen Redundanz vorspielen Sybil Attack: Ausmass Bsp: P2P Netzwerk mit 100‘000 Knoten 1% bösartige Knoten legen 35% Routing lahm. Durch alternatives Routing reduzierbar auf 25% Sybil Attack: Pastry Network 1-dimensionaler Raum… einfach, einen grossen Teil des Netzwerks zu kontrollieren Sybil Attack / Eclipse Attack Je nach Vergabe der Knoten Adresse einfach Wenige Knoten nötig Kontrolle des Verkehrs der Teilnetze überschreiten will Sybil Attack: Lösungsansatz Identifikation Peers via Private Key (zentral) Reputation ID Vergabe unvorhersehbar Pricing / Puzzle Solving Bootstrap Knoten dem man vertrauen kann Über Stufen hinweg Vergabe eines Tokens Problem weiterhin, wenn bösartige Knoten Token vergeben können. Token sammeln verhindern → Cutoff Window Vorgang des Bootstrapping mit Hilfe von Token Sybil Attack: Cutoff Window Gültigkeitsdauer der Token beschränkt Neulösen der Puzzles von Zeit zu Zeit Mehraufwand für gutartige Knoten Durch gezieltes setzten des Cutoff Window Mehraufwand kontrollierbar. Sybill Attack: Startup network Initialisierung als heikle Phase Puzzle sollte initial aufwändiger sein Bei mehr Knoten Reduktion des Aufwands Startup Window verwendet Fraglich wenn mehrer Angreifer im Verbund auftreten. Bsp: Netzwerk mit 36 Knoten; 4 fehlerhafte Knoten kontrollieren mehr als 10% Sybill Attack: Simulation Attacke startet nach T=10, kein Cutoffwindow Sybill Attack: Simulation Mit Cutoff Window 4h I2P I2P Open-Source-Projekt anonymes/pseudonymes VPN Layer für Anonymität und Sicherheit Verschlüsselte Kommunikation www.i2p.net I2P - Tunneling Bedeutung der Anzahl Hops: viele: Längere Übertragungszeit Ausfallwahrscheinlichkeit aufgrund schlechter Peers höher wenige Geringer die Anonymität Wahrscheinlichkeit grösser Opfer eines Angriffes zu werden Fazit Sicherheit in P2P Netzwerken: Fazit Peer to Peer als Businesslösung? Viele Sicherheitsrisiken Angriffspunkte: Knoten, Applikationen, Anwender, Routing Mechanismen, … Semantische Angriffe und Angriffe auf Infrastruktur To date nur ungenügende Lösungen gegen viele Problematiken Tradeoff von Sicherheit und Performance Fragen & anschl. Pause Diskussion Sicherheit in P2P P2P komplett verbieten? - Nur Illegal und unsicher? Diskussion Sicherheit in P2P Wo P2P heute Problemlos funktioniert und angewendet wird. Diskussion Sicherheit in P2P P2P wird unsere Gesundheit verbessern und endlich dafür sorgen dass die Krankenkassen- Prämien wieder sinken! Diskussion Sicherheit in P2P Was muss P2P an bestehende oder weitere Problemen lösen um breit eingesetzt werden zu können. (Businesstauglichkeit) Diskussion Sicherheit in P2P Freeriders & die Angst vor P2P Kann P2P vielleicht in unserer Ego - Kultur von der Philosophie her gar nicht bestehen oder sind die Vorurteile so gross, dass niemand darauf setzten wird?