NCC Group'tan araştırmacılar
ARM TrustZone teknolojisinin, ana sistemden tamamen ayrı, ayrı bir özel işletim sistemi kullanarak ayrı bir sanal işlemci üzerinde çalışan, donanımdan yalıtılmış korumalı ortamlar oluşturmanıza olanak sağladığını hatırlayalım. TrustZone'un temel amacı, şifreleme anahtarları, biyometrik kimlik doğrulama, ödeme verileri ve diğer gizli bilgiler için işlemcilerin yalıtılmış şekilde yürütülmesini sağlamaktır. Ana işletim sistemi ile etkileşim, dağıtım arayüzü aracılığıyla dolaylı olarak gerçekleştirilir. Özel şifreleme anahtarları, donanımdan yalıtılmış bir anahtar deposunda saklanır; bu, doğru şekilde uygulandığında, temeldeki sistemin tehlikeye atılması durumunda bunların sızmasını önleyebilir.
Güvenlik açığı, eliptik eğri işleme algoritmasının uygulanmasındaki bir kusurdan kaynaklanıyor ve bu da veri işlemenin ilerleyişi hakkında bilgi sızıntısına yol açıyor. Araştırmacılar, donanımdan yalıtılmış bir ortamda bulunan özel anahtarların içeriğini kurtarmak için mevcut dolaylı sızıntıların kullanılmasına olanak tanıyan bir yan kanal saldırı tekniği geliştirdiler.
Sorunun ana nedeni, TrustZone'da ve ana sistemdeki hesaplamalar için ortak donanım bileşenlerinin ve önbelleğin paylaşılmasıdır - izolasyon, mantıksal ayırma düzeyinde, ancak ortak bilgi işlem birimleri kullanılarak ve şube hakkında hesaplama ve bilgi izleri kullanılarak gerçekleştirilir. adresler ortak işlemci önbelleğine depolanır. Önbelleğe alınan bilgilere erişim süresindeki değişiklikleri değerlendirmeye dayanan Prime+Probe yöntemini kullanarak, önbellekteki belirli modellerin varlığını kontrol ederek, dijital imza hesaplamalarıyla ilişkili veri akışlarını ve kod yürütme işaretlerini izlemek mümkündür. TrustZone oldukça yüksek doğrulukla.
Qualcomm yongalarındaki ECDSA anahtarlarını kullanarak dijital imza oluşturmak için çoğu zaman, her imza için değişmeyen bir başlatma vektörü kullanılarak bir döngüde çarpma işlemleri gerçekleştirilerek harcanır (
Qualcomm örneğinde, çarpma algoritmasında bu tür bilgilerin sızdırıldığı iki yer belirlendi: tablolarda arama işlemleri yapılırken ve "nonce" vektöründeki son bitin değerine dayalı koşullu veri alma kodunda. Qualcomm kodunun üçüncü taraf kanallardan bilgi sızıntısını önlemeye yönelik önlemler içermesine rağmen, geliştirilen saldırı yöntemi, bu önlemleri atlamanıza ve 256 bit ECDSA anahtarlarını kurtarmak için yeterli olan "nonce" değerinin birkaç bitini belirlemenize olanak tanır.
Kaynak: opennet.ru