Google ve Microsoft Rust Language'ın Daha İyi Güvenliğine Sığınıyor

Google ve Microsoft, Rust Dilinin Daha İyi Güvenliğine Sığınıyor

Fortanix 2016 yılında piyasaya sürüldüğünde şirket bir karar verdi: Güvenlik gücünden ve performansından yararlanmak için bir yıllık Rust'un programlama dilini kullanmaya karar verdi.

Yedi yıl sonra Fortanix'in Rust'a olan bağlılığının başarılı olduğu kanıtlandı. Başkan yardımcısı Jethro Beekman, şirketin, kullanıcı verileri için güvenli alanların kullanımına olanak tanıyan ve Rust derleyicisinin bazı güvenlik açıkları sınıflarından, özellikle de bellek güvenliği sorunlarından kaçınma yeteneğinden yararlanan Intel Yazılım Koruma Uzantıları (SGX) için destek oluşturduğunu söylüyor. teknoloji ve CISO'nun veri güvenliği firması.

"Bu potansiyeli gerçekten gören bazı erken benimseyenler vardı ve biraz kapsamlı araştırma yaptıktan ve bununla ilgili pratik deneyim kazandıktan sonra, temelde her şeyi yapmaya karar verdik" diyor. "Araçlar ve derleyici gerçekten hatalardan kaçınmanıza yardımcı oluyor."

1.0 sürümünden sekiz yıl sonra Rust dili ve geliştirme platformları, geliştiriciler ve şirketler arasında popülerlik kazanmaya devam ediyor güvenli koda odaklanıldı. Rust çok daha düşük bir değere sahipken C veya C++'dan daha TIOBE derecesi, dil her geçen yıl önemli miktarda ek kullanıcı görüyor. Rust'un ayrıca kararlı takipçileri var: Geçtiğimiz yıl programcıların yalnızca %12'si bu teknolojiyi kullanmış olsa da, bu geliştiricilerin yaklaşık %85'i dili kullanmaya devam etmek istiyor ve bu da onu "en beğenilen" programlama dili yapıyor. Stack Overflow "2023 Geliştirici Anketi."

Rust programlama dilinin gelişimini gösteren grafikler

Rust'ın benimsenmesi katlanarak artmaya devam ediyor. Kaynak: Lib.rs (https://lib.rs/stats)

Microsoft'un işletme ve işletim sistemi güvenliğinden sorumlu başkan yardımcısı David Weston, Mart ayında BlueHat İsrail'de, örneğin, hata sınıflarını ortadan kaldırma çabasının bir parçası olarak, Microsoft'un çekirdeğin bazı kısımlarını Rust kullanarak yeniden yazdığını söyledi. Şirket, yazı tipi ayrıştırmayı bir bellek güvenliği özelliğine dönüştürmek için Rust'ta DWriteCore'u oluşturdu ve şu anda grafik sürücüsü arayüzünün (GDI) bazı bölümlerini Rust'ta yazmaya yönelik deneyler üzerinde çalışıyor. Şirket, kodun ilk sürümlerinde %5 ila %15 oranında performans artışı gördü.

Weston, "Windows'ta Rust için tarama aşamasında olduğumuzu söyleyebilirim" dedi. sunumunun video kaydı. “Bir takım zinciriyle denemeler yapıyoruz; kod oluşturmaya bakıyoruz ve bunun Rust'u öğrenmenin maliyetine değip değmeyeceğini anlamaya çalışıyoruz."

Ancak Rust Vakfı'nın sponsorlarından biri olan Microsoft, bu dile kendini adamıştır. Weston, "Aslında çekirdekte Rust ile Windows önyüklemesi yapacaksınız" diyor.

Google, 1Password ve Diğerleri Yerleşik

Google ayrıca Rust'un büyük bir destekçisidir. Şirket, Android'deki bellek güvenliği açıklarının payındaki düşüşü C ve C++'dan Rust, Kotlin (işlevsel bir programlama dili) ve Java'ya geçişe bağlıyor. 2022'de arabellek taşmaları gibi bellek güvenliği açıkları artacak. Android'deki tüm güvenlik açıklarının yarısından azını oluşturuyor.

Google'ın Android programlama dilleri mühendislik direktörü ve Rust Vakfı'nın yönetim kurulu başkanı Lars Bergstrom, "Genellikle yeni C [veya] C++ kodu yazmayı düşündüğünüz her yerde Rust'u kullanmanızı öneririz" diyor. "Dolayısıyla Rust, temel sistemin ve bellek gibi kaynaklarının sıkı kontrolüne ihtiyaç duyduğunuz durumlarda genellikle iyi bir seçimdir."

Ulusal Güvenlik Ajansı ayrıca tavsiye eder geliştiricilerin güvenlik açısından kritik kodlar için C ve C++'a alternatifler araması, çünkü bu dillerin Geliştiricinin hata yapmayacağına çok fazla güveniyorum.

Fortanix, Rust'u kapsamlı bir şekilde kullanmaya kararlı olsa da diğer şirketler, dili kod tabanlarına nasıl dahil edecekleri konusunda daha taktiksel davranıyor. Kullanıcıların şifre depolarını korumak için sağlam güvenliğe ihtiyaç duyan şifre ve kimlik yönetimi firması 1Password, farklı işletim sistemlerindeki ön uç arayüz için diğer dilleri kullanarak, temel veri güvenliği bileşenleri için geliştirme platformu olarak Rust'u benimsedi. şirket bir blog yazısında belirtti.

Weston, Microsoft'un da benzer bir durumda olduğunu ve kod tabanının büyük bir kısmını Rust'ta yeniden yazmayacağını söyledi.

BlueHat İsrail konferansında katılımcılara şunları söyledi: "Size söylemekten nefret ediyorum - Rust hayranlarını tanıyorum - Windows'u Rust'ta yeniden yazmak muhtemelen yakın zamanda gerçekleşmeyecek." "Rust'u sevsek de yerel kodumuzu daha fazla korumayı da içeren bir stratejiye ihtiyacımız var."

Öğrenme Eğrisi O Kadar Dik Değil

İcra Direktörü Rebecca Rambul, Rust Vakfı'nın özellikle otomotiv, endüstriyel ve havacılık uygulamalarında gömülü ve bağlı cihaz firmaları tarafından büyük oranda benimsendiğini ve aynı zamanda başka bir yeni platform olan WebAssembly'de Web ve bulut uygulamaları oluşturduğunu söylüyor. Rust Vakfı'nın CEO'su.

"Bu tür kuruluşlar, büyük teknoloji kuruluşlarının dışında Rust'un potansiyelini gerçekten gören ilk kuruluşlar arasında yer aldı, yalnızca güvenlik nedeniyle değil, hız ve performans nedeniyle de" diyor. "Bellek güvenliği sayesinde bu seviyede bir güvenlik elde ediyorsunuz ancak performans açısından hiçbir şey kaybetmiyorsunuz."

Fortanix başladığında her programcının Rust'u öğrenmesi gerekiyordu. Yaygın görüş dilin öğrenilmesinin zor olduğu yönünde olsa da Rust öğrenen programcıların üçte ikisinden fazlası iki ay içinde bir projeye katkıda bulunabileceklerinden emin olduklarını söyledi. Google'ın şirket içi programcılara yönelik anketi.

Ankette ayrıca yeni programcıların Rust'u hızlı bir şekilde kavramasına rağmen derleyicinin birçok kişinin beklediğinden daha yavaş olmaya devam ettiği ortaya çıktı.

Güvenli kodlama eğitim firması Security Journey'de kıdemli güvenlik mühendisi olan Michael Erquitt, dilin bazı ayarlamalar gerektirdiğini kabul ediyor. Ayrıca programcıların dilden hangi işlev ve uygulamaların yararlanabileceği konusunda kendi anlayışlarını geliştirmeleri gerekir.

"Programlama dillerini ve araçlarını seçerken her zaman doğal olarak bazı ödünler vardır." Erquitt diyor. "Modern bir programlama dili olarak Rust, çok çeşitli projeler için kullanılabilir, ancak seçim sonuçta projenizin işlevsel/müşteri gereksinimlerini en iyi neyin karşılayacağına bağlıdır."

Zaman Damgası:

Den fazla karanlık okuma