Güvenlik araştırmacısı, Nintendo Switch 2 için yalnızca yazılımla çalışan kısmi bir jailbreak gösterdi ve “userland” erişimi elde etti. Araştırmacıya göre bu erişim “homebrew çalıştırmamıza, Switch 2 oyunlarını tersine mühendislikle incelememize ve modlamamıza, kayıt dosyalarını konsoldan yedeklememize ve MMIO üzerinden Switch 2’nin çoğu çevresel birimine erişmemize” olanak tanıyor.
İstismar, orijinal Switch sürümü SmileBasic 4’e dayanıyor. Söz konusu “tethered” yani bağlı hack, ayrıcalıklı sistem erişimini mümkün kılan bir node.js paketi çalıştırmak için aynı ağdaki macOS veya Linux bir bilgisayara erişim gerektiriyor.
Araştırmacı Sammy Hajhamid, SmileBasic’in dil yorumlayıcısını araştırmak için OpenAI’ın Codex’ini kullandığını yazıyor. Sisteme USB komutu gönderebilen ve HDMI üzerinden sonuç görebilen, bir Bluetooth ışık anahtarı çevirici cihazla güç döngüsü yapabilen özel bir test düzeneği kurdu. Yaklaşık iki haftalık yoğun çalışmanın ardından düzeneğin, SmileBasic’te diziden öğe kaldırılırken oluşan 32 bitlik bir tamsayı taşması keşfettiğini belirtiyor. Bu hata bir dizi işaretçisine erişim sağlıyor ve sistem belleğinin bölümlerini okuma-yazma imkanı veriyor.
Bundan sonra Hajhamid, konsolun çekirdek işlevlerine daha ayrıcalıklı erişim sağlayabilecek dahili sysmodüllerini araştırmaya başladı. Nihayetinde konsolun FileSystem servisleri modülünde bir arabellek taşması bulduğunu ve bu taşmanın önbelleğe alınmış bir veri işaretçisini açığa çıkardığını yazıyor. Bu durum keyfi okuma ve yazma ayrıcalığı sağlıyor. Ardından Hajhamid, sahte bir dosya sistemi süreci üzerinden “ayrıcalıklı dosya sistemi işlemleri” yürütebildiğini ve nihayetinde yerel kod çalıştırma elde ettiğini ifade ediyor.
Çevrimiçi adıyla Pepsipu olan Hajhamid, istismarın kanıtı olarak Mario Kart World’de bir dizi modifiye karakter gösterdi. Diğer geliştiriciler de istismar edilmiş donanımda çalışan basit demolar ve geliştirme araçları üzerinde çalışıyor.
Userland içinde tam Vulkan GPU çalışıyor.
Hâlâ mevcut “userland” istismarı, Switch 2 homebrew geliştiricilerini nispeten küçük bir kum havuzunda tutuyor ve donanımın tam kontrolünü sağlayacak çekirdek düzeyindeki erişimin oldukça gerisinde kalıyor.
Geni geri şişeye koymak
SmileBasic adının size tanıdık gelmesinin nedeni, aynı yazılımın 3DS sürümünün 2016’da sözde smilehax istismarına yol açmış olması. Nintendo, o hack kamuoyuna çıktıktan kısa süre sonra SmileBasic’i 3DS eShop’tan kaldırdı. SmileBasic 4 de benzer şekilde dünya genelinde Switch eShop’tan kaldırıldı; bu haberin yayınlandığı itibarıyla benzer şekilde çalışabilecek Japon demo sürümü hâlâ erişilebilir durumda.
Bu kaldırma, daha önce SmileBasic’i satın almamış veya indirmemiş Switch 2 kullanıcılarına istismarın yayılmasını yavaşlatmaya yardımcı olabilir. Ancak Switch 2 hack topluluğundaki diğer isimler, başka oyunları kullanan benzer istismarların sinyallerini veriyor. Mevcut istismar en yeni Switch 2 firmware sürümü 23.0.1 üzerinde çalışsa da bu güvenlik açığının yakın firmware güncellemelerinde kapatılması bekleniyor; bu güncellemeler Nintendo hizmetlerine ve gelecek oyun sürümlerine devamlı erişim için gerekli olacak.
Böylece bu istismar Nintendo için kesinlikle istenmeyen bir haber olsa da, 2018’de ortaya çıkan ve “yama yapılamaz” olarak nitelenen orijinal Switch istismarı kadar sorunlu değil. O hack, gelecek sistemlerin etkilenmemesini sağlamak için tamamen donanım yeniden tasarımını gerektirmişti.
Yine de konsolun çıkışından sadece bir yıl sonra Switch 2 hackerlarının bu noktaya gelmiş olması, Nintendo’nun sistem yazılımının genel dayanıklılığı için iyi bir işaret değil. Konsol hackerları ile sistemlerini en derin noktalarına kadar korumaya çalışan donanım üreticileri arasındaki bir başka bitmek bilmeyen döngü için hazırlanın.