22 Ekim 2026 · Son güncelleme: 23 Ekim 2026
PHP yazılımında, CVE-2026-109618 ve CVE-2026-109619 numaralı iki kritik güvenlik açığı tespit edilmiştir. Kamuoyunda PHP2Shell adıyla anılan bu açıklar, kimlik doğrulaması gerektirmeden, özel hazırlanmış bir web isteğiyle sunucuda uzaktan kod çalıştırılmasına (RCE) yol açabilir.
PHP Projesi, web isteklerine hizmet veren tüm PHP kurulumlarının risk altında olduğunu bildirmiştir: PHP-FPM, Apache mod_php, php-cgi, FrankenPHP ve LiteSpeed. En yüksek risk Apache mod_php kullanan sistemlerdedir. Bazı güvenlik firmaları, açıklar kamuya duyurulmadan önce de dahil olmak üzere istismar girişimleri gözlemlediklerini bildirmiştir. Güncellemeyi ertelemeyin.
Düzeltilmiş PHP sürümleri
Açıklar şu sürümlerde giderilmiştir: 8.2.35, 8.3.36, 8.4.27 ve 8.5.12. Linux dağıtımları, sürüm numarasını değiştirmeden de güvenlik yaması uygulayabilir; bu nedenle yalnızca sürüm numarasına değil, paketin değişiklik günlüğüne de bakın (aşağıda gösterilmiştir).
Önce kullandığınız PHP sürümünü öğrenin. Komut satırında php -v komutunu çalıştırın. Web sitenizi çalıştıran PHP, komut satırındakinden farklı bir sürüm olabilir; emin olmak için sunucu yönetim panelinizden ya da bir phpinfo() sayfasından da kontrol edin.
Linux sunucular için (Debian ve Ubuntu)
- Paket listesini yenileyin:
sudo apt update
- Güncellemeleri kurun:
sudo apt upgrade
Yalnızca PHP paketlerini güncellemek isterseniz (sürüm numarasını kendi sürümünüzle değiştirin):
sudo apt install --only-upgrade php8.3-fpm php8.3-cli php8.3-common
- Sunucuyu yeniden başlatın. Güncellenen PHP, sunucu yeniden başlatıldıktan sonra devreye girer. Yeniden başlatma sırasında sunucudaki hizmetler kısa süre kesintiye uğrar; bu nedenle uygun bir zamanda yapın.
sudo reboot
- Yamanın uygulandığını doğrulayın:
php -v
zcat /usr/share/doc/php8.3-common/changelog.Debian.gz | grep -E "CVE-2026-10961[89]"
İkinci komut, paketin değişiklik günlüğünde iki CVE numarasını arar; yama uygulanmışsa satır görünür. PHP sürümünüz 8.3 değilse komuttaki 8.3 yerine kendi sürümünüzü yazın.
Linux sunucular için (RHEL, AlmaLinux, Rocky Linux)
sudo dnf upgrade --refresh 'php*'
sudo reboot
Remi deposu (rpms.remirepo.net) kullanıyorsanız, PHP Projesi’nin duyurusuna göre bu depoda güncelleme hemen yayınlanmayacaktır; dağıtımın kendi paketlerine geçin veya PHP’yi kaynak koddan derleyin.
Windows sunucular ve bilgisayarlar için
- Sürümünüzü kontrol edin: Komut İstemi veya PowerShell’de
php -vkomutunu çalıştırın. - Düzeltilmiş sürümü indirin: php.net Windows indirme sayfasından kullandığınız dalın düzeltilmiş sürümünü (8.2.35, 8.3.36, 8.4.27 veya 8.5.12) x64 olarak indirin. IIS ile FastCGI kullanıyorsanız Non Thread Safe (NTS), Apache modülü olarak çalıştırıyorsanız Thread Safe (TS) sürümünü seçin. Derlemeler, Visual C++ 2015–2022 Redistributable gerektirir.
- Mevcut PHP klasörünü yedekleyin (
php.inive kullandığınız eklentiler dahil), yeni sürümü açın vephp.iniayarlarınızı ve eklentilerinizi (DLL) yeni sürümle uyumlu olacak şekilde taşıyın. - Web sunucusunu yeniden başlatın: IIS için yönetici olarak açılmış komut isteminde
iisresetkomutunu çalıştırın (ya da ilgili uygulama havuzunu geri dönüştürün). Apache için Windows Hizmetleri’nden Apache servisini yeniden başlatın. - Doğrulayın:
php -vkomutu ve birphpinfo()sayfası, sürümün güncellendiğini göstermelidir.
XAMPP, WampServer veya Laragon gibi hazır paketler kendi PHP’lerini getirir. Paketin PHP’yi güncelleyen son sürümünü kurun ya da yukarıdaki adımlarla paketin içindeki PHP klasörünü değiştirin. Bu paketleri internetten erişilebilir bir sunucuda kullanıyorsanız güncellemeyi öncelikli yapın.
PHP 8.1 ve daha eski sürümleri kullananlar
PHP 8.1 ve daha eski sürümler artık PHP Projesi’nden resmî güncelleme almamaktadır. Bazı Linux dağıtımları ve uzun süreli destek (LTS) sağlayıcıları kendi yama sürümlerini sunar; sağlayıcınızdan teyit alın. Yama sunulmuyorsa desteklenen bir PHP sürümüne geçiş yapın. PHP Projesi ayrıca PHP 7.4, 8.0 ve 8.1 için kaynak koddan derleyenlere yönelik asgari yama dalları yayımlamıştır; bu, yönetilen bir paket güncellemesinin yerini tutmaz.
Hemen güncelleyemiyorsanız geçici önlemler
PHP Projesi’ne göre bu önlemler yalnızca belirli saldırı yollarını azaltır, sistemi güvenli hâle getirmez. Kalıcı çözüm güncellemedir.
session.upload_progress.enabled=0ayarını php.ini, FPM havuzu veya sunucu yapılandırmasında yapın (ini_set()ve.user.iniyeterli değildir). PHP 8.5’te ayrıcafatal_error_backtraces=0yapın.memory_limit=-1değerini, uygulamaların değiştiremeyeceği biçimde (FPM havuzundaphp_admin_valueile) ayarlayın vepost_max_sizedeğerini düşük tutun (dosya yüklemesi gerekmiyorsa 8M, gerekiyorsa 32M;upload_max_filesizebunun altında kalmalıdır).- Ayarları değiştirdikten sonra tüm PHP işlemlerini yeniden başlatın.
Güncellemeden sonra kontrol edin
Güncelleme, açıktan daha önce yararlanılıp yararlanılmadığını göstermez. Güvenlik firmaları istismar girişimlerinin 17 Ekim 2026 tarihine kadar uzandığını bildirmektedir. Bu tarihten itibaren web sunucusu günlüklerinde olağan dışı istekleri, web dizinlerinde beklenmeyen yeni dosyaları ve tanımadığınız süreçleri kontrol edin. Bir şüphe duyarsanız sistemi ağdan ayırıp uzman desteği alın.
Q-smart uygulamanızı da güncelleyin
PHP’yi güncelledikten sonra Q-smart uygulamanızı da güncelleyin; güncel Q-smart sürümü yeni PHP ile uyumlu çalışır. Q-smart güncellemeleri ücretsizdir ve ömür boyu güncelleme desteği sağlıyoruz. Uygulamanızı güncellemek için teknik destek ekibimizden destek alın.
Teknik destek
Bu güncellemeyi kendiniz yapmak istemiyorsanız, Q-smart sistemlerinizin çalıştığı sunucularda yardıma ihtiyaç duyuyorsanız ya da sistemlerinizin etkilenip etkilenmediğinden emin değilseniz, teknik destek almak için firmamızla iletişime geçin: İletişim sayfamız.
Kaynaklar: PHP Projesi’nin resmî duyurusu, “Security advisory: Critical remote code execution vulnerabilities, update now” (21 Ekim 2026). Sürüm indirmeleri: php.net/downloads.php.
