Bugün, 21 Ekim 2026'da, hem PHP hem de Node.js güvenlik güncellemeleri yayımladı. Özellikle PHP'deki açıklar ciddi: Güncelleme, saldırganların oturum açmadan web sunucusunda kod çalıştırmasına izin veren iki kritik açığı kapatıyor. Üstelik yama yayımlanmadan önce bu açıkları kullanan saldırılar bildirilmişti.
WireBoard'u güncelledik. Hiçbir kesinti yaşanmadı. WireBoard hesabınız veya takip kodunuz için herhangi bir işlem yapmanız gerekmiyor.
Ancak kendi web siteniz veya uygulamanız PHP ya da Node.js kullanıyorsa okumaya devam edin ve güncellemeyi bugün yapın.
Kısaca
Geçmeniz gereken sürüm | Önem derecesi | |
|---|---|---|
PHP | 8.5.12, 8.4.27, 8.3.36 veya 8.2.35 (ya da sağlayıcınızın yamayı içeren paketi) | Kritik (CVSS 9,2), kimlik doğrulama gerektirmeden uzaktan kod çalıştırma |
Node.js | 26.12.1, 24.22.1 veya 22.23.4 | Yüksek |
WordPress, Magento, Drupal, Laravel veya başka bir PHP uygulaması mı kullanıyorsunuz? O hâlde siteniz PHP ile çalışıyor. Hemen güncelleyin.
Paylaşımlı veya yönetilen hosting mi kullanıyorsunuz? PHP yamasını hosting sağlayıcınız uygular. Uyguladıklarını teyit edin.
PHP'yi güncelledikten sonra PHP-FPM veya Apache'yi yeniden başlatın. Aksi hâlde eski sürüm çalışmaya devam eder.
Desteği sona ermiş bir sürüm mü kullanıyorsunuz (PHP 8.1 veya öncesi; Node.js 25, 23, 20 veya öncesi)? Bu sürümler için resmî yama yayımlanmayacak. Desteklenen bir sürüme geçişi planlayın.
Ne oldu?
PHP: "PHP2Shell" (CVE-2026-109618 ve CVE-2026-109619)
PHP ekibi, CVSS v4.0 ölçeğinde her biri 9,2 puan alan iki kritik güvenlik açığı için yama yayımladı:
CVE-2026-109618: PHP bir isteği işlerken belleği tükendiğinde oluşan bellek bozulması üzerinden uzaktan kod çalıştırma.
CVE-2026-109619: Güncelliğini yitirmiş global durum verileri üzerinden uzaktan kod çalıştırma.
Her iki açık da varsayılan yapılandırmada, kimlik doğrulama gerektirmeden uzaktan tetiklenebiliyor. Ayrıntılar, planlanan güncellemeden bir gün önce internete sızdı. Bu nedenle güvenlik şirketleri, yama henüz yayımlanmadan PHP sitelerine yönelik saldırılar ve açık arama girişimleri tespit etti. Bazı şirketler de güncelleme yapana kadar tedbir amacıyla hizmetlerini çevrimdışı bıraktı.
Desteklenen tüm PHP sürüm serileri etkileniyor. 8.2.35, 8.3.36, 8.4.27 ve 8.5.12'den önceki sürümler bu açıkları içeriyor.
Node.js: Ekim 2026 güvenlik güncellemesi
Node.js, 26.x, 24.x ve 22.x sürüm serileri için 10 güvenlik açığını kapatan güncellemeler yayımladı. Bu açıkların 4'ü yüksek önem derecesinde. Öne çıkanlar:
CVE-2026-111497: Brotli sıkıştırmasını açan bileşende, uzaktan kod çalıştırmaya yol açabilecek bir sınır dışı yazma açığı. Uygulamanızın Brotli ile sıkıştırılmış veri döndüren bir sunucuya
fetch()çağrısı yapması bile bu açığı tetikleyebilir.CVE-2026-105483 / CVE-2026-106069: IP adreslerinin alışılmadık yazım biçimleriyle TLS ana makine adı doğrulamasını atlatma açıkları.
CVE-2026-105482:
dns.resolve, kodunuzun kontrol ettiği addan farklı bir adı çözümleyebiliyor.
Biz ne yaptık?
Her iki güncellemeyi de bugün WireBoard altyapısının tamamına uyguladık. Hiçbir kesinti yaşanmadı, veriler etkilenmedi. WireBoard'u her zamanki gibi kullanmaya devam edebilirsiniz.
Siz de etkileniyor musunuz?
Sizin web siteniz, uygulamanız veya sunucunuz aşağıdakilerden birini kullanıyorsa işlem yapmanız gerekiyor:
Doğrudan ya da WordPress, WooCommerce, Magento, Drupal, Joomla, Laravel veya Symfony gibi bir içerik yönetim sistemi veya framework üzerinden PHP.
Örneğin Next.js, Nuxt, Express veya NestJS uygulamasında ya da Node çalıştıran herhangi bir backend hizmetinde veya derleme sunucusunda Node.js.
Emin değil misiniz? Geliştiricinize veya hosting sağlayıcınıza sorun. Şu soruyu sormanız yeterli: "Sitemiz PHP veya Node.js kullanıyor mu? Bugün yayımlanan güvenlik güncellemesi uygulandı mı?"
Sürümünüzü nasıl kontrol edersiniz?
PHP
Önemli olan, web sunucunuzun kullandığı sürümdür. Terminalde php -v komutu, komut satırındaki PHP sürümünü gösterir. Bu ikisi farklı olabilir.
Sitenizin web kök dizininde
info.phpadlı bir dosya oluşturup içine<?php phpinfo();yazın.Dosyayı tarayıcınızda açın ve en üstteki PHP Version değerini kontrol edin.
İşiniz biter bitmez dosyayı silin. Bu dosya, sunucunuzun tüm yapılandırmasını açığa çıkarır.
cPanel ve Plesk gibi birçok hosting kontrol panelinde de PHP sürümünü görebilirsiniz.
Linux dağıtımlarının paketleriyle ilgili not: Ubuntu, Debian, RHEL ve benzeri dağıtımlar, yamayı çoğu zaman sürüm numarasını değiştirmeden mevcut pakete uygular. Böyle bir durumda paketin değişiklik günlüğünde CVE numaralarını arayın (aşağıya bakın).
Node.js
node -v
Çıktıda v26.12.1, v24.22.1, v22.23.4 veya aynı serideki daha yeni bir sürüm görünüyorsa yama uygulanmış demektir.
PHP nasıl güncellenir?
Sunucunuzdaki PHP kurulumuna uygun bölümü izleyin.
Paylaşımlı veya yönetilen hosting
PHP'yi hosting sağlayıcınız yönetir ve yamayı da o uygular. Sağlayıcınızın hizmet durumu sayfasını veya duyurularını kontrol edin. Ardından yukarıda anlatıldığı gibi phpinfo() ile sürümü doğrulayın. Kontrol paneliniz PHP sürümü seçmenize izin veriyorsa ve 8.1 veya öncesini kullanıyorsanız, içerik yönetim sisteminizin ve eklentilerinizin uyumlu olduğundan emin olduktan sonra 8.2 veya daha yeni bir sürüme geçin.
Ubuntu / Debian
sudo apt update
# replace 8.3 with the PHP branch you use
sudo apt install --only-upgrade 'php8.3-*'
# confirm the fix is included
apt changelog php8.3-fpm | grep -E 'CVE-2026-10961(8|9)'
Son komut çıktı vermiyorsa yama henüz dağıtımınızın paket deposuna ulaşmamış demektir. Ubuntu güvenlik duyurularını veya Debian güvenlik takip sayfasını kontrol edip daha sonra yeniden deneyin. Ondřej Surý'nin PHP paketlerini kullanıyorsanız aynı adımlarla o depodan güncelleme yapın.
RHEL / AlmaLinux / Rocky Linux
dnf module list php # see which PHP stream you're on
sudo dnf upgrade 'php*'
# confirm the fix is included
rpm -q --changelog php-fpm | grep -E 'CVE-2026-10961(8|9)'
Remi deposunu kullanıyorsanız güncellemeyi oradan yapın.
Docker
Yeni bir imaj indirmek, çalışan konteynerleri güncellemez. İmajı indirin, yeniden derleyin ve konteynerleri yeniden oluşturun:
docker pull php:8.3-fpm # use your tag
docker compose build --pull
docker compose up -d
İşi garantiye almak için Dockerfile dosyanızda yama içeren sürümü sabitleyin (örneğin FROM php:8.3.36-fpm).
Kaynak koddan derleme veya Windows
Yamayı içeren sürümü php.net/downloads adresinden indirin.
Ardından PHP'yi yeniden başlatın
Bu adım kolayca gözden kaçabiliyor. Çalışan süreçler, yeniden başlatılana kadar eski PHP sürümünü kullanmaya devam eder:
# PHP-FPM (Debian/Ubuntu; replace 8.3 with your branch)
sudo systemctl restart php8.3-fpm
# PHP-FPM (RHEL family)
sudo systemctl restart php-fpm
# Apache with mod_php
sudo systemctl restart apache2 # or httpd on RHEL
Ardından phpinfo() ile yeni sürümün devreye girdiğini tekrar kontrol edin.
"Sadece bir ayarı değiştirsem olmaz mı?"
Hayır. İlk etapta session.upload_progress.enabled ayarını kapatmak gibi bazı geçici çözümler paylaşıldı. Bunlar riski yalnızca azaltır. PHP çekirdek geliştiricilerinden biri de kamuya açık bir açıklamasında tek gerçek çözümün PHP'yi güncellemek olduğunu belirtti. Geçici bir önlem aldıysanız güncelleme tamamlanana kadar koruyun, ancak güncellemeyi mutlaka yapın.
Node.js nasıl güncellenir?
Kurulum yöntemi | Güncelleme adımları |
|---|---|
nvm |
|
Resmî yükleyici | Kullandığınız serinin en güncel sürümünü nodejs.org/en/download adresinden indirin. |
Docker | Yamayı içeren sürümün etiketini sabitleyin (örneğin |
Homebrew |
|
Linux paket yöneticisi | Dağıtımınızın veya NodeSource'un deposundan her zamanki gibi güncelleyin. |
Hosting platformu (Vercel, Netlify, Heroku, Render vb.) | Platformunuzun çalışma ortamı ayarlarını ve duyurularını kontrol edin. Çoğu platform yamalı sürümleri otomatik olarak devreye alır, ancak uygulamanızı yeniden dağıtmanız gerekebilir. |
Güncellemeden sonra uygulamanızı yeniden başlatın (veya yeniden dağıtın) ve node -v ile sürümü doğrulayın.
Kullandığınız sürümün desteği sona erdiyse
Resmî yamalar yalnızca desteklenen sürümler için yayımlanıyor:
PHP: 8.2, 8.3, 8.4 ve 8.5. PHP 8.1 ve öncesi için resmî güncelleme yayımlanmıyor. Bazı Linux dağıtımları ve ücretli uzun süreli destek sağlayıcıları yamaları eski sürümlere de uyguluyor. Sağlayıcınızın bunu yapıp yapmadığını kontrol edin. Böyle bir destek yoksa güvenli yol, desteklenen bir sürüm serisine geçmek. PHP 8.2 için güvenlik güncellemelerinin de 31 Aralık 2026'da sona ereceğini unutmayın.
Node.js: 22.x, 24.x ve 26.x. 25, 23 ve 20 gibi sürüm serilerinin desteği sona erdi. Bunlar için yama yayımlanmayacak.
Hemen güncelleme yapamıyorsanız o zamana kadar sitenizi bir web uygulaması güvenlik duvarının arkasına almayı veya erişimi kısıtlamayı değerlendirin.
Ayrıntılı bilgi
Resmî duyurular
Yararlı rehberler
GoDaddy: Önemli PHP güvenlik güncellemesi, web sitesi sahipleri ne yapmalı? (sade bir dille genel bakış)
Help Net Security: PHP2Shell açıkları kapatıldı, hemen güncelleyin
ma.ttias.be: PHP yamaları nasıl uygulanır? (dağıtımlara göre güncel durum)
Lilting: Node.js Ekim 2026 güvenlik düzeltmelerinin ayrıntıları (kapsamlı teknik inceleme)