PHP2Shell (CVE-2026-109618 & CVE-2026-109619) kimlik doğrulaması olmadan sunucuda kod çalıştırmaya izin veren kritik bir açıktır. CISA, ENISA ve PHP Foundation derhal yama istiyor. Sömürü denemeleri açıklamadan önce (17 Ekim) bile görüldü.
İnternetin yaklaşık %70’ini ayakta tutan PHP motorunda Heartbleed / Log4Shell ölçeğinde bir olay yaşanıyor. Açık WordPress eklentinizde veya Laravel kodunuzda değil; PHP’nin kendi bellek yönetimi ve hata işleme katmanında. Eklenti güncellemek veya WAF kuralı eklemek yetmez — PHP runtime sürümünü yükseltmek zorundasınız.
(her iki CVE)
üzerinde çalışıyor
use-after-free
hemen yama
PHP2Shell nedir?
Wiz, Calif ve OpenAI araştırmacılarının (AI destekli analizle) ortaya çıkardığı bu açıklar, PHP çekirdeğindeki on yıldan uzun süredir var olan bellek güvenliği zafiyetlerine dayanıyor. Saldırgan özel HTTP istekleriyle kimlik doğrulaması olmadan sunucuda keyfi kod çalıştırabilir; bazı senaryolarda diğer isteklere ait şifre, token ve API anahtarlarını bellekten okuyabilir.
Risk en yüksek Apache + mod_php kurulumlarında: istismar, uygulama kodu bile çalışmadan tetiklenebiliyor. PHP-FPM, php-cgi, FrankenPHP ve LiteSpeed de etkileniyor.
OOM bozulması ile RCE
İstek memory_limit sınırına kritik anda ulaşırsa kısmen başlatılmış dahili veri geride kalabiliyor. Temizlik aşamasında bu veri “geçerli” sayılıp bellek bozuluyor → uzaktan kod çalıştırma.
Eski global durum ile RCE
Ölümcül bir hata, worker’ın önceki isteğe ait belleğe işaret etmesine yol açabiliyor. Sonraki istek bu serbest bırakılmış belleği kullanıyor (use-after-free) — RCE ve bellek sızıntısı doğrulandı.
Orhun Ajans notu: Bu açık CMS’ten bağımsız. WordPress, Laravel, Magento veya özel yazılım fark etmez — savunmasız PHP sürümü çalışıyorsa risk aynıdır. Yönettiğimiz sunucularda yama önceliklendirilmiştir; kendi hosting’iniz varsa aşağıdaki planı hemen uygulayın.
Kimler etkileniyor?
- PHP 5.4’ten itibaren neredeyse tüm sürümler Desteklenen hatlarda yama geldi; 8.1 ve öncesi resmi sürüm almıyor (kaynak backport var).
- WordPress, Drupal, Joomla, Laravel, Magento… Uygulama güvenli olsa bile runtime savunmasızsa risk devam eder. Eklenti/tema güncellemesi bu CVE’leri kapatmaz.
- Hosting, VPS, shared sunucu, appliance’lar PHP gömülü cihazlar ve yönetim panelleri de risk altında.
Güvenli sürümler (hemen buraya çıkın)
| Mevcut hat | Durum | Hedef sürüm |
|---|---|---|
| PHP 8.5.x (< 8.5.12) | Savunmasız | 8.5.12 |
| PHP 8.4.x (< 8.4.27) | Savunmasız | 8.4.27 |
| PHP 8.3.x (< 8.3.36) | Savunmasız | 8.3.36 |
| PHP 8.2.x (< 8.2.35) | Savunmasız | 8.2.35 |
| PHP 7.4 – 8.1 | EOL / resmi yok | Kaynak backport veya desteklenen hatta geçiş |
| PHP ≤ 7.3 | EOL, yama yok | Desteklenen PHP 8.x’e migrate |
15 dakikalık müdahale planı
- Sürümü tespit edinSSH veya hosting panelinden çalışan PHP sürümünü kontrol edin.
php -v
# veya: <?php echo PHP_VERSION; ?> - Yamalı sürüme yükseltinapt / yum / remi / ondrej PPA / CloudLinux selector / cPanel MultiPHP ile yamalı sürüme geçin. Dağıtım paketi kullanıyorsanız vendor advisory’yi kontrol edin.
- Tüm PHP worker’larını yeniden başlatınAksi halde eski process’ler savunmasız kalır.
sudo systemctl restart php8.3-fpm
sudo systemctl restart apache2 # veya nginx + fpm - DoğrulayınCanlı ortamda sürümün gerçekten yamalı olduğunu teyit edin. Staging smoke test → production.
- 17 Ekim’den itibaren logları tarayınAmazon Threat Intelligence’a göre ilk deneme 17 Ekim’de görüldü. Worker’ların shell spawn etmesi, beklenmeyen outbound bağlantılar, yeni şüpheli .php dosyaları ve ani crash/OOM spike’larına bakın.
Yama öncesi geçici önlemler
Önemli: Bunlar riski azaltır ama kurulumu güvenli yapmaz. PHP ekibi tek tam çözümün güncelleme olduğunu belirtiyor. Güncelleyemiyorsanız internete açık sistemleri izole edin.
- CVE-2026-109618
memory_limit=-1(uygulamanın override edemeyeceği şekilde). Yan etki: bellek kontrolü zayıflar. - CVE-2026-109619
session.upload_progress.enabled=0ve PHP 8.5’tefatal_error_backtraces=0. Sonra tüm worker’ları restart edin. - WAF (Cloudflare vb.) Bilinen vektörlere karşı kurallar yayımlandı; yalnızca WAF trafiği için ve sadece geçici bariyer.
İzleme checklist’i
- Worker → shell
php-fpm/httpdsürecininsh,bash,curl,wgetbaşlatması. - Web root’ta yeni dosyalar Özellikle webshell .php, gizli dizinler, 17 Ekim sonrası değişen dosyalar.
- Anormal istek kalıpları Büyük POST body, OOM’a zorlayan istekler, tekrarlayan fatal error / worker crash.
Sık sorulan sorular
Sitem WordPress / Laravel; eklenti güncellemesi yeterli mi?
Shared hosting kullanıyorum, ne yapmalıyım?
WAF tek başına korur mu?
Eski PHP 7.4 / 8.0 / 8.1 ne olacak?
Sömürü aktif mi?
Sunucunuzda PHP yaması mı gerekiyor?
Orhun Ajans olarak yönettiğimiz projelerde PHP2Shell yamasını önceliklendiriyoruz. Kendi sunucu veya hosting hesabınız için sürüm kontrolü, güvenli yükseltme ve sonrası izleme desteği sunuyoruz.
Destek alınKaynaklar: PHP Advisory · PHP Foundation · CISA · Wiz · NCSC-NL