CVE-2022-36114
Açıklama
Cargo, rust programlama dili için bir paket yöneticisidir. Cargo'nun sıkıştırılmış arşivlerden çıkarılan veri miktarını sınırlamadığı tespit edilmiştir. Bir saldırgan, alternatif bir kayıt defterine, kendi boyutundan çok daha fazla veri çıkaran özel olarak hazırlanmış bir paket ("zip bomb" olarak da bilinir) yükleyerek paketi indirmek için Cargo kullanan makinedeki disk alanını tüketebilir. Tasarım gereği Cargo'nun, derleme betikleri ve prosedürel makrolar nedeniyle derleme zamanında kod yürütülmesine izin verdiği unutulmamalıdır. Bu bildirimdeki güvenlik açıkları, olası zararların bir kısmının takip edilmesi daha zor bir şekilde gerçekleştirilmesine olanak tanır. Saldırılardan korunmak istiyorsanız bağımlılıklarınıza güvenmeye devam etmelisiniz, çünkü aynı saldırıları derleme betikleri ve prosedürel makrolarla gerçekleştirmek mümkündür. Güvenlik açığı Cargo'nun tüm sürümlerinde mevcuttur. 22 Eylül'de yayınlanacak olan Rust 1.64 sürümü bunun için bir düzeltme içerecektir. Güvenlik açığı, kötü amaçlı derleme betiklerinin veya prosedürel makroların yapabileceklerini başarmanın sadece daha sınırlı bir yolu olduğu için, güvenlik düzeltmesini geriye dönük olarak uygulayan Rust ara sürümleri yayınlamamaya karar verdik. Kendi araç zincirini oluşturan kişiler için Rust 1.63.0 yamaları wg-security-response deposunda mevcuttur. Alternatif kayıt defteri kullanıcılarının, projelerine yalnızca güvenilir bağımlılıkları dahil ederek hangi paketleri indirdikleri konusunda dikkatli olmalarını öneriyoruz. Lütfen bu açıklar giderilse bile, tasarım gereği Cargo'nun derleme betikleri ve prosedürel makrolar sayesinde derleme zamanında rastgele kod yürütülmesine izin verdiğini unutmayın: kötü amaçlı bir bağımlılık, bu açıklardan bağımsız olarak zarar verebilecektir. crates.io, bu tür paketleri reddetmek için sunucu tarafı kontrollerini yıllar önce uygulamıştır ve crates.io üzerinde bu açıklardan yararlanan herhangi bir paket bulunmamaktadır. Yine de derleme betikleri ve prosedürel makrolarla ilgili aynı endişeler burada da geçerli olduğundan, crates.io kullanıcılarının bağımlılıklarını seçerken dikkatli olmaları gerekir.
Nasıl düzeltilir
- rust-lang cargo0.65.0 ya da sonraki bir sürüm
Etkilenen ürünler
| Ürün | Etkilenen sürümler | Düzeltildiği sürüm |
|---|---|---|
| rust-lang cargo | v < 0.65.0 | 0.65.0 |
Sürümünüzü kontrol edin
Ürünü seçin ve kullandığınız sürümü yazın; sürümün etkilenen aralıkta olup olmadığını görün.
Attack Surface Management
Alan adlarınıza bağlı varlıkları, bu varlıklarda çalışan teknolojileri ve bilinen zafiyetleri tek listede görün.