mirror of
https://github.com/HackTricks-wiki/hacktricks.git
synced 2025-10-10 18:36:50 +00:00
Translated ['src/todo/hardware-hacking/side_channel_analysis.md'] to de
This commit is contained in:
parent
84bb3bd788
commit
ce1b91de03
@ -2,10 +2,109 @@
|
||||
|
||||
{{#include ../../banners/hacktricks-training.md}}
|
||||
|
||||
Side Channel Analysis Attacks beziehen sich darauf, Informationen von einem Gerät oder einer Entität durch einen anderen Kanal oder eine andere Quelle zu bestimmen, die einen indirekten Einfluss darauf hat und aus der Informationen extrahiert werden können. Dies lässt sich besser mit einem Beispiel erklären:
|
||||
Side-Channel-Angriffe erholen Geheimnisse, indem sie physikalische oder mikroarchitektonische "Lecks" beobachten, die *korreliert* mit dem internen Zustand sind, aber *nicht* Teil der logischen Schnittstelle des Geräts sind. Beispiele reichen von der Messung des momentanen Stroms, der von einer Smartcard gezogen wird, bis hin zum Missbrauch von CPU-Leistungsmanagementeffekten über ein Netzwerk.
|
||||
|
||||
Die Analyse der Vibrationen in Glasscheiben, die sich in der Nähe der Schallquelle befinden, aber die Schallquelle ist nicht zugänglich. Die Vibrationen im Glas werden von der Schallquelle beeinflusst und wenn sie überwacht und analysiert werden, kann der Schall decodiert und interpretiert werden.
|
||||
---
|
||||
|
||||
## Hauptleckkanäle
|
||||
|
||||
| Kanal | Typisches Ziel | Instrumentierung |
|
||||
|-------|----------------|------------------|
|
||||
| Stromverbrauch | Smartcards, IoT-Mikrocontroller, FPGAs | Oszilloskop + Shunt-Widerstand/HS-Sonde (z.B. CW503) |
|
||||
| Elektromagnetisches Feld (EM) | CPUs, RFID, AES-Beschleuniger | H-Feld-Sonde + LNA, ChipWhisperer/RTL-SDR |
|
||||
| Ausführungszeit / Caches | Desktop- & Cloud-CPUs | Hochpräzise Timer (rdtsc/rdtscp), Remote-Zeitmessung |
|
||||
| Akustisch / mechanisch | Tastaturen, 3D-Drucker, Relais | MEMS-Mikrofon, Laser-Vibrometer |
|
||||
| Optisch & thermisch | LEDs, Laserdrucker, DRAM | Photodiode / Hochgeschwindigkeitskamera, IR-Kamera |
|
||||
| Fehlerinduziert | ASIC/MCU-Kryptos | Takt-/Spannungsstörung, EMFI, Laserinjektion |
|
||||
|
||||
---
|
||||
|
||||
## Leistungsanalyse
|
||||
|
||||
### Einfache Leistungsanalyse (SPA)
|
||||
Beobachten Sie eine *einzelne* Spur und assoziieren Sie direkt Spitzen/Täler mit Operationen (z.B. DES S-Boxen).
|
||||
```python
|
||||
# ChipWhisperer-husky example – capture one AES trace
|
||||
from chipwhisperer.capture.api.programmers import STMLink
|
||||
from chipwhisperer.capture import CWSession
|
||||
cw = CWSession(project='aes')
|
||||
trig = cw.scope.trig
|
||||
cw.connect(cw.capture.scopes[0])
|
||||
cw.capture.init()
|
||||
trace = cw.capture.capture_trace()
|
||||
print(trace.wave) # numpy array of power samples
|
||||
```
|
||||
### Differential/Correlation Power Analysis (DPA/CPA)
|
||||
Erwerbe *N > 1 000* Spuren, hypothesiere den Schlüsselbyte `k`, berechne das HW/HD-Modell und korreliere mit dem Leak.
|
||||
```python
|
||||
import numpy as np
|
||||
corr = np.corrcoef(leakage_model(k), traces[:,sample])
|
||||
```
|
||||
CPA bleibt auf dem neuesten Stand, aber Varianten des maschinellen Lernens (MLA, Deep-Learning SCA) dominieren jetzt Wettbewerbe wie ASCAD-v2 (2023).
|
||||
|
||||
---
|
||||
|
||||
## Elektromagnetische Analyse (EMA)
|
||||
Nahfeld-EM-Sonden (500 MHz–3 GHz) lecken identische Informationen wie die Leistungsanalyse *ohne* das Einfügen von Shunts. Forschungen aus 2024 zeigten die Schlüsselwiederherstellung in **>10 cm** Entfernung von einem STM32 unter Verwendung von Spektralkorrelation und kostengünstigen RTL-SDR-Frontends.
|
||||
|
||||
---
|
||||
|
||||
## Timing- und Mikroarchitekturangriffe
|
||||
Moderne CPUs lecken Geheimnisse durch gemeinsame Ressourcen:
|
||||
* **Hertzbleed (2022)** – DVFS-Frequenzskalierung korreliert mit Hamming-Gewicht, was die *remote* Extraktion von EdDSA-Schlüsseln ermöglicht.
|
||||
* **Downfall / Gather Data Sampling (Intel, 2023)** – Transient-Execution zum Lesen von AVX-Gather-Daten über SMT-Threads.
|
||||
* **Zenbleed (AMD, 2023) & Inception (AMD, 2023)** – spekulative Vektorfehlvorhersage leckt Register über Domänen hinweg.
|
||||
|
||||
Für eine umfassende Behandlung von Spectre-Klassenproblemen siehe {{#ref}}
|
||||
../../cpu-microarchitecture/microarchitectural-attacks.md
|
||||
{{#endref}}
|
||||
|
||||
---
|
||||
|
||||
## Akustische & Optische Angriffe
|
||||
* 2024 "iLeakKeys" zeigte eine Genauigkeit von 95 %, um Laptop-Tastatureingaben von einem **Smartphone-Mikrofon über Zoom** mit einem CNN-Klassifikator wiederherzustellen.
|
||||
* Hochgeschwindigkeits-Photodioden erfassen DDR4-Aktivitäts-LED und rekonstruieren AES-Rundenschlüssel innerhalb von <1 Minute (BlackHat 2023).
|
||||
|
||||
---
|
||||
|
||||
## Fehlerinjektion & Differentielle Fehleranalyse (DFA)
|
||||
Die Kombination von Fehlern mit Seitenkanalleckagen verkürzt die Schlüsselsuche (z. B. 1-Trac AES DFA). Neueste, für Hobbyisten erschwingliche Werkzeuge:
|
||||
* **ChipSHOUTER & PicoEMP** – Sub-1 ns elektromagnetische Pulsstörungen.
|
||||
* **GlitchKit-R5 (2025)** – Open-Source-Plattform für Takt-/Spannungsstörungen, die RISC-V SoCs unterstützt.
|
||||
|
||||
---
|
||||
|
||||
## Typischer Angriffsablauf
|
||||
1. Identifizieren Sie den Leckkanal & den Montagepunkt (VCC-Pin, Entkopplungskondensator, Nahfeldstelle).
|
||||
2. Trigger einfügen (GPIO oder musterbasiert).
|
||||
3. >1 k Traces mit ordnungsgemäßer Abtastung/Filtern sammeln.
|
||||
4. Vorverarbeiten (Ausrichtung, Mittelwertentfernung, LP/HP-Filter, Wavelet, PCA).
|
||||
5. Statistische oder ML-Schlüsselwiederherstellung (CPA, MIA, DL-SCA).
|
||||
6. Validieren und Iteration bei Ausreißern.
|
||||
|
||||
---
|
||||
|
||||
## Abwehrmaßnahmen & Härtung
|
||||
* **Konstantzeit**-Implementierungen & speicherharte Algorithmen.
|
||||
* **Maskierung/Mischen** – Geheimnisse in zufällige Anteile aufteilen; Erstordnungswiderstand zertifiziert durch TVLA.
|
||||
* **Verbergen** – On-Chip-Spannungsregler, randomisierte Taktung, Dual-Rail-Logik, EM-Schutz.
|
||||
* **Fehlererkennung** – redundante Berechnung, Schwellenwertsignaturen.
|
||||
* **Betrieblich** – DVFS/Turbo in Kryptokernen deaktivieren, SMT isolieren, Co-Location in Multi-Tenant-Clouds verbieten.
|
||||
|
||||
---
|
||||
|
||||
## Werkzeuge & Frameworks
|
||||
* **ChipWhisperer-Husky** (2024) – 500 MS/s Oszilloskop + Cortex-M-Trigger; Python-API wie oben.
|
||||
* **Riscure Inspector & FI** – kommerziell, unterstützt automatisierte Leckagebewertung (TVLA-2.0).
|
||||
* **scaaml** – TensorFlow-basierte Deep-Learning-SCA-Bibliothek (v1.2 – 2025).
|
||||
* **pyecsca** – ANSSI Open-Source ECC SCA-Framework.
|
||||
|
||||
---
|
||||
|
||||
## Referenzen
|
||||
|
||||
* [ChipWhisperer Dokumentation](https://chipwhisperer.readthedocs.io/en/latest/)
|
||||
* [Hertzbleed Angriffs-Papier](https://www.hertzbleed.com/)
|
||||
|
||||
Diese Angriffe sind sehr beliebt, wenn es um das Leaken von Daten wie privaten Schlüsseln oder das Finden von Operationen in den Prozessoren geht. Ein elektronischer Schaltkreis hat viele Kanäle, aus denen ständig Informationen geleakt werden. Überwachung und Analyse können nützlich sein, um viele Informationen über den Schaltkreis und dessen interne Abläufe offenzulegen.
|
||||
|
||||
{{#include ../../banners/hacktricks-training.md}}
|
||||
|
Loading…
x
Reference in New Issue
Block a user