· kaynak dev.to (home feed)
CVE-2026-101919: HyperShift kubeconfig geçişi OpenShift tenant izolasyonunu kırıyor
Red Hat'in hypershift-rhel9-operator'ündeki CVSS 8.8 puanlı bir input-validation açığı, tenant tarafından sağlanan kubeconfig Secret'larını ayrıcalıklı control plane'e kopyalayarak kimliği doğrulanmış tenant'ların orada kod çalıştırmasına olanak tanıyor.

Ne oldu
6 Ekim 2026'da dev.to'da yayımlanan bir güvenlik yazısı, Red Hat'in OpenShift barındırma yığınındaki ciddi bir izolasyon açığını ele alıyor. CVE-2026-101919 olarak takip edilen ve CVSS 3.1 üzerinde 8.8 puan alan — yazıya göre Red Hat'in Önemli olarak sınıflandırdığı bir önem düzeyi — bu açık, Multicluster Engine ile HyperShift çalıştıran kümeleri etkiliyor. Yalnızca temel namespace düzeyi izinlere sahip kimliği doğrulanmış bir tenant'ın host control plane'e sızmamasına olanak tanıyor.
dev.to analizine göre kök neden, hypershift-rhel9-operator'deki hatalı input-validation. ReconcileCredentials adlı bir fonksiyon, kullanıcı tarafından sağlanan bir kubeconfig Secret'ını ayrıcalıklı control plane namespace'ine fiilen bayt bayt kopyalıyor; yazı bunu, kaynak Secret'taki her anahtarı incelemeden hedefe aktaran kısa bir Go döngüsüyle örnekliyor. Yazıya göre hiçbir exec-provider stanzası ayıklanmıyor, AuthProvider alanları doğrulanmıyor ve InsecureSkipTLSVerify'ye karşı bir koruma bulunmuyor.
Saldırı zinciri nasıl işliyor
Bazı arka plan bilgisi önem derecesini netleştiriyor. Bir kubeconfig bir exec plugin taşıyabilir: dosyayı yükleyen herhangi bir istemciye rastgele bir komut çalıştırmasını ve çıktısını kimlik bilgisi olarak kullanmasını söyleyen bir stanza. Bu, kubeconfig'i cluster operatörü yazdığında meşru bir özelliktir; ancak dosyayı daha az güvenilen bir taraf sağladığında fiilen configuration-as-code-execution'a dönüştürür.
dev.to'da bildirilen zincir şöyle işliyor: bir tenant, kötü niyetli bir exec plugin içeren bir kubeconfig Secret'ı hazırlıyor ve bunu HyperShift'in izlediği bir namespace'te oluşturuyor. Operator bu Secret'ı olduğu gibi control plane namespace'ine kopyalıyor. Yazıda CAPK olarak tanımlanan bir downstream controller, kubeconfig'i işinin bir parçası olarak kullanıyor ve bu da gömülü plugin'in control plane ayrıcalıklarıyla çalıştırılmasına yol açıyor.
Etkisi ne
Yazıya göre başarılı bir sömürü, tenant'a şunları sağlıyor:
- Control plane namespace'inde rastgele kod yürütme
- Tüm control plane secret'larına erişim
- Tenant sınırları boyunca yatay hareket (lateral movement) yeteneği
- HyperShift'in tenant izolasyonu garantisinin fiilen ortadan kalkması
Yazı, kamuya açık bir proof-of-concept bulunmadığını ve bir yamanın zaten mevcut olduğunu belirtiyor.
Operatorler şimdi ne yapmalı
dev.to makalesi dört acil adım öneriyor:
- HyperShift operatorünü normal cluster güncelleme mekanizmasıyla yamalamak
- HyperShift'in izlediği namespace'lerde Secret oluşturmayı güvenilir hesaplarla sınırlamak
- Exec plugin içeren kubeconfig Secret'larını reddeden bir admission webhook dağıtmak
- Mevcut kubeconfig Secret'larını gömülü pluginler açısından denetlemek
Açıkça belirtilmesi gereken iki uyarı var. Bu, tek bir kaynaktan — bir güvenlik blogundan — gelen bir analiz ve etkilenen sürüm aralıklarını listelemiyor; bu nedenle resmi iyileştirme ayrıntıları, değişiklik pencereleri planlanmadan önce Red Hat'in kendi advisory'leriyle doğrulanmalı. Ayrıca yama, altta yatan deseni değil operator tarafındaki kopyalama hatasını kapattığından, admission-control ve denetim adımları faydalı bir defence-in-depth olmaya devam ediyor.
Neden önemli
HyperShift'in temel vaadi, barındırılan OpenShift control plane'lerin paylaşılan bir yönetim kümesi üzerinde sıradan workload'lar olarak çalışması ve tenantlar arasında güçlü bir ayrım bulunmasıdır. Control plane namespace'i, tam da bu ayrımın uygulandığı ve en hassas materyalin bulunduğu yerdir; dolayısıyla temel bir namespace tenant'ının orada kod çalıştırmasına izin veren bir açık, mimarinin dayandığı güven sınırını çökertir. Bu gerekçelerle 8.8 puan ve Önemli derecelendirmesi kolayca savunulabilir.
Hata ayrıca tekrarlanan bir Kubernetes anti-pattern'ini gözler önüne seriyor: kubeconfig dosyaları atalet veri değildir. Bir exec stanza, bir tüketiciyi bekleyen komuttur; bu nedenle kimlik bilgisi dosyalarını güven etki alanları arasında arındırmadan taşıyan her pipeline, kod yürütme riskini miras alır. HyperShift çalıştırmayan operatorler de kendi otomasyonlarının, istemci tarafından sağlanan kubeconfig'leri daha ayrıcalıklı bağlamlara kopyalayıp kopyalamadığını kontrol etmek isteyebilir.
- #openshift
- #kubernetes
- #security
- #cve
- #red-hat