CVE-2022-36078

Yüksək

Təsvir

Binary, Borsh və digər formatlarda kodlaşdırma/dekodlaşdırma imkanları təmin edir. Bu zəiflik yaddaşın ayrılması ilə bağlıdır və yaddaşda (istənilən) həddindən artıq ölçülü dilimlərin (slices) ayrılması üçün istifadə edilə bilər ki, bu da mövcud yaddaşın tükənməsinə və ya bütün proqramın çökməsinə səbəb ola bilər. Etibarsız giriş mənbələrindən (məsələn, blokçeyn) gələn yoxlanılmamış (və ya yanlış tipli) məlumatları dilimlərə çevirmək üçün `github.com/gagliardetto/binary` kitabxanasından istifadə etdikdə, həddindən artıq ölçüdə yaddaş ayrılması mümkündür. Məlumatları dəyərlərdən ibarət dilimləri olan və ya onları ehtiva edən strukturuna çevirmək üçün `dec.Decode(&val)` metodu istifadə edildikdə, dilimin uzunluğu əvvəllər heç bir ölçü yoxlaması aparılmadan birbaşa məlumatın özündən oxunurdu və daha sonra dilim ayrılırdı. Bu, daşmaya (overflow) və həddindən artıq ölçü dəyəri ilə yaddaşın ayrılmasına səbəb ola bilərdi. İstifadəçilər versiyanı `v0.7.1` və ya daha yüksəyinə yüksəltməlidirlər. Alternativ həll yolu kimi məlumatları çevirmək üçün `dec.Decode(&val)` funksiyasına güvənməmək, bunun əvəzinə hər hansı dilimin uzunluğunu oxuyan və yoxlayan xüsusi `UnmarshalWithDecoder()` metodundan istifadə etmək tövsiyə olunur.

CiddilikYüksək
CVSS8.8
İstismar ehtimalı—
MəhsulBinary
Dərc2 sen 2022
İlk görülmə2 sen 2022
Zəiflik növüCWE-789CWE-789

Necə düzəltmək olar

Yeniləyin
  • binary_project binary0.7.1 və ya daha yeni versiya
  • github.com/gagliardetto/binary0.7.1 və ya daha yeni versiya

Təsirlənən məhsullar

MəhsulTəsirlənən versiyalarDüzəldildiyi versiya
binary_project binaryv < 0.7.10.7.1
github.com/gagliardetto/binaryGov < 0.7.10.7.1

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.

CVE-2022-36078 · Binary · Dark Radar