CVE-2022-31172
Açıklama
OpenZeppelin Contracts, akıllı sözleşme geliştirme için kullanılan bir kütüphanedir. 4.1.0 ile 4.7.1 arasındaki sürümler, SignatureChecker'ın geri dönmesine (reverting) karşı savunmasızdır. `SignatureChecker.isValidSignatureNow` fonksiyonunun geri dönmesi beklenmemektedir. Ancak, Solidity 0.8'in `abi.decode` işlemi hakkındaki yanlış bir varsayım, EIP-1271'i beklendiği gibi uygulamayan bir hedef sözleşmenin olması durumunda bazı vakaların geri dönmesine izin vermektedir. Etkilenebilecek sözleşmeler, bir imzanın geçerliliğini kontrol etmek için `SignatureChecker` kullanan ve geçersiz imzaları geri dönmek dışında farklı bir şekilde işleyen sözleşmelerdir. Sorun 4.7.1 sürümünde düzeltilmiştir.
Nasıl düzeltilir
- openzeppelin contracts4.7.1 ya da sonraki bir sürüm
- @openzeppelin/contracts4.7.1 ya da sonraki bir sürüm
- @openzeppelin/contracts-upgradeable4.7.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 | 4.1.0 ≤ v < 4.7.1 | 4.7.1 |
| @openzeppelin/contractsnpm | 4.1.0 ≤ v < 4.7.1 | 4.7.1 |
| @openzeppelin/contracts-upgradeablenpm | 4.1.0 ≤ v < 4.7.1 | 4.7.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.