Açık Nasıl Tetikleniyor?
PHP'nin açıklamasına göre güvenlik açığına cURL eklentisi aracılığıyla ulaşmak mümkün. cURL, HTTP yanıtlarını otomatik olarak açarken bu kusurlu koda dokunuyor. cURL bu özelliği varsayılan olarak kapalı tutuyor; ancak uygulamalar ve HTTP istemci kütüphaneleri bunu etkinleştirebiliyor. PHP kodunda CURLOPT_ENCODING seçeneği otomatik açmayı devreye sokuyor; boş bir değer atandığında cURL'ün desteklediği her sıkıştırma biçimi kabul ediliyor.Popüler PHP HTTP istemci kütüphanesi Guzzle bu noktada öne çıkıyor. 7.16.1 ve 8.3.1 sürümlerinin kaynak koduna göre Guzzle, cURL üzerinden gönderdiği isteklerde bu boş değeri varsayılan olarak ayarlıyor. PHP'nin kendi açıklamasıyla birlikte değerlendirildiğinde, Guzzle'ın varsayılan ayarlarını koruyan bir uygulama geçen haftanın Windows derlemelerinde açığa ulaşma koşulunu karşılıyor. The Hacker News'in belirttiğine göre bu durum Windows ortamında bizzat test edilmedi.
Etkilenen Sürümler ve Yeni Derlemeler
Yeni derlemeler, 21 Ekim'de yayımlanan ve PHP2Shell uzaktan kod çalıştırma açıklarını kapatan sürümlerle aynı PHP kaynak kodunu kullanıyor; dolayısıyla o düzeltmeler de geçerliliğini koruyor. Fark şu: önceki paketler Brotli 1.2.0 içeriyordu; yeni derlemeler ise açığın kapatıldığı Brotli 1.2.1 sürümüne geçiş yaptı. PHP her paketi için bileşen listesi niteliğinde bir yazılım malzeme listesi (SBOM) yayımlıyor. Geçen haftanın x64 Non Thread Safe derlemelerine ait bu listeler, etkilenen sürümlerden biri olan Brotli 1.2.0'ı gösteriyordu.PHP sürümünün kendisi değişmediğinden php -v komutu güncelleme öncesi ve sonrasında aynı numarayı gösteriyor. Yeni derlemeyi tanımlamanın yolu dosya adındaki -1 son ekine bakmak; örneğin php-8.5.12-1-nts-Win32-vs17-x64.zip gibi. İndirme sayfasında yayımlanan SHA-256 karma değeri de yeni derlemenin doğrulanmasını sağlıyor.
Saldırı Senaryosu ve Risk Değerlendirmesi
Olası bir saldırı, PHP uygulamasının iletişim kurduğu bir sunucudan gelen özel olarak hazırlanmış sıkıştırılmış bir yanıt biçiminde gerçekleşebilir. Açığı bulan araştırmacılar OpenAI bünyesinde çalışıyor. Google, Brotli 1.2.1, 1.1.1 ve 1.0.10 sürümlerini açığın ilk kez kamuoyuyla paylaşıldığı 21 Ekim'de yayımladı. Node.js, Bun ve Brotli'nin kendi kopyasını barındıran diğer yazılımlar da düzeltme yayımladı. Imperva araştırmacıları, açığı resmi bir Node.js derlemesinde birden fazla deneme sonucunda çalıştırmayı başardı.Güvenlik açığı, CVSS 4.0 ölçeğinde Google tarafından 10 üzerinden 9,2 ile Kritik; CVSS 3.1 ölçeğinde ise Red Hat tarafından 8,1 ile Önemli olarak derecelendiriliyor. CISA'nın 23 Ekim tarihli değerlendirmesi o güne kadar herhangi bir istismar kaydedilmediğini ortaya koyuyor ve açık, o günkü güncelleme itibarıyla Bilinen İstismar Edilen Güvenlik Açıkları kataloğunda yer almıyordu. PHP'nin duyurusunda henüz gerçekleşmiş bir saldırıdan söz edilmiyor.

Yazılım ve Uygulamalar
Yazılım ve Uygulamalar
Yazılım ve Uygulamalar
Yorumlar (0)
Yorum yapmak için giriş yapmalısınız.