CVE-2026-40047

Kritik

Açıklama

Apache Camel Docling bileşeninde, bir komuttaki bağımsız değişken ayırıcılarının uygun şekilde etkisiz hale getirilmemesi ('Argument Injection') zafiyeti bulunmaktadır. camel-docling bileşeni, DoclingProducer içinde bir bağımsız değişken listesi oluşturarak ve bunu java.lang.ProcessBuilder aracılığıyla çalıştırarak harici `docling` komut satırı aracını çağırır. `CamelDoclingCustomArguments` değişim başlığı (bir List<String>) üzerinden sağlanan özel CLI bağımsız değişkenleri, yetersiz doğrulama ile bu bağımsız değişken listesine eklenmiştir: orijinal uygulama, izin verilmeyen bayrakların yer aldığı bir kara listeye dayanıyordu ve yalnızca gerçek anlamda `../` dizisi içeren yol değerlerini reddediyordu. Sonuç olarak, dışarıdan etkilenen verileri `CamelDoclingCustomArguments` başlığına (veya çağırma işlemini oluşturmak için kullanılan yol taşıyan başlıklara) yönlendiren bir Camel rotası, üreticinin alt sürece tanınmayan veya amaçlanmayan `docling` CLI bayraklarını geçirmesine neden olabilir ve gerçek `../` kontrolü tarafından yakalanmayan geçiş dizileri aracılığıyla hedeflenen dizinin dışında çözümlenen yol benzeri bağımsız değişken değerleri sağlayabilir. Camel'ın kendisi `docling` çağrısını bu değerlerden oluşturduğu için, bunları kısıtlama sorumluluğu bileşene aittir ve zayıf doğrulama, harici araca iletilen bağımsız değişkenlerde CLI-bağımsız değişken enjeksiyonuna ve dizin geçişine (directory traversal) izin vermiştir. Çağrı işlemi ProcessBuilder'ın liste tabanlı formunu kullandığından, bağımsız değişken değerleri bir kabuk (shell) tarafından yorumlanmaz; bu nedenle kabuk meta karakterleri aracılığıyla işletim sistemi komut enjeksiyonu mümkün değildi ve düzeltmeyle eklenen meta karakter reddi derinlemesine savunma (defense-in-depth) amaçlıdır. Bu sorun Apache Camel'ı etkilemektedir: 4.15.0 sürümünden 4.18.3 öncesine kadar. Kullanıcıların CAMEL-23212 düzeltmesini içeren bir sürüme yükseltmeleri önerilir. Ana hatta düzeltme, Apache Camel 4.19.0'dan itibaren (ve 4.20.0 gibi sonraki sürümlerde) yer almaktadır. 4.18.x LTS sürüm akışındaki kullanıcılar için 4.18.3 sürümüne yükseltme yapılması gerekmektedir. Düzeltme, kara listeyi tanınan `docling` CLI bayraklarından oluşan katı bir beyaz liste ile değiştirir (tanınmayan tüm bayrakları ve çıktı dizini bayrakları gibi üretici tarafından yönetilen bayrakları reddeder), bağımsız değişken değerlerindeki kabuk meta karakterlerini savunmacı bir yaklaşımla reddeder ve gerçek `../` kontrolünü atlayan geçiş dizilerinin tespit edilmesi için yol benzeri değerleri doğrulamadan önce Path.normalize() ile normalize eder. Derinlemesine savunma olarak, rota yazarları güvenilmeyen mesaj içeriğini `CamelDoclingCustomArguments` başlığına ve yol taşıyan başlıklara eşlemekten kaçınmalı ve güvenilmeyen üreticilerden gelen mesajlardaki Camel dahili başlıklarını temizlemelidir.

ÖnemKritik
CVSS9.1
İstismar olasılığı—
ÜrünApache Camel
Yayın6 Tem 2026
İlk görülme6 Tem 2026
Zayıflık türüCWE-88CWE-88

Nasıl düzeltilir

Güncelleyin
  • apache camel4.18.3 ya da sonraki bir sürüm
  • org.apache.camel:camel-docling4.18.3 ya da sonraki bir sürüm

Etkilenen ürünler

ÜrünEtkilenen sürümlerDüzeltildiği sürüm
apache camel4.15.0 ≤ v < 4.18.34.18.3
org.apache.camel:camel-doclingMaven4.15.0 ≤ v < 4.18.34.18.3

Sürümünüzü kontrol edin

Ürünü seçin ve kullandığınız sürümü yazın; sürümün etkilenen aralıkta olup olmadığını görün.

Intelligence 360 paketinde

Attack Surface Management

Alan adlarınıza bağlı varlıkları, bu varlıklarda çalışan teknolojileri ve bilinen zafiyetleri tek listede görün.