CVE-2025-27818
Açıklama
Apache Kafka'da olası bir güvenlik zafiyeti tespit edilmiştir. Bu durum; cluster kaynağına veya Kafka Connect worker'ına yönelik bir alterConfig erişimi ile rastgele bir Kafka istemcisi SASL JAAS yapılandırması ve SASL tabanlı bir güvenlik protokolü kullanarak konnektör oluşturma/değiştirme yeteneği gerektirir; bu durum Apache Kafka 2.0.0 (Kafka Connect 2.3.0) sürümünden beri Kafka cluster'larında mümkündür. Broker'ın yapılandırma dosyası veya AlterConfig komutu aracılığıyla ya da konnektörün Kafka Connect REST API üzerinden yapılandırılması sırasında, kimliği doğrulanmış bir operatör, herhangi bir konnektör Kafka istemcisinin `sasl.jaas.config` özelliğini `producer.override.sasl.jaas.config`, `consumer.override.sasl.jaas.config` veya `admin.override.sasl.jaas.config` özellikleri aracılığıyla "com.sun.security.auth.module.LdapLoginModule" olarak ayarlayabilir. Bu durum, sunucunun saldırganın LDAP sunucusuna bağlanmasına ve LDAP yanıtını serileştirmesine olanak tanır; saldırgan bunu Kafka connect sunucusunda java deserialization gadget zincirlerini çalıştırmak için kullanabilir. Saldırgan, classpath içerisinde gadget'lar bulunduğunda güvenilmeyen verilerin kısıtlanmamış şekilde serileştirilmesine (deserialization) veya uzaktan kod çalıştırma (RCE) zafiyetine neden olabilir. Apache Kafka 3.0.0 sürümünden itibaren kullanıcıların, hazır yapılandırmalarla çalışan Kafka Connect cluster'ları için konnektör yapılandırmalarında bu özellikleri belirtmelerine izin verilmektedir. Apache Kafka 3.0.0 öncesinde ise kullanıcılar, Kafka Connect cluster'ı buna izin veren bir konnektör istemci geçersiz kılma politikasıyla yeniden yapılandırılmadığı sürece bu özellikleri belirleyemezler. Apache Kafka 3.9.1/4.0.0 sürümlerinden itibaren, SASL JAAS yapılandırmasında sorunlu giriş modüllerinin kullanımını devre dışı bırakmak için bir sistem özelliği ("-Dorg.apache.kafka.disallowed.login.modules") eklenmiştir. Ayrıca Apache Kafka Connect 3.9.1/4.0.0 sürümlerinde varsayılan olarak "com.sun.security.auth.module.JndiLoginModule,com.sun.security.auth.module.LdapLoginModule" devre dışıdır. Kafka kullanıcılarının konnektör yapılandırmalarını doğrulamaları ve yalnızca güvenilir LDAP yapılandırmalarına izin vermeleri önerilir. Ayrıca çözüm seçenekleri olarak, konnektör bağımlılıklarının savunmasız sürümler açısından incelenmesi ve konnektörlerin yükseltilmesi, ilgili bağımlılığın güncellenmesi veya konnektörlerin kaldırılması tavsiye edilir. Son olarak, "org.apache.kafka.disallowed.login.modules" sistem özelliğinden yararlanmaya ek olarak, Kafka Connect kullanıcıları, hangi Kafka istemci özelliklerinin doğrudan bir konnektör yapılandırmasında geçersiz kılınabileceğini kontrol etmek için kendi konnektör istemci yapılandırma geçersiz kılma politikalarını uygulayabilirler.
Nasıl düzeltilir
- apache kafka3.9.1 ya da sonraki bir sürüm
- org.apache.kafka:kafka_2.123.9.1 ya da sonraki bir sürüm
- org.apache.kafka:kafka_2.133.9.1 ya da sonraki bir sürüm
Etkilenen ürünler
| Ürün | Etkilenen sürümler | Düzeltildiği sürüm |
|---|---|---|
| apache kafka | 2.3.0 ≤ v < 3.9.1 | 3.9.1 |
| org.apache.kafka:kafka_2.11Maven | 2.3.0 ≤ v ≤ 2.4.1 | — |
| org.apache.kafka:kafka_2.12Maven | 2.3.0 ≤ v < 3.9.1 | 3.9.1 |
| org.apache.kafka:kafka_2.13Maven | 2.4.0 ≤ v < 3.9.1 | 3.9.1 |
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.
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.