DNS Flashcards
Wie sieht DNS cache poisoning aus, wie läuft die Attacke ab?
Was ist DNS? Was wird damit erreicht
Verteilte Datenbank bestehend aus einer Vielzahl von Servern. Wird genutzt für Übersetzung von Hostnamen in IP Adressen
DNS Lookup erklären von Root Zone bis zu Uni HH
Dann die unterschiedlichen Server erklären also Autoritativ, Caching, Root Nameserver, Resolver
Welche Teile sind rekursiv und welche iterativ ?
Authorirative Server
- Server, der den authoritativen Inhalt einer kompletten DNS-Zone verwaltet
- Top-Level-Domain (TLD)-Server und Autorisierungsserver für die Domänen der Organisation
- Verweis auf die übergeordnete Zone als autoritativ
- Möglicher Lastausgleich: Master/Slaves
Iterativ (Caching) Server
- Lokaler Proxy für DNS-Anfragen
- Zwischenspeicherung von Inhalten für einen bestimmten Zeitraum (Soft-State mit TTL)
- Wenn die Daten nicht im Cache vorhanden sind, wird die Anfrage rekursiv bearbeitet
Resolver
- Software auf den Rechnern der Kunden (Teil des Betriebssystems)
- Windows-* und *nix: Stub-Resolver
- Delegieren die Anfrage an den lokalen Server
- Nur rekursive Anfragen, keine Unterstützung für iterative Anfragen
Zusätzlich zu den unterschiedlichen Servern dazu wie die Kette zwischen den Servern aufgebaut ist nochmal im Detail erklären
Welche Sicherheitsziele werden bei DNS erfüllt und welche werden nicht erfüllt ganz genau erklären wodurch oder wodurch nicht
Bedrohungen sind Denial of Service, Data Authenticity/Integrity
Erfüllt wird die Verfügbarkeit
Was ist DNSSEC und wie ist die gesamte Trust-Chain so aufgebaut, wo kommen die Schlüssel her und was bringt das alles in Bezug auf die Sicherheitsziele
Reihe von Internetstandards um Sicherheitsmechanismen zur Gewährleistung der Authentizität und Integrität der Daten erweitern.
RRSets (Gruppen von RRs) werden mit dem privaten Schlüssel der autorisierenden Stellen signiert
- Öffentliche Schlüssel (DNSKEYs) werden über DNS veröffentlicht
- Die Schlüssel der Unterzonen werden von den Eltern authentifiziert (entsprechend der Zonenhierarchie) und so verankerte Vertrauensketten aufgebaut
- Nur der Signierschlüssel der Root-Zone (KSK) wird benötigt (manuelle Verteilung), um eine vollständige Vertrauenshierarchie zu schaffen (theoretisch)
Was bringt das?
Ende-zu-Ende-Authentifizierung der Herkunft und Integrität von Zonendaten
- Erkennung von Datenverfälschung und Spoofing
Brute Force Cache Poisoning erklären
- A sendet viele Anfragen für die Ziel-Domain an den lokalen DNS-Server von O.
- A sendet viele gefälschte Antworten mit IP und Port vom Authentifizierungsserver der Zieldomäne und errät die Transaktions-ID für eine der rekursiven Anfragen vom lokalen Caching-Server an den Authentifizierungsserver (2^16 x 2^16 = 2^32 ~ 4 Milliarden mögliche Kombinationen)
- O fordert Daten über die Ziel-Domain an
- Lokaler Caching-Server antwortet mit gefälschten Daten
(A) 1,2 —> |O´s lokaler DNS Server | <–3 —>4 (O)
Wo muss der Angreifer ansetzen und was muss er genau erraten beim Simple Poisioning und Brite Force Cache Poisoning
(ID + Port) ?
Brute Force: er muss für eine angefragt id 2 hoch 32 cobinationen
Was gibt es für Möglichkeiten das Poisioning abzusichern
PRNG BIND9, TSIG Einträge wie die aussehen usw.
Dann als bessere Absicherung Split-Split DNS im Detail erklären (auch aufschreiben auf Papier, wo ist was für ein Server und was bringt das letztendlich)
Ziel: Vermeidung von Cache Poisoning durch externe Rechner
Die Idee: Aufteilung der Funktionen des Namensdienstes
- Namensauflösung (Nachschlagen von DNS-Informationen)
- Domäneninformationen (Auth-Dienst der lokalen DNS-Informationen)
Interner Server
- Führt Namensauflösung durch
- Führt iterative Abfragen bei entfernten DNS-Servern durch
- Befindet sich hinter einer Firewall und nimmt nur Anfragen aus dem lokalen LAN entgegen
Externer Server
- Autoritärer Server der Domäne
- Nimmt Fernanfragen an, akzeptiert aber keine Fernaktualisierungen
DNS – welche schutzziele erfüllt das
(keine?) Verfügbarkeit
Welchen weg nimmt die Anfrage, welche Schutzziele und Ressourcen sind bei einem Angriff gefährdet
Wo ist das Bottleneck wenn der Root Server die Anfrage komplett beantworten würde (rekursiv)
-> Memory Depletion, da er den State Zwischenspeichern muss.
Male eine Abbildung
inklusive “Victim”, “local DNS-Server”, mehrere “DNS-Server” und “Attacker” aufgezeichnet