CVE-2026-95664

Orta

Təsvir

Apache Camel AWS2-s3 komponentində İfadə Dili (Expression Language) ifadələrində istifadə olunan xüsusi elementlərin düzgün neytrallaşdırılmaması ("Expression Language Injection") zəifliyi aşkar edilmişdir. Bu problem Apache Camel-in aşağıdakı versiyalarına təsir edir: 4.8.0-dan 4.18.5-ə qədər və 4.19.0-dan 4.22.2-yə qədər. Yüklədiyi, oxuduğu və ya sildiyi obyekt üçün camel-aws2-s3 istehsalçısı (producer) açarı CamelAwsS3Key mesaj başlığından götürür və yalnız həmin başlıq mövcud olmadıqda endpoint-də konfiqurasiya edilmiş keyName seçimindən istifadə edir. 4.8.0 versiyasından etibarən AWS2S3Utils.determineKey() funksiyası, nəticə dəyəri ${ və ya $simple{ ehtiva etdikdə onu Simple dilinə ötürürdü ki, marşrut dinamik açardan istifadə edə bilsin; bu qiymətləndirmə həm başlıqdan götürülmüş dəyərə, həm də konfiqurasiya edilmiş seçimlərə tətbiq olunurdu. Lakin başlıq marşrut konfiqurasiyası deyil: aws2-s3 istehlakçısı (consumer) yaratdığı mübadilələrdə (exchanges) CamelAwsS3Key-i oxuduğu obyektin açarına, yəni bucket-dəki obyektin adına təyin edir. Bir aws2-s3 endpoint-indən digərinə məlumat ötürən sadə bir marşrutda, hər bir istehlak edilən obyektin adı istehsalçıya çatır və hər hansı bir marker ehtiva edən ad, marşrut müəllifi bunu tələb etməsə belə, ifadə kimi qiymətləndirilirdi. İstehsalçıda keyName-in konfiqurasiya edilməsi buna mane olmurdu, çünki başlıq üstünlük təşkil edirdi. Digər mesaj məzmunundan başlığa kopyalanan açar da eyni şəkildə qiymətləndirilirdi. Beləliklə, marşrutun istehlak etdiyi bucket-də obyekt adını seçə bilən hər kəs (adətən həmin bucket-ə yükləmə icazəsi olan şəxs) Camel prosesində öz seçdiyi Simple ifadələrini icra etdirə bilərdi. Simple dili JVM sistem xüsusiyyətlərini, mühit dəyişənlərini və tez-tez kimlik məlumatlarını daşıyan konfiqurasiya xüsusiyyətlərini oxuya bilir və əgər camel-bean classpath-dədirsə, reyestrdəki bean-lərin metodlarını çağıra bilir. Qiymətləndirmənin nəticəsi istehsalçının istifadə etdiyi açara çevrilirdi, buna görə də dəyəri geri oxumaq üçün əlavə olaraq hədəf bucket-dəki obyekt adlarını görmək imkanı tələb olunurdu, lakin metod çağırışı bu imkan olmadan da həyata keçirilirdi; istehlak edilən bucket-də obyekt adlandırmaq ehtiyacı ilə birlikdə bu səbəbdən risk dərəcəsi orta (medium) kimi qiymətləndirilmişdir. Bucket adı da eyni qiymətləndirmədən keçirdi, lakin istehlakçı bucket başlığına yalnız öz endpoint-ində konfiqurasiya edilmiş bucket-i yerləşdirir, uzaq obyektdən törəyən dəyəri yox, ona görə də bucket adına bu yolla çatmaq mümkün deyildi. 4.8.0-dan əvvəlki versiyalar başlıqdakı açarı olduğu kimi istifadə etdiyi üçün bu problemdən təsirlənmir. İstifadəçilərə problemi aradan qaldıran 4.23.0 versiyasına yeniləmək tövsiyə olunur. Əgər istifadəçilər 4.22.x versiya axınındalarsa, 4.22.2-yə, 4.18.x versiya axınındalarsa, 4.18.5-ə yeniləmələri məsləhətdir. 4.8.x - 4.17.x və 4.19.x - 4.21.x versiya xəttinin dəstəklənmə müddəti bu problem həll edilməzdən əvvəl başa çatmışdı və onlar üçün düzəliş təqdim edilməyəcək, buna görə də bu versiyalardakı tətbiqlər dəstəklənən versiyaya keçirilməlidir. Yeniləmədən sonra mesaj başlığı vasitəsilə təqdim edilən açar və ya bucket adı hərfi şəkildə istifadə olunur, buna görə də CamelAwsS3Key və ya CamelAwsS3OverrideBucketName başlığına qiymətləndirilməmiş Simple ifadəsi yerləşdirən marşrutlar bunu artıq marşrut daxilində (məsələn, setHeader və simple() ilə) qiymətləndirməli və ya endpoint-in keyName və ya bucketName seçimi kimi konfiqurasiya etməlidir. Təcili yeniləyə bilməyən tətbiqlər üçün obyekt adından və ya digər etibarsız mesaj məzmunundan törəyən açarın yoxlanılmadan aws2-s3 istehsalçısına çatmasına imkan verməyin: aws2-s3 istehlakçısından aws2-s3 istehsalçısına mübadilələr ötürən marşrutlarda, ya istehsalçıdan əvvəl removeHeader(“CamelAwsS3Key”) ilə CamelAwsS3Key başlığını silin (beləliklə endpoint-də konfiqurasiya edilmiş keyName istifadə olunacaq), ya da CamelAwsS3Key başlığı ${ və ya $simple{ ehtiva edən mübadilələri rədd edin. Yalnız keyName-in konfiqurasiya edilməsi alternativ həll yolu deyil, çünki başlıq ondan daha üstündür. Əlavə təhlükəsizlik tədbiri kimi, yalnız etibarlı şəxslərə Camel marşrutlarının istehlak etdiyi bucket-lərə yazı yazmağa icazə verin.

CiddilikOrta
CVSS5.4
İstismar ehtimalı—
MəhsulApache Camel
Dərc26 okt 2026
İlk görülmə26 okt 2026

Necə düzəltmək olar

Təsirlənən məhsullar

MəhsulTəsirlənən versiyalarDüzəldildiyi versiya
apache camel4.8.0 ≤ v < 4.18.5, 4.19.0 ≤ v < 4.22.24.18.5, 4.22.2

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.