CVE-2023-46247

Yüksək

Təsvir

Vyper, Ethereum Virtual Maşını (EVM) üçün Python tipli ağıllı kontrakt dilidir. Böyük massivlər ehtiva edən kontraktlar, lazım olan slot sayısını 1 vahid az təyin edə bilər. v0.3.8 versiyasından əvvəl, yaddaş dəyişəninin neçə slota ehtiyacı olduğunu müəyyən etmək üçün hesablamada `math.ceil(type_.size_in_bytes / 32)` istifadə olunurdu. Əgər IEEE-754 mantissasında kifayət qədər bit təyin edilibsə, aralıq yüzdən birliq (floating point) mərhələsi yuvarlaqlaşdırma xətasına səbəb ola bilər. Təxminən desək, əgər `type_.size_in_bytes` böyükdürse (> 2**46) və 2-nin qüvvətindən bir qədər kiçikdirsə, hesablama lazım olan slot sayını 1 vahid artıq göstərə bilər. Əgər `type_.size_in_bytes` 2-nin qüvvətindən bir qədər çoxdursa, hesablama lazım olan slot sayını 1 vahid az göstərə bilər. Bu problem 0.3.8 versiyasında düzəldilmişdir.

CiddilikYüksək
CVSS7.5
İstismar ehtimalı—
MəhsulVyper
Dərc13 dek 2023
İlk görülmə13 dek 2023

Necə düzəltmək olar

Yeniləyin
  • vyperlang vyper0.3.8 və ya daha yeni versiya
  • vyper0.3.8 və ya daha yeni versiya

Təsirlənən məhsullar

MəhsulTəsirlənən versiyalarDüzəldildiyi versiya
vyperlang vyperv < 0.3.80.3.8
vyperPyPIv < 0.3.80.3.8

Versiyanızı yoxlayın

Məhsulu seçin və istifadə etdiyiniz versiyanı yazın; versiyanın təsirlənən aralıqda olub-olmadığını görün.

Intelligence 360 paketində

Attack Surface Management

Domenlərinizə bağlı aktivləri, onlarda işləyən texnologiyaları və məlum zəiflikləri bir siyahıda görün.