Xbox 360 reset glitch hack'e yakından bakıyoruz

Katılım
12 Haziran 2011
Mesajlar
14.298
Makaleler
3
Çözümler
6
Yer
Nebuchadnezzar
Daha fazla  
Meslek
Judge Dredd
XBOX 360 yazılımsal olarak güvenli bir konsol olduğu için cihaza donanımsal yönden saldırmak gerekiyordu.

İşlemci ROM'dan kod çalıştırmaya başlar (1BL) ve ardından RSA imzalı ve RC4 şifreli kod parçacığını (CB) NAND'dan yüklemeye başlar.

CB, işlemci güvenlik motorunu devreye sokar. Güvenlik motoru DRAM belleğin gerçek zamanlı olarak şifrelenmesi ve sürekli yığın kontrolünün yapılmasından sorumludur.

Bulgularımıza göre AES128 şifreleme ve güçlü yığın dökümü (Toeplitz ?) kullanılmakta. Şifreleme her açılışta fark göstermekte zira en azından bu kaynaklara göre oluşturulmakta:

  • Bütün elektronik sigortaların yığını
  • Zaman tabanlı sayaç değeri
  • İşlemciye dahil edilmiş donanımsal bir rastgele rakam oluşturucudan gelecek rastgele bir değer. Fat cihazlarda bu rastgele rakam oluşturucu elektronik olarak devre dışı bırakılabilir fakat değerin restgeleliği CB tarafından kontrol ediliyor -sistem gerçekten rastgele görünen bir rakamı bekliyor

CB daha sonra işi DRAM'i devreye sokmak olan basit bir bytecode tabanlı yazılım motorunu çalıştırıyor. Bir sonraki adımda CB sıradaki bootloader'ı (CD) NAND'dan yüklüyor ve çalıştırıyor.

CD de temel kernel'ı (çekirdek) NAND'dan yükleyip yamalıyor ve çalıştırıyor.

Bu kernel, ufak bir ayrıcalıklı kod (Hypervisor) içeriyor ve konsol çalışırken sadece bu kodun imzalanmamış kod çalıştırmaya yetkisi var. 4532/4548 kernel sürümlerinde çok kritik bir hata tespit edildi ve bilinen bütün 360 hacklerinin imzasız kod çalıştırabilmesi için bu kernel'a sahip olması ve bu açığı kullanması gerekiyordu. Şu an piyasada olan 360'larda ise, CD bu iki kernel'in hash (Yığın dökümü) değerlerine sahip ve eğer bu kernel'i yüklemeye çalışırsanız önyükleme işlemi anında durduruluyor.

Hypervisor, açıkları kontrol etmek için görece küçük bir parça koddan oluşuyor ve görünüşe göre yeni sürümleri imzasız kod çalıştırmak için hiçbir açık barındırmıyor.

Öte yandan tmbinc'in söylediğine göre XBOX 360, zamanlama saldırısı (Timing Attack) ve eşeleme (glitching) gibi belirli donanımsal saldırılara karşı koyacak şekilde tasarlanmamış. Buradaki eşeleme, elektronik olarak işlemci hatalarını tetikleme işleminden oluşuyor. İşte bu yöntem ile XBO 360'da imzasız kod çalıştırıldı.

Birkaç kelimeyle "Reset Glitch"

İşlemciye ufak reset sinyalleri göndermenin işlemciyi resetlemediğini fakat bunun yerine kodun çalıma biçimini değiştirdiğini fark ettik. Bu yöntemin, ön yükleyicinin memcmp özelliğinin her zaman "değişiklik yok" demesini sağlamada etkili olduğunu gördük. memcmp, bir sonraki ön yükleyicinin SHA yığınının sistemde kayıtlı olanla aynı olup olmadığını kontrol ederek sadece aynı ise çalışmasına izin veren bir özellik. Böylece NAND'daki yığın kontrolüyle uyuşmayan bir ön yükleyici koyabiliyor, bir öncekini hatalı gibi gösteriyor ve bu ön yükleyicinin çalışmasını sağlıyoruz. Böylece artık sistemde imzasız kod çalışabiliyor.

Devamı: Xbox-Scene News: The Xbox 360 reset glitch hack - New Homebrew Hack!
 
Uyarı! Bu konu 13 yıl önce açıldı.
Muhtemelen daha fazla tartışma gerekli değildir ki bu durumda yeni bir konu başlatmayı öneririz. Eğer yine de cevabınızın gerekli olduğunu düşünüyorsanız buna rağmen cevap verebilirsiniz.

Yeni konular

Yeni mesajlar

Geri
Yukarı