CVE-2026-33416

Yüksək

Təsvir

LIBPNG, PNG (Portable Network Graphics) rastr şəkil fayllarını oxuyan, yaradan və manipulyasiya edən tətbiqlərdə istifadə üçün referans kitabxanadır. 1.2.1-dən 1.6.55-ə qədər olan versiyalarda, `png_set_tRNS` və `png_set_PLTE` funksiyalarının hər biri `png_struct` və `png_info` arasında heap-də ayrılmış buferi alias edir və müstəqil ömür dövrünə malik iki struktur arasında tək bir ayırmanı paylaşır. `trans_alpha` aliasingi ən azı libpng 1.0 versiyasından, `palette` aliasingi isə ən azı 1.2.1 versiyasından bəri mövcuddur. Hər ikisi əvvəlki bütün buraxılış xətlərinə təsir edir. `png_set_tRNS` funksiyası `png_ptr->trans_alpha = info_ptr->trans_alpha` (256 baytlıq bufer), `png_set_PLTE` isə `info_ptr->palette = png_ptr->palette` (768 baytlıq bufer) təyin edir. Hər iki halda, `png_free_data` funksiyasının çağırılması (`PNG_FREE_TRNS` və ya `PNG_FREE_PLTE` ilə) buferi `info_ptr` vasitəsilə azad edir, lakin müvafiq `png_ptr` göstəricisi asılı qalır (dangling pointer). Sonrakı sətir transformasiya funksiyaları azad edilmiş yaddaşı dereference edir və bəzi kod yollarında həmin yaddaşa məlumat yazır. `png_set_tRNS` və ya `png_set_PLTE` funksiyalarının ikinci dəfə çağırılması eyni effekti verir, çünki hər iki funksiya `info_ptr` buferini yenidən ayırmazdan əvvəl daxili olaraq `png_free_data` funksiyasını çağırır. Versiya 1.6.56 bu problemi aradan qaldırır.

CiddilikYüksək
CVSS7.5
İstismar ehtimalı—
MəhsulLibpng
Dərc26 mar 2026
İlk görülmə26 mar 2026

Necə düzəltmək olar

Yeniləyin
  • libpng libpng1.6.56 və ya daha yeni versiya

Təsirlənən məhsullar

MəhsulTəsirlənən versiyalarDüzəldildiyi versiya
libpng libpng1.2.1 ≤ v < 1.6.561.6.56

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-2026-33416 · Libpng · Dark Radar