サイドチャネル分析攻撃
Reading time: 7 minutes
tip
AWSハッキングを学び、実践する:HackTricks Training AWS Red Team Expert (ARTE)
GCPハッキングを学び、実践する:HackTricks Training GCP Red Team Expert (GRTE)
Azureハッキングを学び、実践する:
HackTricks Training Azure Red Team Expert (AzRTE)
HackTricksをサポートする
- サブスクリプションプランを確認してください!
- **💬 Discordグループまたはテレグラムグループに参加するか、Twitter 🐦 @hacktricks_liveをフォローしてください。
- HackTricksおよびHackTricks CloudのGitHubリポジトリにPRを提出してハッキングトリックを共有してください。
サイドチャネル攻撃は、内部状態と相関のある物理的またはマイクロアーキテクチャの「漏洩」を観察することによって秘密を回復しますが、デバイスの論理インターフェースの一部ではありません。例としては、スマートカードが消費する瞬時の電流を測定することから、ネットワーク上でのCPUの電力管理効果を悪用することまで多岐にわたります。
主な漏洩チャネル
チャネル | 典型的なターゲット | 計測機器 |
---|---|---|
電力消費 | スマートカード、IoT MCU、FPGA | オシロスコープ + シャント抵抗/HSプローブ (例: CW503) |
電磁場 (EM) | CPU、RFID、AESアクセラレーター | Hフィールドプローブ + LNA、ChipWhisperer/RTL-SDR |
実行時間 / キャッシュ | デスクトップ & クラウドCPU | 高精度タイマー (rdtsc/rdtscp)、リモート飛行時間 |
音響 / 機械的 | キーボード、3Dプリンター、リレー | MEMSマイクロフォン、レーザー振動計 |
光学 & 熱 | LED、レーザープリンター、DRAM | フォトダイオード / 高速カメラ、IRカメラ |
故障誘発 | ASIC/MCU暗号 | クロック/電圧グリッチ、EMFI、レーザー注入 |
電力分析
シンプル電力分析 (SPA)
単一のトレースを観察し、ピーク/谷を操作 (例: DES Sボックス) に直接関連付けます。
# 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)
N > 1 000 トレースを取得し、キー バイト k
を仮定し、HW/HD モデルを計算して漏洩と相関させます。
import numpy as np
corr = np.corrcoef(leakage_model(k), traces[:,sample])
CPAは最先端の技術ですが、機械学習のバリアント(MLA、深層学習SCA)がASCAD-v2(2023)などの競技会で支配的になっています。
電磁分析 (EMA)
近接場EMプローブ(500 MHz–3 GHz)は、シャントを挿入せずに電力分析と同じ情報を漏洩します。2024年の研究では、スペクトル相関と低コストのRTL-SDRフロントエンドを使用して、>10 cmの距離からSTM32のキー回復が実証されました。
タイミングおよびマイクロアーキテクチャ攻撃
現代のCPUは共有リソースを通じて秘密を漏洩します:
- Hertzbleed (2022) – DVFS周波数スケーリングがハミング重みと相関し、リモートでEdDSAキーを抽出可能にします。
- Downfall / Gather Data Sampling (Intel, 2023) – 一時的実行を使用して、SMTスレッド間でAVX-gatherデータを読み取ります。
- Zenbleed (AMD, 2023) & Inception (AMD, 2023) – 投機的ベクトル誤予測がクロスドメインでレジスタを漏洩します。
音響および光学攻撃
- 2024年の「iLeakKeys」は、スマートフォンのマイクを介してZoomでラップトップのキーストロークを95%の精度で回復することを示しました。
- 高速フォトダイオードはDDR4アクティビティLEDをキャプチャし、AESラウンドキーを1分未満で再構築します(BlackHat 2023)。
フォルトインジェクションおよび差分フォルト分析 (DFA)
フォルトとサイドチャネル漏洩を組み合わせることで、キー検索をショートカットします(例:1トレースAES DFA)。最近のホビー向け価格のツール:
- ChipSHOUTER & PicoEMP – サブ1 nsの電磁パルスグリッチ。
- GlitchKit-R5 (2025) – RISC-V SoCをサポートするオープンソースのクロック/電圧グリッチプラットフォーム。
典型的な攻撃ワークフロー
- 漏洩チャネルとマウントポイントを特定する(VCCピン、デカップリングキャップ、近接場スポット)。
- トリガーを挿入する(GPIOまたはパターンベース)。
- 適切なサンプリング/フィルターで>1 kトレースを収集する。
- 前処理(アライメント、平均除去、LP/HPフィルター、ウェーブレット、PCA)。
- 統計的またはMLキー回復(CPA、MIA、DL-SCA)。
- 外れ値を検証し、反復する。
防御および強化
- 定数時間実装およびメモリハードアルゴリズム。
- マスキング/シャッフル – 秘密をランダムなシェアに分割;第一階の抵抗はTVLAによって認証されています。
- 隠蔽 – チップ上の電圧レギュレーター、ランダム化されたクロック、デュアルレールロジック、EMシールド。
- フォルト検出 – 冗長計算、しきい値署名。
- 運用 – 暗号カーネルでDVFS/ターボを無効にし、SMTを隔離し、マルチテナントクラウドでの共存を禁止します。
ツールおよびフレームワーク
- ChipWhisperer-Husky (2024) – 500 MS/sスコープ + Cortex-Mトリガー;上記のPython API。
- Riscure Inspector & FI – 商用、自動漏洩評価(TVLA-2.0)をサポート。
- scaaml – TensorFlowベースの深層学習SCAライブラリ(v1.2 – 2025)。
- pyecsca – ANSSIオープンソースECC SCAフレームワーク。
参考文献
tip
AWSハッキングを学び、実践する:HackTricks Training AWS Red Team Expert (ARTE)
GCPハッキングを学び、実践する:HackTricks Training GCP Red Team Expert (GRTE)
Azureハッキングを学び、実践する:
HackTricks Training Azure Red Team Expert (AzRTE)
HackTricksをサポートする
- サブスクリプションプランを確認してください!
- **💬 Discordグループまたはテレグラムグループに参加するか、Twitter 🐦 @hacktricks_liveをフォローしてください。
- HackTricksおよびHackTricks CloudのGitHubリポジトリにPRを提出してハッキングトリックを共有してください。