CVE-2022-39384
Açıklama
OpenZeppelin Contracts, güvenli akıllı sözleşme geliştirme için kullanılan bir kütüphanedir. 3.2.0 sürümünden sonrası ancak 4.4.1 sürümünden öncesinde, sözleşme oluşturmadan ayrı olarak çağrılan başlatıcı (initializer) fonksiyonlar (en belirgin örneği minimal proxy'lerdir), güvenilmeyen ve view olmayan harici bir çağrı yapmaları durumunda yeniden girilebilir (reentered) olabilir. Bir başlatıcı çalışmayı tamamladığında bir daha asla yeniden yürütülemez. Ancak, çoklu kalıtımı desteklemek için eklenen bir istisna, yukarıda açıklanan senaryoda yeniden giriş yapılmasını mümkün kılarak tek bir yürütme beklentisini bozmuştur. Yükseltilebilir proxy'lerin genellikle sözleşme oluşturma ile birlikte başlatıldığı ve burada yeniden girişin mümkün olmadığı, bu nedenle bu sorunun etkisinin düşük olduğu değerlendirilmektedir. Bu sorun giderilmiştir, lütfen 4.4.1 sürümüne yükseltin. Geçici çözüm olarak, başlatma sırasında güvenilmeyen harici çağrılardan kaçının.
Nasıl düzeltilir
- openzeppelin contracts4.4.1 ya da sonraki bir sürüm
- openzeppelin contracts_upgradeable4.4.1 ya da sonraki bir sürüm
Etkilenen ürünler
| Ürün | Etkilenen sürümler | Düzeltildiği sürüm |
|---|---|---|
| openzeppelin contracts | 3.2.0 ≤ v < 4.4.1 | 4.4.1 |
| openzeppelin contracts_upgradeable | 3.2.0 ≤ v < 4.4.1 | 4.4.1 |
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.