Tehdit aktörleri, komut ekleme saldırılarında Windows sistemlerini hedeflemek için Rust standart kitaplığındaki bir güvenlik açığından yararlanabilir.
Şu şekilde izlendi: CVE-2024-24576Bu kusur, saldırganların işletim sisteminde beklenmedik ve potansiyel olarak kötü amaçlı komutlar yürütmesine olanak tanıyan işletim sistemi komut ve bağımsız değişken ekleme zayıflıklarından kaynaklanmaktadır.
GitHub, bu güvenlik açığını maksimum 10/10 CVSS taban puanıyla kritik önemde olarak değerlendirdi. Kimliği doğrulanmamış saldırganlar, düşük karmaşıklıktaki saldırılarda ve kullanıcı etkileşimi olmadan uzaktan yararlanabilirler.
Rust Güvenlik Yanıtı çalışma grubu, “Rust Güvenlik Yanıtı WG’ye, Rust standart kitaplığının, Windows’ta toplu dosyaları (bat ve cmd uzantılı) Komut API’sini kullanarak çağırırken bağımsız değişkenlerden gerektiği gibi kaçmadığı konusunda bilgilendirildi” dedi.
“Oluşturulan işleme iletilen bağımsız değişkenleri kontrol edebilen bir saldırgan, kaçışı atlayarak rastgele kabuk komutları yürütebilir. Windows’ta toplu dosyaları güvenilmeyen bağımsız değişkenlerle çağırıyorsanız bu güvenlik açığının ciddiyeti kritik öneme sahiptir. Başka hiçbir platform veya kullanım etkilenmez. “
Bir programın kodunun veya bağımlılıklarından birinin güvenilmeyen argümanlara sahip toplu dosyaları çağırması ve yürütmesi durumunda, Windows’taki 1.77.2’den önceki tüm Rust sürümleri etkilenir.
Rust güvenlik ekibi cmd.exe’nin karmaşıklığıyla uğraşırken önemli bir zorlukla karşılaştı çünkü her durumda tartışmalardan doğru şekilde kaçabilecek bir çözüm bulamadılar.
Sonuç olarak, kaçış kodunun sağlamlığını iyileştirmeleri ve Komut API’sini değiştirmeleri gerekiyordu. Komut API’si süreci oluştururken bağımsız değişkenden güvenli bir şekilde kaçamazsa InvalidInput hatası döndürür.
Rust Security Response WG, “Kaçış yöntemini kendiniz uygularsanız veya yalnızca güvenilir girişleri yönetirseniz, Windows’ta standart kitaplığın kaçış mantığını atlamak için CommandExt::raw_arg yöntemini de kullanabilirsiniz” diye ekledi.
Şubat ayında Beyaz Saray Ulusal Siber Direktör Ofisi (ONCD), teknoloji şirketlerini Rust gibi hafıza açısından güvenli programlama dillerini benimsemeye çağırdı. Nihai amaç, bellek güvenliği açıklarının sayısını en aza indirerek yazılım güvenliğini artırmaktır.