Penligent Başlık

ACİL: Windows PowerShell 0-Day (CVE-2025-54100) Derin Dalış ve Kritik Yama Kılavuzu

Giriş: "İsviçre Çakısı" Sizi Kestiğinde

9 Aralık 2025 tarihinde, Microsoft Güvenlik Yanıt Merkezi (MSRC) aylık "Salı Yaması" sırasında bir bomba patlattı: kritik bir Windows PowerShell'de 0 Günlük Güvenlik Açığıolarak izlenir. CVE-2025-54100.

ile CVSS puanı 7.8 (Yüksek)Bu güvenlik açığı, eski sunuculardan en son Windows 11 yapılarına kadar Windows ekosisteminin büyük bir bölümünü etkilemektedir. PowerShell işletim sistemi yapısına derinlemesine entegre edildiğinden, bu açık saldırganlara tehlikeli bir "Arazide Yaşama" (LotL) fırsatı sunarak güvenilir, yerel sistem araçlarını kullanarak kötü amaçlı kod çalıştırmalarına olanak tanır.

İster bir sunucu çiftliğini yöneten bir SysAdmin ister bir güvenlik araştırmacısı olun, bu yamayı görmezden gelmek bir seçenek değildir. Bu kılavuz, hatanın teknik bir dökümünü, resmi yama matrisini ve komut dosyalarınızın güvenli bir şekilde çalışmasını sağlamak için gerekli kod yeniden düzenlemesini sağlar.

Windows PowerShell 0-Day CVE-2025-54100

Teknik Derin Dalış: CVE-2025-54100'ün Mekaniği

Bu sorunun ciddiyetini anlamak için altta yatan zayıflığa bakmalıyız: CWE-77 (Bir Komutada Kullanılan Özel Unsurların Uygunsuz Şekilde Etkisiz Hale Getirilmesi).

Güvenlik Açığı Mantığı

Temel sorun, Windows PowerShell'in kullanıcı girdisini komut satırı yorumlayıcısına aktarmadan önce nasıl temizlediğinde yatmaktadır. Bir uygulama veya komut dosyası, uygun filtreleme olmadan güvenilmeyen girdiyi kullanarak bir PowerShell komutu oluşturduğunda, aşağıdakilere kapı açar Komut Enjeksiyonu.

Saldırı Senaryosu (Kavramsal Kavram Kanıtı)

Yasal Uyarı: Aşağıdaki kod yalnızca eğitim amaçlıdır.

Kullanıcı girdisine dayalı olarak günlük dosyalarını okumak için tasarlanmış meşru bir yönetim betiği düşünün:

PowerShell

`# HASSAS PATTERN $UserInput = Read-Host "Günlük dosya adını girin"

Windows PowerShell 0-Day CVE-2025-54100 PoC

Girdi doğrudan komut dizesine birleştirilir

Invoke-Expression "Get-Content C:\Logs\$UserInput"`

Standart bir senaryoda, bir kullanıcı app.log dosyasına girer.

Ancak, bir saldırgan yamalanmamış bir sistemde CVE-2025-54100'den yararlanırsa, giriş yapabilir:

app.log; Start-Process calc.exe

Ayrıştırıcı, noktalı virgülü nötralize etmekte başarısız (;), bunu iki ayrı komut olarak yorumlar:

  1. Günlüğü oku: Get-Content C:\\Logs\\app.log
  2. Yükü Yürüt: Başlat-İşlem calc.exe (Gerçek bir saldırıda bu bir fidye yazılımı indiricisi veya bir C2 işaretçisi olabilir).

Saldırı Vektörü: "Yerel" ama Ölümcül

Microsoft bunu "Yerel" saldırı vektörü olarak sınıflandırmaktadır. Bu, bir saldırganın genellikle şunlara ihtiyacı olduğu anlamına gelir:

  • Sisteme düşük seviyeli erişim, VEYA
  • Bir kullanıcıyı kötü amaçlı bir dosyayı çalıştırmaya ikna etmek (Sosyal Mühendislik/Kimlik Avı).

Başarılı olduklarında, ayrıcalıkları yükseltmek veya ağda yanlara doğru hareket etmek için bu enjeksiyondan yararlanabilirler.

Windows PowerShell 0-Day CVE-2025-54100 PoC

Yama Matrisi: Kritik Güncellemelerinizi Belirleyin

Microsoft acil durum güvenlik güncelleştirmelerini yayınladı. BT Yöneticileri aşağıdaki KB'leri WSUS, SCCM veya manuel indirme yoluyla derhal önceliklendirmelidir.

İşletim Sistemi SürümüCiddiyetKritik KB Yama KimliğiDağıtım Notları
Windows Server 2025YüksekKB5072033Yeniden Başlatma Gerektirir
Windows 11 (24H2 / 25H2)YüksekKB5074204Kümülatif Güncelleme
Windows Server 2022YüksekKB5074204Öncelikli Kurulum
Windows Server 2019YüksekKB5074353
Windows 10 (22H2)YüksekKB5071546Yalnızca güvenlik güncellemesi mevcut
Windows Server 2012 R2OrtaKB5071544Yalnızca ESU (Genişletilmiş Destek)

Kritik Uyarı: Bu yama çekirdek PowerShell ikili dosyalarını değiştirdiğinden, sistemin yeniden başlatılması zorunludur. Hizmet kesintilerini önlemek için bakım pencerelerini buna göre planladığınızdan emin olun.

"Gotcha": Yama Sonrası Bozuk Komut Dosyalarını Düzeltme

Güvenlik genellikle kolaylık pahasına gelir. CVE-2025-54100 için güncellemeler (özellikle KB5074204 ve KB5074353) web istekleri üzerinde daha sıkı güvenlik kontrolleri getirmektedir.

Sorun: Invoke-WebRequest Arızalar

Yamadan sonra, otomasyon komut dosyalarınızın aşağıdaki hata ile başarısız olduğunu fark edebilirsiniz:

"Internet Explorer motoru mevcut olmadığından veya Internet Explorer'ın ilk başlatma yapılandırması tamamlanmadığından yanıt içeriği ayrıştırılamıyor."

Bunun nedeni Microsoft'un saldırı yüzeyini azaltmak için PowerShell ile eski Internet Explorer ayrıştırma motoru arasındaki bağlantıyı nihayet kesmesidir.

Düzeltme: Kod Yeniden Düzenleme

DOM ayrıştırması için IE'ye güvenmeyi bırakmak için komut dosyalarınızı güncellemelisiniz. Çözüm, DOM ayrıştırması için Temel Ayrıştırma Mod.

Kırık Kod (Legacy)

PowerShell

# Bu, artık kısıtlanmış veya kaldırılmış olan IE motoruna dayanır $response = Invoke-WebRequest -Uri "" Write-Output $response.Content

Güvenli Kod (En İyi Uygulama)

PowerShell

# Hız, güvenlik ve uyumluluk için -UseBasicParsing anahtarını ekler $response = Invoke-WebRequest -Uri "" -UseBasicParsing Write-Output $response.Content

Yöneticiler için Profesyonel İpucu:

Kod havuzunuzu taramak için IDE'nizde (VS Code / ISE) bir regex araması kullanın:

  • Bul: Invoke-WebRequest\\s+(?!.*-UseBasicParsing)
  • Eylem: Ekleme UseBasicParsing bu örneklere.

Derinlemesine Savunma: Yamanın Ötesinde

Yamalama reaktiftir. Gelecekteki 0 günlere karşı korunmak için PowerShell için bir "Derinlemesine Savunma" stratejisi benimsemelisiniz.

A. Kısıtlı Dil Modunu Zorla

Yönetici olmayan kullanıcılar için PowerShell şu konumda çalıştırılmalıdır Kısıtlı Dil Modu. Bu, Windows API'lerini çağırma veya rastgele .NET kodu derleme yeteneğini ciddi şekilde sınırlar.

PowerShell

`# Geçerli modunuzu doğrulayın $ExecutionContext.SessionState.LanguageMode

Standart kullanıcılar için hedef çıktı: ConstrainedLanguage`

B. Komut Dosyası Bloğu Günlüğünü Etkinleştir

Saldırganlar PowerShell'i severler çünkü bellekte çalışır (dosyasız). Onları yakalamak için, çalıştırılan gerçek kodu günlüğe kaydetmelisiniz.

  • GPO Yolu: Bilgisayar Yapılandırması > Yönetim Şablonları > Windows Bileşenleri > Windows PowerShell > PowerShell Komut Dosyası Bloğu Günlüğünü Aç.

C. SIEM Algılama Kuralları

Potansiyel istismar girişimlerini işaretlemek için SOC izleme kurallarınızı güncelleyin:

  • Süreç Hiyerarşisi: Eğer uyarı powershell.exe Office uygulamaları (Word, Excel) tarafından ortaya çıkarılmıştır.
  • Şüpheli Tartışmalar: Ağır bir şekilde gizlenmiş komutları veya EncodedCommand.
  • Olay Kimliği 4104: Kod bloğu günlüklerini aşağıdaki gibi anahtar kelimeler için tarayın Invoke-Expression veya IEX şebeke çağrıları ile birlikte.

Sonuç

CVE-2025-54100'ün ifşa edilmesi çarpıcı bir hatırlatma işlevi görmektedir: Kimlik ve Konfigürasyon yeni perimetre. Acil çözüm Aralık KB'lerini (KB5072033/KB5074204) uygulamak olsa da, uzun vadeli çözüm ortamınızı yerel araçların kötüye kullanımına karşı güçlendirmektir.

Eylem Planınız:

  1. Denetim: Ağınızı yamalanmamış Windows uç noktaları için tarayın.
  2. Yama: Aralık güvenlik güncellemelerini hemen dağıtın.
  3. Yeniden düzenle: Otomasyon komut dosyalarınızı kullanmak için güncelleyin UseBasicParsing.

Güvende kalın ve kabuklarınızı güvende tutun.

Gönderiyi paylaş:
İlgili Yazılar