Açık nereden kaynaklanıyor?
Steam, oyunların önkoşullarını (DirectX, Visual C++ çalışma zamanları ve benzeri bileşenler) kurmak için ayrıcalıklı bir Windows servisi kullanır. Bu servis, kurulum adımlarını Valve tarafından imzalanmış VDF biçimindeki "install script" dosyalarından okur ve gereken işlemleri SYSTEM bağlamında yürütür.
Sorun, imzanın kapsamıyla ilgili bir boşlukta. Servis, çağıran süreçten iki şey alıyor: gerçekten Valve imzalı bir VDF dosyası ve kurulumun hangi dizin altında yapılacağını belirten bir kurulum kökü. İmza yalnızca VDF içeriğini koruyor; kurulum kökünü korumuyor. Yani imzalı betiğin kendisi bozulmuyor, ancak betiğin çalıştıracağı dosyanın nerede aranacağı saldırgan tarafından belirlenebiliyor.
Saldırı zinciri
Yayımlanan PowerShell tabanlı kanıt kodu şu adımları izliyor:
- Steam Client Service ile yerel süreçler arası iletişim kanalı üzerinden bağlantı kurulur.
- IClientInstallUtils::AddInstallScriptToWhiteList çağrısına gerçek ve imzalı bir VDF dosyası, yanına da saldırganın seçtiği bir kurulum kökü verilir. Servis bu köke güvenmeye başlar.
- Saldırgan, kendi yazma yetkisi olan bu dizine launcher.exe adıyla istediği çalıştırılabilir dosyayı kopyalar; kanıt kodunda bu dosya Windows komut isteminin (cmd.exe) bir kopyasıdır.
- IClientInstallUtils::RunInstallScript çağrısıyla imzalı betik çalıştırılır ve servis, kopyalanan dosyayı SYSTEM yetkisiyle başlatır.
Zincirin dikkat çeken yanı hiçbir adımda imza doğrulamasının kırılmaması. Saldırgan imzayı taklit etmiyor, imzalı dosyayı değiştirmiyor ve UAC'yi atlatmıyor; yalnızca imzanın kapsamadığı bir parametreyi kontrol ediyor.
Kimler etkileniyor?
| Açık | BrokenPipe (CVE atanmadı) |
|---|---|
| Bileşen | Steam Client Service — steamservice.exe |
| Tür | Yerel yetki yükseltme (imza kapsamı boşluğu) |
| Etki | Standart kullanıcı, NT AUTHORITY\SYSTEM olarak kod çalıştırabiliyor |
| Etkilenen sürüm | Steam 10.96.30.42 ve ilgili 64-bit Windows 10/11 derlemeleri |
| Gereksinim | Hedefte standart kullanıcı olarak kod çalıştırma; kurulu ve çalışan Steam servisi |
| Gerekmeyenler | Yönetici parolası, UAC onayı, Steam girişi, oyun başlatma |
| Kanıt kodu | 14 Eylül 2026 (araştırmacı KillaBoi) |
| Yama | Yok — Valve'dan kamuya açık bildirim yapılmadı |
Bu bir uzaktan kod çalıştırma açığı değil; saldırganın hedefte zaten sınırlı bir dayanağı olması gerekiyor. Buna karşılık pratikte oltalama, tarayıcı açığı veya zararlı bir kurulum dosyasıyla elde edilen "sıradan kullanıcı" erişimi, saldırı zincirlerinin en yaygın ilk adımıdır. BrokenPipe, o ilk adımın doğrudan makinenin tamamının devralınmasına dönüşmesini sağlıyor.
Kurumsal ortamlar için neden önemli
Steam, çoğu kurumda "kişisel yazılım" olarak görülür ve güvenlik envanterine girmez. Oysa ortak kullanılan laboratuvar makineleri, kiosk sistemleri, eğitim salonları, evden çalışma dizüstü bilgisayarları ve oyun içeriği üreten stüdyolarda kurulu Steam istemcileri bulunur. Her biri, ayrıcalıklı bir servis aracılığıyla kullanıcıdan SYSTEM'e açılan bir yol taşıyor.
Valve'a yapılan HackerOne bildiriminin "yinelenen" olarak işaretlendiği aktarılıyor. Açığın Mart 2026'dan beri bilindiği ve hâlâ kapatılmadığı iddiası, sorunun kısa vadede çözülmeyebileceğine işaret ediyor.
Ne yapmalı?
- Kurumsal ve ortak kullanılan Windows sistemlerinde Steam kurulumlarının envanterini çıkarın; iş gereksinimi olmayan yerlerden kaldırın.
- Steam kalması gereken makinelerde Steam Client Service'i (steamservice.exe) gözden geçirin; ihtiyaç yoksa servisi devre dışı bırakıp Steam'i yalnızca kullanıcı bağlamında çalıştırmayı test edin.
- steamservice.exe sürecinden türeyen beklenmeyen alt süreçleri (özellikle cmd.exe, powershell.exe, wscript.exe) tespit kuralı hâline getirin.
- Kullanıcının yazabildiği dizinlerden SYSTEM yetkisiyle başlatılan çalıştırılabilir dosyalar için uyarı üretin; bu kural BrokenPipe dışındaki birçok yetki yükseltme tekniğini de yakalar.
- Uygulama denetimi (WDAC veya AppLocker) ile kullanıcı profili ve geçici dizinlerden çalıştırmayı kısıtlayın; launcher.exe gibi genel adların güvenilir kabul edilmesini engelleyin.
- Yerel yönetici haklarını dağıtmayın; BrokenPipe zaten yönetici olmayan kullanıcıyı hedeflediği için, en az yetki ilkesi tek başına yeterli değildir ancak diğer zincirleri kısaltır.
- Steam'i güncel tutun. Güncellemenin bu açığı kapattığı doğrulanmadı, ancak Valve sessiz bir düzeltme yayımlarsa ilk koruma oradan gelecektir.
Değerlendirme
BrokenPipe, kod imzalamanın neyi garanti ettiğinin sıkça yanlış anlaşıldığını gösteriyor. İmza, bir dosyanın içeriğinin değişmediğini kanıtlar; o dosyanın hangi girdilerle, hangi dizinde ve kimin kontrolündeki yollarla çalıştırılacağını kanıtlamaz. Ayrıcalıklı bir servis, imzalı bir betiğe güvenirken betiğin dışındaki parametreleri de doğrulamak zorundadır.
Tüketici yazılımlarının kurumsal uç noktalarda ayrıcalıklı servisler bırakması da ayrı bir risk kalemi. Güncelleyici, kurulum yardımcısı ve oyun servisi türü bileşenler, saldırganlar için sistemde hazır bekleyen yetkili yardımcı süreçlerdir. Yama gelene kadar en gerçekçi savunma, bu servislerin gereksiz yerlerde hiç bulunmaması ve uygulama denetimiyle sınırlanmasıdır.
Görsel künyesi: Kapak görseli "Valve and Microsoft buildings in Bellevue" (SounderBruce, CC BY-SA 2.0, Wikimedia Commons); yazı içi görsel "Gaming PC-Setup - Astaroth - The Completed System" (Brian Wong, CC BY-SA 2.0, Wikimedia Commons). Görseller olayın kendisine ait kareler değildir.
TR Siber Ekibi