CVE-2026-88900
Təsvir
Apache Camel Camel-Jgroups komponentində etibarsız məlumatların deserializasiyası zəifliyi. Bu problem Apache Camel-in aşağıdakı versiyalarına təsir edir: 4.0.0-dan 4.18.5-ə qədər və 4.19.0-dan 4.22.1-ə qədər. CamelJGroupsReceiver tərəfindən hər bir mesaj marşrutlaşdırılmadan əvvəl çağırılan JGroupsEndpoint.createExchange(Message) funksiyası, exchange gövdəsini org.jgroups.Message.getObject() vasitəsilə təyin edir. Camel jgroups istehsalçısının göndərdiyi mesaj növü olan ObjectMessage üçün JGroups, mesaj daxil olduqda öz qəbul axınında (thread) ObjectInputStream vasitəsilə faydalı yükün (payload) Java-deserializasiyasını həyata keçirir və getObject() nəticədə alınan obyekti qaytarır. Əgər tətbiqetmədə JVM səviyyəsində serializasiya filtri təyin edilməyibsə, bu yolda heç bir java.io.ObjectInputFilter tətbiq edilmir: camel-jgroups heç bir filtr quraşdırmır və təsirlənmiş versiyalarla tədarük edilən JGroups versiyaları da özlərinin heç bir filtrini tətbiq etmir, buna görə də tətbiqin classpath-ində olan istənilən serializasiya oluna bilən sinif instansiya edilə və onun deserializasiya geri çağırma (callback) funksiyaları işlədilə bilər. Kanal və ya channelProperties seçimi konfiqurasiya edilmədikdə, istehlakçı kanalı standart JGroups protokol stek olan new JChannel() ilə yaradır ki, bu da AUTH protokolu və şifrələmə olmadan UDP üzərindən multikast edir; beləliklə, klasterin multikast qrupuna və ya bağlama portuna (bind port) çata bilən istənilən host kimlik məlumatları olmadan klasterə qoşula və istehlakçıya mesajlar göndərə bilər. Belə bir host, classpath-də istifadə edilə bilən deserializasiya gadget zənciri mövcud olduqda, Camel prosesində uzaqdan kodun icrasına (RCE) səbəb ola biləcək xüsusi hazırlanmış serializasiya olunmuş obyekt göndərə bilər və bunun üçün istehlakçı tərəfdə heç bir qeyri-standart seçim tələb olunmur. JGroups obyekti Camel-in qəbulçusu işə düşməzdən əvvəl materializə etdiyi üçün, Camel tərəfindən yerinə yetirilən yoxlama yalnız deserializasiya edilmiş nəticəni təftiş edə bilər və deserializasiya zamanı işləyən kodu dayandıra bilməz; buna görə də problemin aradan qaldırılması, yumuşaltma tədbirlərində təsvir edildiyi kimi, faydalı yük oxunmazdan əvvəl tətbiq olunan bir nəzarət mexanizmini tələb edir. İstismar üçün klasterin multikast qrupuna və ya bağlama portuna şəbəkə girişi (standart UDP multikast transportu ilə bu, qonşu şəbəkədəki host deməkdir) və classpath-də istifadə edilə bilən gadget zənciri tələb olunur, buna görə də kritik deyil, yüksək dərəcəli risk kimi qiymətləndirilir. İstifadəçilərə problemi aradan qaldıran 4.23.0 versiyasına yüksəltmə etmək tövsiyə olunur. Əgər istifadəçilər 4.22.x versiya axınındadırlarsa, 4.22.1-ə, 4.18.x versiya axınındadırlarsa, 4.18.5-ə yüksəltmə etmələridir. 4.14.x və daha əvvəlki versiyalar, eləcə də 4.15.x-dən 4.17.x-ə və 4.19.x-dən 4.21.x-ə qədər olan versiya xəttəri bu problem həll edilməzdən əvvəl dəstəkləmə müddətini (EOL) tamamladığı üçün düzəliş almayacaq və bu versiyalardakı sistemlər dəstəklənən versiyaya keçirilməlidir.
Necə düzəltmək olar
- apache camel4.18.5, 4.22.1 və ya daha yeni versiya
Təsirlənən məhsullar
| Məhsul | Təsirlənən versiyalar | Düzəldildiyi versiya |
|---|---|---|
| apache camel | 4.0.0 ≤ v < 4.18.5, 4.19.0 ≤ v < 4.22.1 | 4.18.5, 4.22.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.
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.