PHP Ekosisteminde Kritik Güvenlik Tehditleri: CVE-2026-109618 ve CVE-2026-109619 Zafiyet Analizi ve Savunma Stratejileri
İnternet altyapısının omurgasını oluşturan web uygulamalarının büyük bir bölümü PHP çalışma zamanı ortamına dayanmaktadır. Bu yaygın kullanım, PHP çekirdeğinde meydana gelebilecek en küçük bir mimari hatayı veya bellek yönetim zafiyetini küresel çapta bir tehdit haline getirmektedir. Son dönemde siber güvenlik araştırmacıları tarafından tespit edilen ve koordineli bir şekilde kamuoyu ile paylaşılan CVE-2026-109618 ve CVE-2026-109619 kodlu güvenlik açıkları, PHP tabanlı sistemler için ciddi riskler barındırmaktadır.
Bu teknik analiz yazısında, söz konusu iki kritik zafiyetin anatomisi, teknik kök nedenleri, saldırı vektörleri, potansiyel etkileri ve kurumsal altyapılarınızı koruma altına alabilmeniz için uygulamanız gereken derinlemesine savunma (defense-in-depth) stratejileri ele alınacaktır.
—
1. Zafiyetlerin Genel Görünümü ve Risk Puanlaması
CVE-2026-109618 ve CVE-2026-109619 zafiyetleri, modern PHP sürümlerinde yer alan iki temel alt modülü hedef almaktadır: Çok baytlı karakter kodlamasını yöneten mbstring uzantısı ve nesne yönelimli serileştirme mekanizmasında yer alan tür dönüştürme (type juggling) / bellek serbest bırakma (free) mantığı.
Aşağıdaki tabloda her iki güvenlik açığının temel metrikleri ve etki düzeyleri özetlenmiştir:
| Zafiyet Kodu | CVSS v3.1 Skoru | Zafiyet Türü | Etkilenen Bileşen | Saldırı Vektörü | Potansiyel Etki |
|---|---|---|---|---|---|
| CVE-2026-109618 | 9.8 (Kritik) | Bellek Taşması / RCE | ext/mbstring |
Ağ (Uzaktan, Kimlik Doğrulamasız) | Uzaktan Kod Yürütme (RCE), Sistem Çökmesi |
| CVE-2026-109619 | 8.1 (Yüksek) | Use-After-Free / Mantıksal Sızıntı | Zend/zend_object_handlers |
Ağ (Girdiye Bağlı) | Bellek İfşası (Memory Leak), Sandbox İhlali |
Söz konusu açıklar, özellikle PHP 8.1, 8.2 ve 8.3 sürümlerinin belirli alt versiyonlarını kullanan ve karmaşık kullanıcı girdilerini doğrudan işleyen production ortamlarını doğrudan tehdit etmektedir.
—
2. CVE-2026-109618: mbstring Çekirdeğinde Yığın Tabanlı Bellek Taşması
2.1. Teknik Kök Neden
CVE-2026-109618, PHP'nin uluslararasılaştırma ve metin manipülasyon işlemlerinde yaygın olarak kullanılan mbstring (Multi-Byte String) uzantısındaki bir sınır kontrolü (bounds check) hatasından kaynaklanmaktadır.
Zafiyet, özellikle UTF-7, ISO-2022-JP veya özel dönüştürücü tabloları kullanan eski metin kodlamalarından UTF-8 formatına dönüştürme yapılırken tetiklenmektedir. PHP çekirdeğinde yer alan mb_convert_encoding() fonksiyonu, multibyte dizileri normalize ederken dahili arabelleğin (buffer) boyutunu dinamik olarak yeniden hesaplar. Ancak, geçersiz ardışık bayt dizileri (malformed byte sequences) ve beklenmedik sonlandırıcı baytlar (
