C++ dilinin yaratıcısı, güvenli programlama dilleri hakkında bir NSA raporunu eleştirdi

bjarne stroustrup

Bjarne Stroustrup, NSA tavsiyesine yanıt veriyor ve C++ sınıflandırmasıyla çelişiyor

Bjarne Stroustrup, C++ dilinin yaratıcısı, NSA raporunun bulgularına itirazlar yayınladı, kuruluşların bellek yönetimini geliştiriciye kaydıran C ve C++ gibi programlama dillerini kullanmaktan, bellek yönetimini otomatik olarak sağlayan C#, Go, Java, Ruby, Rust ve Swift gibi diller lehine hareket etmesi önerildi. derleme zamanında bellek güvenlik kontrolleri gerçekleştirin.

Stroustrup'a göre, NSA raporunda belirtilen güvenli diller C++'dan gerçekten üstün değil sizin açınızdan önemli uygulamalarda.

NSA, kuruluşlara kullandıkları programlama dillerinde stratejik bir değişiklik yapmayı düşünmelerini tavsiye ediyor. bellek açısından güvenli bir dile C/C++ gibi çok az veya hiç doğal bellek koruması sağlamaz
mümkün olduğunda

özellikle, oTemel C++ YönergeleriSon yıllarda geliştirilen, güvenli programlama için kapak yöntemleri ve türler ve kaynaklarla güvenli çalışmayı sağlayan araçların kullanımını reçete edin. Ancak, bu kadar güçlü güvenlik garantilerine ihtiyaç duymayan geliştiriciler, eski geliştirme yöntemlerini kullanmaya devam edebilir.

Stroustrup, iyi bir statik analizcinin C++ Çekirdek Yönergeleri ile uyumlu C++ kodu için gerekli güvenlik garantilerini sağlayabilir yeni güvenli programlama dillerine geçmekten çok daha düşük bir maliyetle.

Örneğin, Temel Yönergelerin çoğu Microsoft Visual Studio Static Analyzer ve Memory-Safe Profile'da zaten uygulanmaktadır. Önerilerden bazıları, Clang düzenli statik analiz cihazında da dikkate alınır.

NSA raporu, yalnızca hafıza sorunlarına odaklandığı için de eleştirildi., güvenliği ve güvenilirliği etkileyen diğer birçok programlama dili sorununu ele alınmadan bırakır.

Ne yazık ki, C++ kullanımının büyük bir kısmı uzak geçmişte kaldı ve güvenliği önemli ölçüde artırmanın yolları da dahil olmak üzere iyileştirmeler göz ardı edildi. Şimdi, ilgilendiğim kullanımlar açısından bu "güvenli" dillerden herhangi birini C++'tan üstün görseydim, C/C++'ın sonunu kötü bir şey olarak düşünmezdim, ama durum bu değil .

Bjarne Stroustrup, NSA yayınının yazılımı koruma kavramını belleği korumakla sınırladığı konusunda hemfikir değil. Aslında, bu yön, birkaç büyük şirketin (Microsoft, Amazon vb.) tanıdığı yazılımın güvenlik garantileri için Rust dili lehine C veya C++ 'dan vazgeçilmesini öneren tüm yayınların ortak paydasıdır.

"'Güvenliğin' tek bir tanımı yoktur ve programlama stilleri, destek kitaplıkları ve statik analizden yararlanarak çeşitli güvenlik türlerine ulaşabiliriz" diyor. Bu nedenle Bjarne Stroustrup, yazılım güvenliği açısından C++'dan ne elde edilebileceğinin, diğer şeylerin yanı sıra, geliştiriciye ve özellikle dilin sunduğu araçlar hakkındaki bilgisine, derleyicideki ustalığına vb. bağlı olduğunu öne sürer.

Stroustrup, güvenliği, kodlama stili, kitaplıklar ve statik analizörlerin bir kombinasyonu yoluyla çeşitli yönlerine ulaşılabilen daha geniş bir kavram olarak görür. Türler ve kaynaklarla çalışmanın güvenliğini sağlayan kuralların dahil edilmesini kontrol etmek için kod ek açıklamalarının ve derleyici seçeneklerinin kullanılması önerilir.

Performansın güvenlikten daha önemli olduğu uygulamalarda bu yaklaşım, güvenliği sağlayan araçların yalnızca ihtiyaç duyulduğu yerde seçici olarak kullanılmasına olanak tanır. Önce aralık kontrolü ve başlatma kurallarının sınırlandırılması ve ardından kodun daha katı gereksinimlere kademeli olarak uyarlanması gibi güvenlik geliştirme araçları da kısmen uygulanabilir.

Son olarak, C++ yaratıcısının yayımı hakkında daha fazla bilgi edinmek istiyorsanız, ayrıntılara şu adresten bakabilirsiniz: aşağıdaki bağlantı.


Yorumunuzu bırakın

E-posta hesabınız yayınlanmayacak. Gerekli alanlar ile işaretlenmiştir *

*

*

  1. Verilerden sorumlu: AB Internet Networks 2008 SL
  2. Verilerin amacı: Kontrol SPAM, yorum yönetimi.
  3. Meşruiyet: Onayınız
  4. Verilerin iletilmesi: Veriler, yasal zorunluluk dışında üçüncü kişilere iletilmeyecektir.
  5. Veri depolama: Occentus Networks (AB) tarafından barındırılan veritabanı
  6. Haklar: Bilgilerinizi istediğiniz zaman sınırlayabilir, kurtarabilir ve silebilirsiniz.