"Gofetch" adlı yeni bir yan kanal saldırısı Apple M1, M2 ve M3 işlemcilerini etkiler ve CPU'nun önbelleğindeki verilerden gizli kriptografik anahtarları çalmak için kullanılabilir.
Saldırı, modern Apple CPU'larında bulunan veri belleğine bağlı ön fileterleri (DMP'ler) kullanarak sabit zamanlı kriptografik uygulamaları hedefliyor. Bu, CPU'nun önbelleğinden OpenSSL Diffie-Hellman, Go RSA, Crystals Kyber ve Dilithium dahil olmak üzere çeşitli algoritmalar için özel şifreleme anahtarlarını yeniden oluşturmasına izin verir.
Gofetch, 5 Aralık 2023'te bulgularını Apple'a bildiren ABD'deki çeşitli üniversitelerden yedi araştırmacıdan oluşan bir ekip tarafından geliştirildi.
Bununla birlikte, bu donanım tabanlı bir güvenlik açığı olduğundan, etkilenen CPU'larda düzeltmenin bir yolu yoktur. Yazılım düzeltmelerini kullanarak kusurları azaltmak mümkün olsa da, bu CPU'ların kriptografik işlevlerinde bir performansa neden olur.
Gofetch saldırısı, kodu yürütürken bilgisayar performansını artırmak için tasarlanmış bir CPU özelliği olan veriye bağımlı ön facchers'ı hedefler.
Bir ön yarmacı, verileri alırken belleğe önceki erişimlerle eğitilir ve bilgisayarın bir sonraki hangi verilere ihtiyaç duyacağını tahmin etmesini sağlar. Bu veriler daha sonra belleğin daha yavaş kısımlarından CPU önbelleği gibi daha hızlı bellek bölgelerine getirilir.
Tahmin doğruysa, veriler artık hızlı bir şekilde kullanılabilir ve bilgisayarın performansını artırır. Tahmin yanlışsa, CPU her zamanki gibi doğru verileri ister.
Gofetch saldırısı, veri belleğine bağımlı bir ön yarma (DMP) olarak adlandırılan daha yeni bir ön yarmacıya odaklanır. Bu ön yarmacı, önceki bellek erişimi konusunda da eğitilebilir, ancak önbelleğe neyin önceden yazılması gerektiğini belirlemek için bellekteki veri değerlerini de inceleyebilir.
DMP, Apple Silikon Cipsleri ve Intel'in 13. nesil Raptor Gölü CPU'larında mevcuttur. Ancak araştırmacılar, Intel'in uygulamasının daha kısıtlayıcı olduğunu ve saldırıyı önlediğini söylüyor.
Saldırı, hassas veri sızıntılarını önlemek için bir güvenlik önlemi olan girdiye (sabit zaman) bakılmaksızın yürütülmesi aynı miktarda zaman alan şifreleme uygulamalarına odaklanıyor.
Özellikle, araştırmacılar Apple'ın DMP sistemini uygulamasında sürekli zamanlı iyi uygulamaları ihlal eden bir kusur buldular.
"Apple M Serisi CPU'larda DMP'leri tersine çevirdik ve DMP'nin" bir işaretçi "gibi görünen" görünen bellekten yüklenen verileri aktive ettiğini (ve ayrıştırmaya çalışmayı) bulduk.
Diyerek şöyle devam etti: "Bu, verilerin ve bellek erişim modellerinin karıştırılmasını yasaklayan sabit zamanlı programlama paradigmasının gerekliliğini açıkça ihlal ediyor."
Saldırganlar, ön resmeter verilere neden olan özel girdiler hazırlayabilir, bu da gizli anahtarın belirli bitleri doğru bir şekilde tahmin edilirse işaretçi olarak görünecektir.
Daha sonra, DMP'nin etkin olup olmadığını gözlemlerler, Gizli Anahtarın Bitlerini Yavaş Yavaş Çıkarırlar. Sürecin yeterli tekrarıyla, tüm gizli kriptografik anahtar yeniden yapılandırılabilir.
Araştırmacılar, M1 işlemcilerinin bu şemaya duyarlı olduğunu doğruladılar ve M2 ve M3'ün benzer ön getirme davranışına sahip oldukları düşünüldüğünde, muhtemelen savunmasızdır.
Gofetch saldırısı hakkında daha fazla ayrıntı, araştırmacılar tarafından yayınlanan teknik makalede bulunabilir ve kavram kanıtı daha sonraki bir tarihte piyasaya sürülür.
Ne yazık ki, zayıflık doğrudan Apple CPU'lara inşa edilen veri belleğine bağlı ön respetçinin uygulanmasının bir parçası olduğundan, saldırıyı bir donanım düzeltmesi ile azaltmanın bir yolu yoktur.
Araştırmacılar, M3 gibi bazı CPU'larda DMP'yi devre dışı bırakmanın mümkün olduğunu ve Gofetch'in güvendiği ön getirme davranışını kaldırmanın mümkün olduğunu söylüyor. Ancak, bu M1 ve M2'de mümkün değildir.
Geliştiriciler için diğer savunma önlemleri, saldırganın DMP seviyesindeki girdisinin sonuçlarını gizleyen girdi körleştirme ve DMP aktivasyon maskelemesini içerir.
Apple, bir yazılım yaması olarak macOS'a hafifletmeler getirebilirken, yan kanal saldırıları için önceki yazılım düzeltmesinde gördüğümüz gibi performans isabetlerine neden olur.
Bir Apple kullanıcısı olarak, güvenli bilgi işlem alışkanlıkları uygulamaktan başka yapabileceğiniz çok şey yoktur. Bu, işletim sisteminizi ve yazılımınızı düzenli olarak güncellemek ve yalnızca kötü amaçlı yazılım enfeksiyonlarını önlemek için resmi kanallardan ve saygın kaynaklardan yazılım yüklemek anlamına gelir.
Gofetch saldırısı sömürü için fiziksel erişim gerektirmez, bu nedenle saldırgan hedef makinede kod çalıştırabilirse, örneğin kötü amaçlı yazılım enfeksiyonu yoluyla uzaktan yürütülebilir.
BleepingComputer, GoFetch tehlikesi hakkında bir yorum talep etmek ve güvenlik güncellemelerini sunmayı planlayıp planlamadığını, ancak bir sözcü bir hafifletmeyi özetleyen bir geliştirici sayfasını paylaşmakla sınırlıydı.
Yeni Zenhammer Bellek Saldırısı Etkileri AMD ZEN CPU'lar
Opera, DMA güncellemesinden sonra IOS, Android'de AB kullanıcılarında büyük bir sıçrama görüyor
Bu sınıf "A" yenilenmiş MacBook Air 315 $ karşılığında sizin olabilir
Oracle, MacOS 14.4 güncellemesinin Apple CPU'larında Java'yı kırdığı konusunda uyarıyor
Microsoft, Windows'ta 1024 bit RSA anahtarlarının kullanımdan kaldırıldığını duyurdu
Kaynak: Bleeping Computer