Grundbausteine Flashcards
Was ist das grundlegende Prinzip eines Side Channel Angriffs?
Ein Side Channel Angriff nutzt unbeabsichtigte physikalische Informationslecks eines Systems aus. Statt direkter kryptographischer Angriffe werden Implementierungsdetails wie Timing, Stromverbrauch oder Cache-Verhalten analysiert.
Welche drei Hauptkategorien von Side Channel Angriffen gibt es?
- Timing-basierte Angriffe (Ausführungszeit analysieren)
- Power-Analysis Angriffe (Stromverbrauch messen)
- Cache-basierte Angriffe (Cache-Zugriffszeiten beobachten)
Was ist der fundamentale Unterschied zwischen Side Channel und Covert Channel?
Ein Side Channel wird unbeabsichtigt vom System preisgegeben und vom Angreifer passiv ausgenutzt. Ein Covert Channel wird aktiv vom Sender erzeugt, um gezielt mit dem Empfänger zu kommunizieren.
Welche Voraussetzungen braucht ein erfolgreicher Side Channel Angriff?
- Messbare physikalische Größe (Timing, Power etc.)
- Korrelation zwischen Messung und geheimer Information
- Ausreichende Messgenauigkeit
- Genügend Messwiederholungen für statistische Analyse
Warum sind statistische Methoden bei Side Channel Angriffen wichtig?
- Einzelne Messungen sind verrauscht
- Systematische Fehler müssen eliminiert werden
- Signifikante Korrelationen müssen erkannt werden
- Zufällige Effekte müssen von echten Signalen unterschieden werden
Wie läuft ein typischer Cache-basierter Side Channel Angriff ab?
- Cache-Zustand vorbereiten (flush/prime)
- Opfer ausführen lassen
- Cache-Zustand messen (reload/probe)
- Aus Timing-Unterschieden Rückschlüsse ziehen
Was sind die wichtigsten Unterschiede zwischen Flush+Reload und Prime+Probe?
Flush+Reload:
- Braucht shared memory
- Sehr präzise
- Nutzt clflush Instruktion
Prime+Probe:
- Funktioniert ohne shared memory
- Weniger präzise
- Nutzt Cache-Verdrängung
Welche CPU-Optimierungen können für Side Channel Angriffe ausgenutzt werden?
- Caching (unterschiedliche Zugriffszeiten)
- Branch Prediction (spekulative Ausführung)
- Out-of-Order Execution
- Simultaneous Multithreading (geteilte Ressourcen)
Was macht einen guten Side Channel aus?
- Hohe Signal-to-Noise Ratio
- Gute Messbarkeit
- Verlässliche Korrelation mit geheimer Information
- Schwer zu mitigieren
Wie lässt sich die Qualität eines Side Channels bewerten?
- Messreihen aufnehmen
- Statistische Tests durchführen (Korrelation, t-Test)
- Signal-to-Noise Ratio berechnen
- Erfolgsrate des Angriffs evaluieren
Warum sind Cache-Timing Angriffe besonders praktikabel?
- Präzise messbar durch CPU-Zeitstempel
- Keine spezielle Hardware nötig
- Funktioniert auch remote
- Schwer vollständig zu verhindern
Was sind die kritischen Komponenten eines Padding Oracle Angriffs?
- CBC Mode Verschlüsselung
- Padding-Validierung
- Unterscheidbare Fehlermeldungen
- Möglichkeit viele Anfragen zu senden
Wie kann man die Erfolgswahrscheinlichkeit eines Side Channel Angriffs erhöhen?
- Mehr Messungen durchführen
- Bessere Messmethoden verwenden
- Störfaktoren eliminieren
- Statistische Auswertung optimieren
Was sind typische Fehlerquellen bei Side Channel Angriffen?
- Unzureichende Messgenauigkeit
- Falsche statistische Annahmen
- Übersehene Störfaktoren
- Fehlende Synchronisation
Welche Rolle spielt das Systemverständnis bei Side Channel Angriffen?
Man muss verstehen:
1. Wie das System implementiert ist
2. Welche Operationen ausgeführt werden
3. Wo Information lecken könnte
4. Wie man Messungen interpretiert
Wie findet man neue Side Channels?
- System-Architektur analysieren
- Timing/Power-Verhalten untersuchen
- Datenabhängigkeiten identifizieren
- Unerwartetes Verhalten erforschen
Warum sind Template Attacks so effektiv?
- Nutzen vollständige Charakterisierung des Kanals
- Berücksichtigen Noise-Charakteristik
- Optimal im Sinne der Statistik
- Brauchen weniger Traces in der Angriffs-Phase
Was macht einen Side Channel Angriff praktisch durchführbar?
- Geringe Hardware-Anforderungen
- Realistische Angreiferposition
- Vertretbarer Zeitaufwand
- Beherrschbare Komplexität
Welche Rolle spielt die CPU-Architektur bei Side Channel Angriffen?
- Bestimmt verfügbare Side Channels
- Definiert Timing-Verhalten
- Ermöglicht/verhindert bestimmte Angriffe
- Beeinflusst Messgenauigkeit
Was sind die Grundprinzipien von Power Analysis Angriffen?
- Stromverbrauch korreliert mit Operationen
- Unterschiedliche Daten → unterschiedlicher Verbrauch
- Statistische Analyse über viele Messungen
- Präzise Messhardware nötig