Skip to content

BarraCUDA: Edge GPUs do Leak DNN Weights

Correlation electromagnetic analysis, NVIDIA Jetson edge GPU'larında çalışan gerçek convolutional neural network'lerin floating-point weight'lerini ve bias'larını kurtarır.

Mechanism

Note

Model weight'leri değerli IP'dir ve bir edge cihazda smartcard tarzı bir secure element yerine GPU üzerinde işlenirler — dolayısıyla çip hesaplama yaparken çipin electromagnetic (EM) emanation'larında belirirler. BarraCUDA'nın istismar ettiği değişmez nokta şu: bir convolution layer'ı, her w_i'nin sabit gizli bir weight ve her m_i'nin saldırganca bilinen bir input değeri olduğu acc += w_i * m_i formundaki bir multiply-accumulate partial sum dizisi olarak hesaplanır. Secret data path'e bir (ya da birkaç) weight'lik dilimler hâlinde girdiği için klasik Correlation Electromagnetic Analysis (CEMA) uygulanabilir: saldırgan w_i için bir değer hipotezi kurar, bir Hamming-weight ya da Hamming-distance modeli altında w_i * m_i'nin (ya da çalışan accumulator'ın) leakage'ını tahmin eder ve o tahmini, çok sayıda rastgele input m_i üzerinden ölçülen EM trace'lerine karşı korele eder. Korelasyonu maksimize eden hipotez gerçek weight'tir. Bir GPU son derece paralel, gürültülü bir ortamda çok sayıda thread çalıştırsa da, yeterince trace ortalamak weight başına sinyali kurtarır — bir AES key'ini byte byte kıran aynı divide-and-conquer ilkesi, bir DNN'e weight weight uygulanmış hâli.

Walkthrough

Hedef, bir Jetson edge board üzerinde NVIDIA'nın closed-source TensorRT inference framework'ü (fp16x2 half-precision kernel'ler) altında çalışan bir CNN'dir. Saldırgan input'ları kontrol eder ve fiziksel EM-probe erişimine sahiptir.

  1. EM probe yerleştir — Jetson Nano'nun (Tegra X1, Maxwell, tek SM) GPU paketinin üzerine — ve seçilmiş input'lar üzerinde inference tetikle.

  2. Rastgele input'larla çok sayıda trace topla. Her trace, taze rastgele bir input görüntüsü m ile yapılan bir inference'tır; secret weight'ler trace'ler boyunca sabittir.

  3. Weight başına CEMA çalıştır. Bir hedef weight w_i için aday değerleri sırala, HW/HD modelleri altında partial-sum ara değerinin leakage'ını tahmin et ve trace setine karşı korele et. Tepe yapan aday weight'tir.

  4. Network'te yürü. Layer'ın weight'lerini ve bias'ını kurtar, artık bilinen activation'ları ileri yay ve layer layer tekrarla.

acc = 0
for i in tap:                 # one convolution output element
    acc += w_i * m_i          # w_i secret (target), m_i attacker-known
# CEMA: argmax_w  corr( EM_trace ,  leak_model(w * m_i) )
Raporlanan sonuçlar
Devices:   NVIDIA Jetson Nano (Tegra X1, Maxwell, 1 SM); Jetson Orin Nano
Framework: NVIDIA TensorRT (closed-source, fp16x2 half-precision)
Method:    Correlation EM Analysis (CEMA), Hamming-weight / Hamming-distance
Leak:      per-convolution weights AND biases of real-world CNNs
Scale:     on the order of millions of traces (weights need fewer than
           biases); large campaigns collected ~15M traces over ~10 days

Warning

Bu, fiziksel, profiled tarzı bir saldırıdır: GPU'ya EM-probe yakınlığı ve seçilmiş input'larla çok sayıda inference sürme yeteneği gerektirir. Remote / yalnızca software bir exploit değildir. TensorRT kernel'lerinin half-precision floating-point düzeni leakage modelini şekillendirir.

Mitigation

Model weight'lerini hardware düzeyinde secret olarak ele al: fiziksel shielding ve probe-mesafe kontrolleri; inference data path'inde masking/blinding ya da noise enjeksiyonu; weight başına korelasyonu kırmak için hesaplama sırasını/scheduling'i rastgeleleştirme; saldırganca seçilmiş input'larla yüksek hacimli tekrarlı inference'ı rate-limit'le ya da tespit et. Kavramsal olarak, crypto'nun power/EM analysis'ine karşı kullanılan aynı masking/hiding karşı önlemleri DNN inference'a da uygulanır.

References