Araştırmacı Kyber Kuantum Sonrası Anahtar Kapsülleme Mekanizması’nda (KEM) Güvenlik Açığı Buldu


Bir güvenlik araştırmacısı, NIST tarafından kuantum sonrası şifreleme standardı olarak benimsenme sürecinde olan Kyber anahtar kapsülleme mekanizmasında (KEM) sömürülebilir bir zamanlama sızıntısı keşfetti.

PQShield’dan Antoon Purnal bulgularını bir blog yazısında ve sosyal medyada detaylandırdı ve sorunun Kyber ekibinin yardımıyla çözüldüğünü kaydetti. Sorun, NIST kuantum sonrası anahtar kapsülleme standardı olarak benimsenme sürecinde olan Modül Kafes Tabanlı Anahtar Kapsülleme Mekanizmasının (ML-KEM) referans uygulamasında tespit edildi.

Clang Derleyicisi Yan Kanal Güvenlik Açığı Sunuyor

Purnal, “Uygulama güvenliğinin önemli bir parçası, hassas bilgiler çıkarmak için kriptografik hesaplamaların fiziksel yan etkilerinden yararlanan yan kanal saldırılarına karşı dirençtir” diye yazdı.

Yan kanal saldırılarına karşı güvenlik sağlamak için, kriptografik algoritmaların “saldırganın gözlemlenebilir etkisinin, işledikleri sırlara bağlı olmayacağı” şekilde uygulanması gerektiğini yazdı. ML-KEM referans uygulamasında “neredeyse tüm kriptografik dağıtım senaryolarında gözlemlenebilen belirli bir yan kanalla ilgileniyoruz: zaman.”

Güvenlik açığı, bir derleyicinin “yetenekli uygulayıcı tarafından alınan önlemleri” sessizce geri alma sürecinde kodu optimize etmesiyle ortaya çıkabilir.

Purnal’ın analizinde, Clang derleyicisinin güvenlik açığına sahip gizli bağımlı bir dal yaydığı tespit edildi. poly_frommsg Expand_secure uygulamasına karşılık gelen, hem anahtar kapsüllemede hem de kapsüllemede ihtiyaç duyulan ML-KEM referans kodunun işlevi.

“Dekapsülasyonda poly_frommsg bir kez kullanılır. Kapsül ayırma işleminin tamamı 100.000’den fazla döngü gerektirir. Elbette bu tek dalın yarattığı zamanlama farkı önemli olamayacak kadar küçük?” Purnal retorik bir tavırla sordu.

“…gelişmiş yerel saldırganlar, yüksek çözünürlüklü önbellek saldırıları gerçekleştirebilir, hangi dalların alındığını öğrenmek için dal tahmincisini hedefleyebilir veya zamanlama farkını artırmak için kütüphaneyi yavaşlatabilir” diye yanıtladı. “Yani ihtiyatlı yaklaşım yama yapmaktır.”

Kapsülün tamamen açılması için gereken süreyi ölçmenin “bir saldırganın anahtarı bir araya getirmesi için yeterli olduğunu” söyledi.

Purnal, GitHub’da ML-KEM 512 gizli şifreleme anahtarının kurtarılmasında zamanlama güvenlik açığının rolünü gösteren “clangover” adlı bir demo yayınladı. “Demo, yazarın dizüstü bilgisayarında 10 dakikadan kısa bir sürede başarıyla sonlandırılıyor” diye yazdı.

Kuantum Sonrası Kritik Bir Anahtar Güvenlik Açığı

Purnal, tüm derleyicilerin, seçeneklerin ve platformların etkilenmediğini, ancak “belirli bir ikili program etkilenirse güvenlik etkisinin kritik olabileceğini” belirtti. Bu nedenle muhafazakar yaklaşım, bu konuyu ciddiye almak ve kriptografi sağlayıcınızdan yamalar almaktır.”

Referans uygulaması, ilgili koşullu taşımanın ayrı bir dosyada bir fonksiyon olarak uygulanmasıyla yamalandı. “Bu değişiklik, Clang’ın koşul bayrağının ikili yapısını tanımasını ve dolayısıyla optimizasyonu uygulamasını engelliyor” dedi.

“Bunun, referans uygulamasını temel alan ancak poly_frommsg işlevini kelimesi kelimesine kullanmayan diğer kitaplıkların şimdi veya gelecekte saldırıya açık olabileceği ihtimalini ortadan kaldırmadığını belirtmek önemlidir” diye tamamladı.



Source link