Bir güvenlik açığını kapatan düzeltme, sunucu yöneticileri onu sistemlerine kuramadığı sürece sınırlı bir etkiye sahip. PHP2Shell müdahalesinde gönüllü bakımcı Ondřej Surý, PHP düzeltmelerini Debian ve Ubuntu kullanıcılarının yükleyebileceği paketlere dönüştürerek bu aradaki önemli adımlardan birini üstlendi. Üstelik paketler eski PHP sürümlerini de kapsıyordu.
17
28
Bu çalışma, açık kaynak güvenliğinin yalnızca açığı bulup kodu düzeltmekten ibaret olmadığını hatırlatıyor. Güncellemenin kullanıcıların sistemlerine ulaşması için yazılımın paketlenmesi, dağıtılması ve ardından yöneticiler tarafından kurulması da gerekiyor.
PHP2Shell neydi, PHP hangi sürümleri düzeltti?
PHP2Shell adı, CVE-2026-109618 ve CVE-2026-109619 numaralı iki güvenlik açığı için kullanılıyor. PHP güvenlik ekibinin ön bilgilendirmesinde her iki açık da CVSS v4.0 ölçeğinde 9,2 olarak değerlendirildi.
6
7 Açıklardan yararlanılması, web isteklerine yanıt veren etkilenen PHP sistemlerinde kimlik doğrulaması gerektirmeden uzaktan kod çalıştırılmasına yol açabilirdi.
3
8
PHP, 21 Ekim 2026’da açıkları gideren 8.2.35, 8.3.36, 8.4.27 ve 8.5.12 sürümlerini yayımladı.
3 Bunlar PHP projesinin kendi sürümleriydi. Ancak birçok sistem yöneticisi PHP’yi kaynak koddan derlemek yerine işletim sistemi dağıtımlarının sunduğu, kuruluma hazır paketlerle kullanıyor. Düzeltmenin bu kullanıcılara ulaşması için ayrıca paketlerin hazırlanıp dağıtılması gerekiyordu.
Paket hazırlamak neden önemliydi?
Surý, yirmi yılı aşkın süredir Debian ve Ubuntu için PHP paketlerinin bakımına gönüllü olarak, çoğunlukla boş zamanlarında katkı veriyor.
17
32 Raporlara göre deb.sury.org deposu, PHP’nin yeni sürüm duyurusuyla aynı gün 5.6’dan 8.5’e kadar olan sürümler için yamalı paketler sundu.
28
Eski sürümler bu müdahalenin önemli bir parçasıydı. PHP 8.1 ve daha eski sürümler artık PHP projesinden olağan güncellemeleri almıyordu. PHP ekibi 7.4, 8.0 ve 8.1 için kaynak kod düzeyinde geri taşınmış düzeltmeler yayımladı; başka sağlayıcılar da güncellemeler sundu.
2
33 Surý’nin deposundaki hazır paketler, Debian ve Ubuntu kullanan yöneticiler için eski PHP sürümlerinde de düzeltmeyi kurmanın bir yolunu sağladı.
24
28
Aradaki fark pratik: Kaynak kod yaması, onu uygulayıp yazılımı derleyebilenler için yararlı; hazırlanmış paket ise sistem yöneticisine güncellemeyi kurmak için daha doğrudan bir seçenek sunuyor. Bununla birlikte, kaynaklar paketlerin hazırlandığını gösterse de kaç sunucuya yüklendiğini veya yöneticilerin ne kadar hızlı güncelleme yaptığını ortaya koymuyor.
Sıkışan takvim ve tartışmalı erken yayın
PHP güvenlik ekibi sürümü 21 Ekim için planlamış, açıkların ayrıntılarının kamuya sızması veya aktif istismar kanıtı ortaya çıkması durumunda daha erken yayımlama seçeneğini saklı tuttuğunu belirtmişti.
7 Yayın süreci ayrıca bir zamanlama tartışmasına sahne oldu.
PHP Foundation, Chainguard’ın yamalı konteyner imajlarını koordineli duyurudan altı saatten fazla önce yayımlayarak ambargoyu ihlal ettiğini öne sürdü.
34 Başka bir haberde ise Chainguard CEO’sunun, istismar girişimleri görülmeye başladığı için erken yayın kararı aldığını söylediği aktarılıyor.
36 Bu açıklamalar tarafların farklı görüşlerini yansıtıyor; mevcut kaynaklar tartışmayı kesin biçimde sonuçlandırmıyor.
Açık kaynak güvenliğinin görünmeyen halkası
PHP2Shell yanıtı; güvenlik araştırmacıları, PHP projesi, dağıtım ve paket bakımcıları ile güncellemeleri uygulayan sistem yöneticilerinin katkılarına dayandı. Surý’nin uzun süreli gönüllü emeği, bu zincirin çoğu zaman gözden kaçan paketleme halkasını görünür kıldı.
17
24
Bir düzeltmenin yayımlanması tek başına yeterli değil: Kullanılabilir paketlere dönüşmesi ve sistemlere kurulması gerekiyor. Eski sürümlerin de gündeme geldiği bu olay, açık kaynak ekosisteminin güvenliği için yazılımı sürdüren ve güncelleme yollarını açık tutan bakımcıların önemini bir kez daha gösterdi.
28
33