Towards Practical Fabrication Stage Attacks Using Interrupt-Resilient Hardware Trojans¶
Deterministik olarak ateşlemek için interrupt/context-switch izlemeyi kullanan bir hardware-trojan tasarımı (IRT'ler); bir RISC-V CPU'da fabrication aşamasındaki bir MMU exception-suppression trojan'ını güvenilir şekilde sömürülebilir bir privilege-escalation backdoor'u haline getirir.
Mechanism¶
Invariant
Bir CPU hardware trojan'ı, bir trigger'ı (gate netlist'indeki bir koşul) bir payload'a (kötü niyetli bir microarchitectural eylem) tam doğru cycle'da bağlamalıdır. Bu makalenin tanımladığı zor problem: gerçek bir CPU'da, non-deterministik context-switching/interrupt olayları, trigger sinyali ile hedeflenen CPU olayı (örn. belirli bir memory erişimi) arasında race condition'lar yaratır, bu yüzden naif trojan'lar yanlış ateşler. Bir trojan'ın ihtiyaç duyduğu invariant, interrupt'lara rağmen trigger ve payload'ın deterministik hizalanması (alignment)'dır. Interrupt-Resilient Trojan (IRT)'lar bunu interrupt/context state'inden haberdar olarak başarır, böylece payload yalnızca amaçlanan anda eylem yapar. O güvenilirlik çözülünce, gösterilen payload, MMU'nun faulting bir store için raise edeceği exception'ı bastırır — yani privilege hakları CPU'nun mevcut privilege state'iyle eşleşmeyen bir adrese yapılan store, trap etmek yerine sessizce başarılı olur ve ISA'nın altından memory protection'ı kırar.
Walkthrough¶
Public HOST 2024 makalesinden (arXiv:2403.10659), açık CVA6 RISC-V core'unda (28nm, tape-out'a hazır) değerlendirildi:
- Fabrication/layout aşamasında küçük bir trojan ekle (makale, analiz edilen build üzerinde reportedly ~20 ps ortalama eklenen gecikme ve korunmuş layout bütünlüğü bildirir — kesin rakam pending confirmation).
- IRT, interrupt/context state'ini izler ki trigger'ı context switch'lere rağmen hedeflenen memory erişimiyle deterministik olarak hizalansın.
- Payload: tetiklendiğinde, privilege hakları mevcut privilege state'iyle çelişen hatalı bir store için üretilen MMU exception'ını bastır — illegal write'a izin verilir.
- Uçtan uca: unprivileged bir process normalde-illegal bir store yapar (örn. kernel'e ait belleğe), exception bastırılır ve write gerçekleşir — silikona gömülü deterministik bir local privilege-escalation primitive'i.
# Conceptual effect at the ISA boundary:
user mode: store [kernel_addr], value # would normally #PageFault
trojan: suppress MMU exception # write silently succeeds -> LPE
Warning
Bu, open-source tasarımları olan yayınlanmış akademik araştırmadır; onu operasyonel bir tarif değil, fabrication aşaması supply-chain riskinin savunma/eğitsel bir modeli olarak ele alın. Yenilik güvenilirliktir (interrupt resilience); bu tür trojan'ları pratik kılan da budur.
Detection¶
- Post-silicon / netlist trust verification, logic-testing ve beklenmeyen exception-suppression mantığını hedefleyen side-channel fingerprinting.
- Store'larda privilege'ı yeniden doğrulayan architectural self-check'ler, ISA-altı bir trojan tarafından bypass edilir, bu yüzden tespit hardware katmanına ulaşmalıdır.
Mitigation¶
- Güvenilir fabrication ve split-manufacturing; fabrication aşaması eklemelerini yakalamak için trusted netlist'e karşı layout/GDSII verification.
- Yedekli/bağımsız privilege check'leri ve runtime integrity monitor'leri, tek bir bastırılmış exception'ın değerini azaltır.
See also¶
- Power side-channel analysis of the CVA6 RISC-V core at RTL — aynı CVA6 RISC-V core üzerinde çalışan ilgili side-channel araştırması.
- Recovering information on CVA6 RISC-V via a baremetal microarchitectural attack — aynı core'a yönelik baremetal microarchitectural saldırı.
- TPM-GENIE: interposer attacks against the Trusted Platform Module — donanım/supply-chain altyapı güvenine yönelik bir başka fiziksel/interposer saldırı.