deniz.in

Piyasalar

Hava durumu

Hava durumu yükleniyor

· kaynak Hacker News – Front Page (hnrss.org)

Foton destekli lazer hata enjeksiyonu, RP2350 üzerindeki kalıcı debug devre dışı bırakmayı aştı

Ledger Donjon, foton emisyon mikroskobisini kullanarak lazer atışlarını RP2350'nin DEBUGEN yazmacına yönlendirdi; kalıcı devre dışı bırakmaya rağmen güvenli debug erişimini yeniden açtı ve OTP belleğindeki bir sırrı okudu.

Foton destekli lazer hata enjeksiyonu, RP2350 üzerindeki kalıcı debug devre dışı bırakmayı aştı

Ledger Donjon'daki araştırmacılar, debug arayüzü kalıcı olarak devre dışı bırakılmış bir Raspberry Pi RP2350 mikrodenetleyicisinde, foton emisyon mikroskopisiyle lazer atışlarını tek bir kontrol yazmacına yönlendirerek güvenli debug erişimini geri kazandı. Bu erişimle ve yazılımın çalışma zamanı kilidini uygulamasından önce çipi durduran bir rescue reset'in ardından ekip, tek seferlik programlanabilir (OTP) bellekteki sırrı okudu — Raspberry Pi'nin RP2350 Hacking Challenge yarışması için belirlediği hedef buydu. Yazıya göre saldırı fiziksel erişim, yıkıcı hazırlık ve yaklaşık 250.000 dolarlık laboratuvar ekipmanı gerektiriyor.

Kalıcı sigortalar ve bunları geçersiz kılan yazmaç

RP2350, her işlemci soketinin açılışta Arm Cortex-M33 veya RISC-V Hazard3 çekirdeğinden birini seçtiği çift çekirdekli bir mikrodenetleyicidir. Güvenlik özellikleri arasında OTP'de saklanan anahtar parmak izleriyle doğrulanan imzalı secure boot, Secure ve Non-secure durumları arasındaki Armv8-M TrustZone ayrımı, kalıcı debug devre dışı bırakma ayarları ve glitch dedektörleri yer alıyor. OTP bitleri bir kez 0'dan 1'e döner ve asla geri dönmez; buradaki güvenlik açısından kritik alanlar artıklık taşır: kritik bayraklar sekiz ardışık satırda sekizde üç oylaması kullanır ve OTP kilit bitleri, Ledger Donjon'un alıntıladığı veri sayfasının belirttiği gibi çoğunluk oylamasıyla üç kat artıklıklıdır.

Debug'ın kalıcı CRIT1.DEBUG_DISABLE bayrağıyla sonsuza dek kapatılması amaçlanır. Bu bayrak ayarlandığında her iki çekirdeğin bellek erişim portu etkinleştirme sinyallerini sıfıra çeker — portları herhangi bir veri yolu erişimi yapamaz hale getirir — ve ayrıca fabrika testi JTAG arayüzü ile RISC-V debug modülünün erişim portunu devre dışı bırakır. Ancak zorlama yolunda bir geçersiz kılma mekanizması vardır: belleğe eşlenmiş DEBUGEN yazmacı, Secure yazılımın her çekirdeğin erişim portunu ve ayrıca onun üzerinden Secure işlemleri yeniden etkinleştirmesine izin verir; veri sayfası tüm bitlerinin ayarlanmasının DEBUG_DISABLE'ı tamamen geçersiz kıldığını belirtir. Beş bit önemlidir: her iki çekirdek için çekirdek başına etkinleştirme ve Secure izin bitleri, artı ek debug bileşenleri için bir MISC biti. OTP alanlarının aksine, veri sayfası DEBUGEN için herhangi bir artıklık, eşlik ya da çoğunluk oylaması belgelemiyor. İşte o tek yazmaç hedef haline geldi.

Tek bir flip-flop'a lazer doğrultmak

Yaygın lazer hata enjeksiyonları talimat atlamalarını hedefler; işlemci hattındaki neredeyse herhangi bir flip-flop'u bozmak benzer bir sonuç verir ve hassas alan, tarama yaklaşımı için yeterince geniştir. Tek bir yazmaç bitinin saklama hücresini vurmak çok daha zordur ve Ledger Donjon kör bir taramayı pratik bulmadı. Çözümleri foton emisyon mikroskopisi oldu: anahtarlamalı transistörler soluk yakın kızılötesi fotonlar yayar; bu yüzden araştırmacılar, Secure yazılımdan seçili DEBUGEN bitlerini sıkı bir döngüde toggle ederek o bitlerin durum değiştirdiği yerleri görüntüleyebildi. Emisyon haritası, izleyen lazer taramasını birkaç mikrometre çapında bir bölgeye indirgedi; yakındaki iki konuma atılan atışlar daha sonra yazmacı ayarlamak ve kalıcı devre dışı bırakmaya rağmen debugger erişimini Secure dünyasına geri döndürmek için yeterli oldu.

Debug erişiminden kurtarılan sırra

Yarışma kurulumu 128 bitlik bir sırrı OTP sayfa 48'de saklar. Kalıcı kilidi sayfayı Secure dünyadan okunabilir tutar ama Non-secure erişimi engeller; başlangıç yazılımı ise bir sonraki OTP resetine kadar her iki dünyayı da reddeden bir çalışma zamanı kilidi ekler. Ledger Donjon, satıcının yapılandırmasını kendi A4 cihazında yeniden oluşturdu: secure boot etkin (ki bu çipi Cortex-M33 çekirdekleriyle sınırlar), debug kalıcı olarak devre dışı, glitch dedektörleri maksimum hassasiyette ve sayfa 48 kilidi 0x3c3c3c olarak ayarlı. Secure debug'ı elde ettikten sonra ekip, çipin yazılım çalışma zamanı kilidini uygulamasından önce durması için bir rescue reset kullandı; böylece sayfa Secure'dan okunabilir kaldı ve sır okunabildi.

Buraya ulaşmak yıkıcıydı. Numune, yakın kızılötesi ışığın silisyum substrat üzerinden transistörlere ulaşabilmesi için arkadan dekapsüle edildi, Ledger Donjon'un açık kaynak test platformu Scaffold ile sürülen bir daughterboard'a monte edildi ve kurşun çerçevenin kaldırılmasının topraklama bağlantısını bozması nedeniyle bakır bir telle yeniden topraklandı.

Neden önemli

Kalıcı bir sigorta, onu okuyan mantık kadar güçlüdür. Raspberry Pi, OTP güvenlik alanlarını artıklık ve çoğunluk oylamasıyla sağlamlaştırdı; ancak sigortanın下游ünde artıklıksız bir debug etkinleştirme yazmacı bulunuyor ve onu tamamen geçersiz kılabilir; Secure yazılım için belgelenmiş bir mekanizmanın fiziksel hata enjeksiyonuyla erişilebilir olduğu ortaya çıktı. Mikrodenetleyici tehdit modelleri açısından bu çalışma, foton emisyonu destekli hedeflemenin tek bitlik yazmaç hatalarını kuramsal değil pratik kıldığını da gösteriyor. Eşik hâlâ yüksek — fiziksel erişim, tahrip edilmiş bir numune ve yaklaşık çeyrek milyon dolarlık ekipman — dolayısıyla bu, uzaktan ya da fırsatçı saldırganlar için bir saldırı değil. Ama saldırganları arasında fonlanan laboratuvarlar bulunan ürünler için yalnızca kalıcı debug devre dışı bırakma mutlak bir sınır olarak görülmemeli. Raspberry Pi tam da bu incelemeyi RP2350 Hacking Challenges ile davet etti: ilki Ağustos'tan Aralık 2024'e kadar sürdü ve burada test edilen A4 revizyonu daha önceki bulgulara yönelik düzeltmeleri zaten içeriyor; bu da sonucu sertleştirilmiş parçaya karşı yeni bir sonuç yapıyor.

  • #raspberry-pi
  • #hardware-security
  • #microcontroller
  • #laser-fault-injection
  • #embedded