SoC Güvenliğini Doğrulamak için Fuzzing. Doğrulamada Yenilik

Kaynak Düğüm: 1853830

Rastgeleleştirmenin donanım doğrulaması ne ise, fuzzing de yazılım doğrulamasıdır. Bulanıklaştırma yaklaşımı donanım güvenliği testini iyileştirebilir mi? Paul Cunningham (GM, Cadence'de Doğrulama), Raúl Camposano (Silikon Katalizörü, girişimci, eski Synopsys CTO'su) ve ben araştırma fikirleri serimize devam ediyoruz. Her zaman olduğu gibi geri bildirimlerinizi bekliyoruz.

SoC Güvenliğini Doğrulamak için Fuzzing

Yenilik

Bu ayın seçimi SoC Güvenlik Doğrulaması için HyperFuzzing. Yazarlar bu makaleyi ICCAD 2020'de sunmuşlardır. Yazarlar IIT Kanpur'dandır.

Bu, özellikle modern SoC tasarımına uyarlanmış, bulanıklaştırmaya yönelik ilgi çekici bir yaklaşımdır. Üzerine inşa edilir hiper-özellik Dinamik simülasyonları kontrol etmek. Bu hiper özellikler, davranışların aşırı olmasına neden olur. iz kümeleri, güvenlik kontrolüne çok uygun bir yaklaşım. Yazarlar örnek olarak bilgi akışı kontrollerini (ayrıcalıklı veriler A'dan B'ye sızamaz) ve müdahale etmeme kontrollerini (karşıt eylemler hesaplama akışına müdahale etmemelidir) sunmaktadır. Daha sonra güvenlik, simülasyon izleri demetlerinin kurcalamayla ve kurcalama olmadan karşılaştırılmasıyla kontrol edilir.

Bu yaklaşımda değişiklik yapmak, güvenilmeyen kaynaklara yönelik farklı türdeki güvenlik açıklarını modelleyebilir. Ürün yazılımı talimatlarını rastgele hale getirerek, bir bileşenden NoC'ye talimatlar yazın veya bir bellekteki bit geçişlerini yapın. Yazarlar ayrıca birkaç yeni kapsam ölçüsü önermektedir. Bunlar, önceki kurcalama çalıştırmalarından en çok etkilenen durumlarda, kurcalamaya yönelik yinelemelere rehberlik etmek üzere tasarlanmıştır.

Test durumları küçük ama temsili bir SoC'dir (ayrıntılar GitHub) kriptografik bloklara karşı ürün yazılımı testleri yürütmek, müdahale etmeme ve diğer güvenlik açıklarını kontrol etmek. Ayrıca veri bloğu kontrolleriyle güvenli önyüklemeyi çalıştırırlar. Bloğun ECC korumasını içerdiği durumlar dışında, kripto bloklarında birden fazla güvenlik ihlali buldular.

Paul'ün görüşü

Güvenlik doğrulaması çok önemli bir konu ve burada hem akademide hem de endüstride devam eden pek çok çalışma var. Bu makale, güvenlik kusurlarını göstermede hem ölçeklenebilir hem de etkili yenilikçi bir çözüm oluşturmak için simülasyon izleme setleri üzerinde rastgele mutasyona dayalı kapsamı "hiper özellikler" ile güzel bir şekilde bir araya getiriyor.

Bazı güvenlik özellikleri resmi olarak yalnızca bir dizi simülasyon izi üzerinden tanımlanabilir. Örneğin, "müdahale etmeme", bir saldırganın bir tasarımdaki belirli korunan hesaplamalara müdahale edemeyeceği anlamına gelir. Girişimi göstermek için, bir izde bazı saldırgan eylemlerinin varlığı dışında giriş uyaranı açısından aynı olan iki izi karşılaştırmanız gerekir. Saldırıya uğrayan izdeki korunan hesaplamalardan herhangi biri altın izdekilerden farklıysa müdahale var demektir.

Yazarlar, birden çok iz üzerindeki iddialar için kendi özel dil tarzlarını yaratırlar ve bunu, müdahale etmeme ve gizlilik için güvenlik özelliklerini formüle etmek için kullanırlar. Simülasyonlara rastgele müdahale etmek ve kurcalanmış ve kurcalanmamış simülasyonlar arasında güvenlik özelliklerini kontrol etmek için özel bir akış oluştururlar. Rastgele müdahale algoritmaları ayrıca, güvenlik açıklarını daha etkili bir şekilde bulma konusunda rehberlik edecek zarif, kapsama dayalı bir öğrenme buluşsal yöntemine sahiptir.

Çoklu simülasyonlar üzerinden iddialarda bulunma fikri çok güçlüdür. SystemVerilog'u bu tür iddiaları destekleyecek şekilde temiz bir şekilde genişletmenin mümkün olup olmayacağını merak ediyorum. Bu, ticari simülasyon ve resmi araçlara yönelik bazı ilgi çekici yerel uzantıların kapısını açabilir. Başka bir olasılık, yeni Taşınabilir Stimulus Standardını (PSS), birden fazla oluşturulmuş testi kapsayan iddiaları içerecek şekilde genişletmek olabilir.

Bu makale kolay ve keyifli bir okumadır, ancak sonuçlar hakkında daha fazla ayrıntı öğrenmek isterim. Yazarlar, çözümlerinin açık kaynaklı SoC test senaryosunda güvenlik açıkları bulduğunu iddia ediyor ancak bu açıkların ne olduğuna veya yaklaşımlarının literatürde aynı delikleri bulmak için uygulanabilecek diğer yaklaşımlarla nasıl karşılaştırıldığına dair hiçbir ayrıntı yok.

Raúl'un görüşü

Buna öncelikle teknolojik olgunluk açısından bakacağım. Genel olarak bu fikri beğendim; bir tasarımda güvenliğin derecelendirilmesine yönelik çok ilginç bir yaklaşım. Bununla birlikte, her tasarım, tasarımcıların yeni bir iddia dilinde tohum testleri, kurcalamalar ve güvenlik özelliklerini sağlamasını gerektirir. Bana göre bu, şimdilik yaklaşımı akademik alana sıkı sıkıya bağlıyor. Tezler ve makaleler için harika, henüz ticari uygulamaya geçiş yapabilecek bir şeye yakın değil.

İkinci mücadelede yatırımcı şapkamı takacağım. Güvenlik önemli bir konudur, buna şüphe yok. Ancak zaten bildiğimiz birkaç alanın dışında; örneğin havacılık, savunma, ödeme sistemleri ve işlemciler/sunucular. Çoğu OEM ve bileşen üreticisi için bu hala varoluşsal bir sorun değil. Genel olarak bekleniyorsa bir kutuyu işaretlemeye hazırdırlar. Ancak yalnızca maliyet veya pazara sunma süresi üzerindeki etki küçükse. Çünkü müşterileri genellikle güvenlik için daha fazla ödeme yapmazlar. Bu da çoğu pazarda güvenliğin hâlâ donanımsal güven kökleri ve kullanımı kolay uygulamalar gibi anahtar teslim IP'ye bağımlı kalmasına neden oluyor. Bu yollardan biriyle paketlenen çözümlere yatırım yapılabilir, aksi takdirde pek fazla yatırım yapılabilir.

Benim görüşüm

Paul ve Raúl önerebileceğim şeylerin çoğunu ele aldılar. Paul'un, en azından hiper özelliklerle deney yapmayı teşvik etmek için SVA'yı genişletme fikrini seviyorum. Bu, yeni bir ilginç test sınıfının açılmasını ve sonunda yeni birleştirilmiş doğrulama yöntemlerinin ortaya çıkmasını sağlamalıdır.

Bu gönderiyi şu yolla paylaş: Kaynak: https://semiwiki.com/eda/299391-fuzzing-to-validate-soc-security-innovation-in-verification/

Zaman Damgası:

Den fazla yarı wiki