CVE-2022-4450
Təsvir
PEM_read_bio_ex() funksiyası BIO-dan PEM faylını oxuyur və "ad"ı (məsələn, "CERTIFICATE"), hər hansı başlıq məlumatlarını və yük məlumatlarını təhlil edib dekodlaşdırır. Funksiya uğurlu olduqda, "name_out", "header" və "data" arqumentləri müvafiq dekodlaşdırılmış məlumatları ehtiva edən buferlərə göstəricilərlə doldurulur. Bu buferlərin boşaldılmasına çağırıcı məsuliyyət daşıyır. Yük məlumatının 0 bayt olduğu bir PEM faylı yaratmaq mümkündür. Bu halda PEM_read_bio_ex() xəta kodu qaytaracaq, lakin header arqumentini artıq boşaldılmış buferə yönəlmiş göstərici ilə dolduracaq. Əgər çağırıcı bu buferi yenidən boşaltarsa, "double free" (ikiqat boşaltma) baş verəcəkdir. Bu, çox güman ki, proqramın çökməsinə səbəb olacaq. Təhlil üçün zərərli PEM faylları təqdim etmək imkanı olan hücumçu tərəfindən xidmətdən imtina (DoS) hücumunu həyata keçirmək üçün istifadə edilə bilər. PEM_read_bio() və PEM_read() funksiyaları PEM_read_bio_ex() funksiyasının sadə örtükləri (wrapper) olduğu üçün bu funksiyalar da birbaşa təsirlənir. Bu funksiyalar həmçinin PEM_X509_INFO_read_bio_ex() və SSL_CTX_use_serverinfo_file() daxil olmaqla digər bir sıra OpenSSL funksiyaları tərəfindən dolayı yolla çağırılır və onlar da zəifliyə malikdir. OpenSSL-in daxili bəzi istifadələri zəifliyə məruz qalmır, çünki PEM_read_bio_ex() xəta kodu qaytardıqda çağırıcı header arqumentini boşaltmır. Bu yerlərə PEM_read_bio_TYPE() funksiyaları, eləcə də OpenSSL 3.0-da təqdim edilmiş dekoderlər daxildir. OpenSSL asn1parse komanda sətri tətbiqi də bu problemdən təsirlənir.
Necə düzəltmək olar
- openssl openssl1.1.1t, 3.0.8 və ya daha yeni versiya
- stormshield stormshield_network_security4.3.16, 4.6.3 və ya daha yeni versiya
Təsirlənən məhsullar
| Məhsul | Təsirlənən versiyalar | Düzəldildiyi versiya |
|---|---|---|
| openssl openssl | 1.1.1 ≤ v < 1.1.1t, 3.0.0 ≤ v < 3.0.8 | 1.1.1t, 3.0.8 |
| stormshield stormshield_network_security | 4.0.0 ≤ v < 4.3.16, 4.4.0 ≤ v < 4.6.3 | 4.3.16, 4.6.3 |
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.
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.