PHP2Shell Nedir? PHP'deki Kritik Açık ve Sitenizi Korumak İçin Yapmanız Gerekenler
21 Ekim 2026'da PHP'de, giriş yapmadan sunucuyu ele geçirmeye izin veren iki kritik açık kapatıldı. Adı PHP2Shell. Sitenizin etkilenip etkilenmediğini nasıl anlarsınız, paylaşımlı hostingde ne yapmalısınız, hosting firmanıza ne sormalısınız? Adım adım anlattım.
Kısa Cevap
PHP2Shell, PHP yorumlayıcısının çekirdeğinde bulunan ve 21 Ekim 2026'da kapatılan iki kritik açığın (CVE-2026-109618 ve CVE-2026-109619, CVSS 9.2) ortak adıdır. Saldırgan hiç giriş yapmadan, tek bir istekle sunucuda kod çalıştırabiliyor. Son 10 yılın neredeyse tüm PHP sürümleri etkileniyor. WordPress, Drupal ve Joomla dahil PHP ile çalışan her site risk altında. Çözüm tek: PHP'yi 8.5.12, 8.4.27, 8.3.36 veya 8.2.35 sürümüne (ya da hosting firmanızın yamalı paketine) güncellemek. Eklenti veya site içi ayar bu açığı kapatmaz.
Bu yazıda öğrenecekleriniz
- PHP2Shell, PHP çekirdeğindeki iki kritik açığın (CVE-2026-109618 ve CVE-2026-109619, CVSS 9.2) ortak adıdır ve giriş yapmadan uzaktan kod çalıştırmaya izin verir.
- Son on yılın neredeyse tüm PHP sürümleri etkileniyor; WordPress, Drupal ve Joomla dahil PHP ile çalışan her site risk altında.
- Güvenli sürümler 8.5.12, 8.4.27, 8.3.36 ve 8.2.35; 8.1 ve altı için resmi güncelleme yok.
- Paylaşımlı hostingde PHP'yi hosting firması günceller; yama durumunu mutlaka sorun.
- Eklentiler veya site içi ayarlar açığı kapatmaz; tek tam çözüm PHP güncellemesidir.
- Yama sonrası veritabanı şifresi ve API anahtarları gibi kimlik bilgilerini yenileyin.
WordPress siteniz güncel, eklentileriniz güncel, şifreniz güçlü. Buna rağmen siteniz bu hafta risk altında olabilir. Çünkü sorun sitenizde değil, sitenizin üzerinde çalıştığı PHP'nin kendisinde.
21 Ekim 2026'da PHP ekibi, PHP2Shell adı verilen iki kritik açığı kapatan acil bir güvenlik güncellemesi yayımladı. Açığı bulan Wiz araştırmacılarına göre bunlar PHP'de bugüne kadar bulunan en ciddi açıklar arasında. Güvenlik araştırmacısı Kevin Beaumont ise durumu "son yılların en büyük açıklarından biri, çok sayıda olaya yol açacak" diye özetledi.
Bu yazıda teknik ayrıntılara boğulmadan şu soruları cevaplıyorum: PHP2Shell nedir, siteniz etkileniyor mu, bugün ne yapmalısınız? Özellikle Türkiye'deki çoğu işletmenin kullandığı paylaşımlı hosting ve cPanel tarafına odaklandım.
PHP2Shell nedir?
PHP2Shell, PHP'nin çekirdeğinde bulunan iki ayrı güvenlik açığının ortak adıdır. İki açık da kimlik doğrulama gerektirmeden uzaktan kod çalıştırmaya (unauthenticated RCE) izin veriyor.
| CVE-2026-109618 | CVE-2026-109619 | |
|---|---|---|
| Önem derecesi | CVSS 9.2 (kritik) | CVSS 9.2 (kritik) |
| Sorunun kaynağı | Bellek yetersizliği (out-of-memory) anında bozulan bellek | Bir istekten kalan verinin sonraki istekte yeniden kullanılması |
| Sonuç | Uzaktan kod çalıştırma, sunucu belleğinin okunması | Uzaktan kod çalıştırma |
| Giriş gerekiyor mu? | Hayır | Hayır |
Bu iki açığı sıradan güvenlik açıklarından ayıran üç özellik var:
- Uygulamadan bağımsız: Açık sitenizin kodunda veya eklentilerinizde değil, PHP'nin kendisinde. Kullandığınız yazılım ne olursa olsun, PHP sürümünüz açıklıysa siteniz de açık.
- Tek istek yetiyor: PHP'nin açıklamasına göre saldırı, sitenizin kendi kodu daha çalışmaya başlamadan, tek bir istekle tetiklenebiliyor.
- Bellek okunabiliyor: Saldırgan PHP'nin belleğini okuyabildiği için orada duran veritabanı şifreleri, oturum bilgileri ve API anahtarları açığa çıkabiliyor.
Neden "PHP2Shell" deniyor?
Güvenlik dünyasında "shell" (kabuk), bir sunucuda komut çalıştırabilme yetkisi demektir. Bir saldırganın "shell alması", sunucunun kontrolünü ele geçirmesi anlamına gelir. PHP2Shell adı da açığın PHP üzerinden doğrudan sunucu kontrolüne götürebildiğini anlatıyor.
Hangi siteler etkileniyor?
Kısa cevap: PHP ile çalışan ve güncellenmemiş neredeyse her site.
- Wiz'e göre PHP 5.4'ten bu yana, yani son on yılda yayımlanmış her PHP sürümünde bu açıklardan en az biri var.
- Wiz, açığın en güncel WordPress, Drupal ve Joomla kurulumlarında çalıştığını gösterdi.
- PHP'nin web isteklerini işlediği tüm kurulum türleri etkileniyor: PHP-FPM, Apache mod_php, php-cgi, FrankenPHP ve LiteSpeed. PHP ekibine göre en acil durum Apache mod_php kullanan sunucular.
- Wiz, PHP'nin internetteki sitelerin yaklaşık %70'ini çalıştırdığını belirtiyor.
Türkiye'deki kurumsal sitelerin, e-ticaret sitelerinin ve blogların büyük kısmı WordPress veya başka bir PHP altyapısıyla çalıştığı için bu açık doğrudan Türkiye'deki işletmeleri de ilgilendiriyor.
Güvenli sürümler
| PHP sürüm dalı | Açığın kapatıldığı sürüm | Durum |
|---|---|---|
| PHP 8.5 | 8.5.12 | Destekleniyor |
| PHP 8.4 | 8.4.27 | Destekleniyor |
| PHP 8.3 | 8.3.36 | Destekleniyor |
| PHP 8.2 | 8.2.35 | Destekleniyor (31 Aralık 2026'da sona eriyor) |
| PHP 8.1, 8.0, 7.4 | Resmi sürüm yok | Desteği bitti. PHP ekibi yalnızca kaynak koddan derleyenler için asgari yamalar yayımladı |
| PHP 7.3 ve öncesi | Yama yok | Hemen yükseltilmeli |
Zaman çizelgesi: Açık nasıl ortaya çıktı?
| Tarih | Olay |
|---|---|
| 19 Ağustos 2026 | Wiz araştırmacıları ilk hatayı buldu |
| 20–21 Ağustos 2026 | Drupal ve WordPress üzerinde giriş yapmadan uzaktan kod çalıştırma doğrulandı |
| 24 Ağustos 2026 | Açık PHP güvenlik ekibine bildirildi |
| 21 Eylül 2026 | PHP ekibi koordineli düzeltme sürecini başlattı |
| 17 Ekim 2026 | Amazon'un tuzak sunucuları (MadPot) açığı kullanmaya yönelik bir saldırı girişimi kaydetti. Bu, açık duyurulmadan 4 gün önce |
| 20 Ekim 2026 | PHP, kritik bir güvenlik güncellemesinin geleceğini önceden duyurdu |
| 21 Ekim 2026 | Yamalı sürümler yayımlandı. Cloudflare ilk koruma kurallarını devreye aldı |
17 Ekim'deki girişim önemli: Amazon'un tespitine göre en az bir saldırgan açıktan, kamuoyu duyurulmadan önce haberdardı. Bilgiye nasıl ulaştığı bilinmiyor.
Açığı yapay zekâ buldu
PHP2Shell'in bir ilginç yanı daha var. Wiz, açığı bulurken kendi aracı Wiz Atlas'ın yanında Gemini 4 Argon ve GPT-5.6 Sol modellerini kullandığını açıkladı. Wiz'e göre yapay zekâ sayesinde tek bir araştırmacı, eskiden bir ekibin aylarını alacak işi bir haftada tamamladı. Google DeepMind'ın Gemini güvenlik sorumlusu Raluca Ada Popa da bu çalışmanın "öncü yapay zekânın siber savunmada neden oyunun kurallarını değiştirdiğini" gösterdiğini söyledi. Gemini 4 Argon'un güvenlik yetenekleri için Gemini 4 Argon yazıma göz atabilirsiniz.
Bu, madalyonun iki yüzünü de gösteriyor: Yapay zekâ açıkları savunanlar için daha hızlı bulduruyor, ama aynı hız saldırganlar için de geçerli. Yama ile saldırı arasındaki süre giderek kısalıyor.
Saldırılar başladı mı?
Evet, ilk işaretler var:
- Patchstack, 21 Ekim sabahı hosting iş ortaklarından birden fazla aktif saldırı olayı bildirildiğini açıkladı. Aynı günün öğleden sonrasında kendi verilerinde ise yalnızca "yoklama" (probing) girişimleri görüyordu, ama bunun değişmesini beklediğini belirtti.
- Cloudflare'in teknoloji direktörü Dane Knecht, ilk saldırıları gördüklerini ve ücretsiz plan dahil tüm müşteriler için koruma kuralları yayınladıklarını duyurdu.
- CERT-EU, ilk kavram kanıtı (PoC) kodlarının dolaşıma girdiğini ve bunun saldırı ihtimalini artırdığını belirtti.
- Adli bilişim uzmanı Hal Pomeranz'ın uyarısı ise uzun vadeli riski özetliyor: "Asla yamalanmayacak çok sayıda gömülü kurulum var."
Siteniz etkileniyor mu? 5 dakikalık kontrol
1. PHP sürümünüzü öğrenin
cPanel kullanıyorsanız: "Yazılım" bölümündeki MultiPHP Yöneticisi ya da PHP Sürümünü Seç (CloudLinux PHP Selector) ekranında sitenizin hangi PHP dalını (8.2, 8.3 gibi) kullandığını görebilirsiniz. Ancak bu ekranlar genellikle ara sürümü (8.3.36 gibi) göstermez.
WordPress kullanıyorsanız: Yönetim paneli → Araçlar → Site Sağlığı → Bilgi → Sunucu bölümünde PHP sürümü tam olarak yazar.
Tam sürümü görmek için: Hosting firmanıza sorun ya da teknik ekibinizden, sitenin gerçekten kullandığı PHP sürümünü kontrol etmesini isteyin. Sunucuda komut satırında php -v ile görülen sürüm, web sitesinin kullandığı sürümden farklı olabilir. Bu, sık yapılan bir yanılgı.
2. Sürümü tabloyla karşılaştırın
- 8.5.12, 8.4.27, 8.3.36, 8.2.35 veya üzeri: Yama uygulanmış.
- Bunların altında ama 8.2 ve üzeri: Büyük ihtimalle açık. Hosting firmanızın yamayı farklı numarayla uygulayıp uygulamadığını sorun.
- 8.1 ve altı: Risk yüksek. Sürümün desteği bitmiş durumda; yükseltme planı yapın.
3. Hosting firmanıza sorun
Paylaşımlı hostingdeyseniz PHP'yi siz değil, hosting firmanız günceller. Şu mesajı kopyalayıp destek talebi olarak gönderebilirsiniz:
Merhaba, PHP2Shell olarak bilinen CVE-2026-109618 ve CVE-2026-109619 açıklarıyla ilgili olarak:
- Hesabımın bulunduğu sunucudaki PHP sürümlerine yamalar uygulandı mı? Uygulanmadıysa planlanan tarih nedir?
- Yamalar uygulanana kadar sunucu düzeyinde geçici önlem alındı mı?
- Sunucuda bu açığa yönelik saldırı belirtisi tespit edildi mi? Teşekkürler.
ABD'li hosting firması InMotion gibi bazı firmalar, yama gelmeden önce sunucu düzeyinde geçici önlemler aldı ve müşterilerine duyurdu. Firmanız bir duyuru yapmadıysa sormak sizin hakkınız.
Bugün yapmanız gerekenler
Paylaşımlı hosting kullanıyorsanız
- Hosting firmanıza yukarıdaki mesajı gönderin.
- Destek süresi bitmiş PHP sürümlerinden çıkın. Siteniz PHP 8.1 veya altındaysa, cPanel'den 8.3 veya 8.4'e geçmeyi planlayın. Geçişten önce yedek alın ve siteyi test edin. Eski bir tema veya eklenti yeni sürümde hata verebilir.
- Sitenizin yedeğini alın. Hem dosyaları hem veritabanını, sunucu dışında bir yere.
- Kulaktan dolma "tek satırlık çözümlere" güvenmeyin. Patchstack, internette dolaşan resmi olmayan "düzeltme" eklentileri ve kod parçalarının doğrulanmadığını ve siteyi bozabileceğini belirtiyor. Açığı kapatan şey PHP güncellemesidir; site içinden yapılacak bir ayar bunu sağlamaz.
Kendi sunucunuzu (VPS, sanal sunucu) yönetiyorsanız
- PHP paketlerini güncelleyin. Dağıtımınızın veya kontrol panelinizin (cPanel EasyApache, CloudLinux alt-php, Plesk, LiteSpeed) güvenlik duyurusunu takip edin.
- Tüm PHP süreçlerini yeniden başlatın. Paket güncellense bile çalışan eski süreçler eski kodu kullanmaya devam edebilir. Qualys, güncellemeden sonra çalışan süreçlerin gerçekten yeni sürümü kullandığını doğrulamayı öneriyor.
- Kullanmadığınız PHP sürümlerini kaldırın. cPanel'de MultiPHP Yöneticisi sürüm atar, paket güncellemez. Eski bir sürüme bağlı unutulmuş tek bir alan adı bile risk oluşturur.
- Yamayı hemen uygulayamıyorsanız PHP ekibinin ve CERT-EU'nun önerdiği geçici yapılandırma önlemlerine bakın. Bunlar riski azaltır ama ortadan kaldırmaz. Bu önlemlerin bir kısmı (ör.
session.upload_progress.enabled=0) yalnızcaphp.iniveya FPM havuzu düzeyinde ayarlandığında etkilidir;.user.iniveya site kodu ile yapılamaz. - Yama mümkün değilse siteyi geçici olarak kapatın. İngiltere'nin siber güvenlik merkezi NCSC, yamalanamayan sistemlerin çevrim dışı alınmasını öneriyor.
Saldırıya uğradığımı nasıl anlarım?
Açık, sitenizin kodunun altında, PHP katmanında çalıştığı için site loglarında iz bırakmayabilir. Wiz'in paylaştığı ve sunucu yöneticilerinin izleyebileceği işaretler:
- Ardından bellek limiti hataları gelen olağandışı dosya yükleme (multipart) istekleri,
- Tekrarlayan HTTP 500 hataları,
- Yanıtlarda beklenmedik şekilde büyük veya bozuk
PHPSESSIDçerezleri, - Açıklanamayan PHP süreç yeniden başlamaları.
Bu işaretler tek başına kesin kanıt değil, ama hosting firmanızla paylaşılması gereken bilgiler.
Yama sonrası güvenlik kontrolü
Yama uygulandıktan sonra, özellikle siteniz yama gelmeden önce bir süre açıkta kaldıysa, şu genel güvenlik adımlarını atmanızı öneririm:
- Şifreleri değiştirin. PHP belleği okunabildiği için Patchstack, sunucudaki kimlik bilgilerinin yenilenmesini öneriyor: veritabanı şifresi (WordPress'te
wp-config.phpiçindeki), yönetici şifreleri, ödeme ve kargo entegrasyonlarının API anahtarları. - Yönetici hesaplarını kontrol edin. Tanımadığınız bir kullanıcı var mı?
- Son değişen dosyalara bakın. Özellikle yükleme klasörlerinde beklenmedik
.phpdosyaları bir uyarı işaretidir. - Bir güvenlik taraması yapın. WordPress için güvenilir bir güvenlik eklentisiyle veya hosting firmanızın kötü amaçlı yazılım tarayıcısıyla.
Bu açıktan çıkarılacak dersler
Eski PHP sürümü "çalışıyor" olsa da güvenli değil. Bir geliştiricinin açık duyurulduğu sabah yayınladığı kontrol aracıyla sitesinin tam PHP sürümünü kontrol edip sonucu paylaşan 26 site sahibinden 11'inin (yaklaşık %42) desteği bitmiş bir PHP sürümü kullandığı görüldü. Bu örneklem küçük ve temsili değil, ama sorunun yaygınlığı hakkında bir fikir veriyor.
Güvenlik sadece eklenti güncellemek değil. Çoğu site sahibi WordPress ve eklenti güncellemelerini takip eder, ama altındaki PHP sürümüne hiç bakmaz. PHP2Shell, en güncel WordPress'in bile eski bir PHP üzerinde savunmasız kalabileceğini gösterdi.
Hosting seçimi bir güvenlik kararıdır. Kritik bir açıkta hosting firmanızın ne kadar hızlı yama uyguladığı ve sizi ne kadar şeffaf bilgilendirdiği, sitenizin güvenliğini doğrudan belirler. Web sitesi altyapısı seçerken dikkat edilmesi gereken diğer noktalar için Web sitesi yaptırırken dikkat edilmesi gerekenler rehberime bakabilirsiniz.
Sonuç
PHP2Shell, sitenin kendisi güncel olsa bile altındaki altyapı yüzünden açık verilebileceğini gösteren ciddi bir açık. İyi haber şu: Çözümü net. PHP'yi güncel sürüme yükseltmek açığı tamamen kapatıyor.
Bugün yapmanız gereken üç şey: PHP sürümünüzü öğrenin, hosting firmanıza yamayı sorun, destek süresi bitmiş bir sürümdeyseniz yükseltme planı yapın. Sitenizin güvenlik kontrolü ve PHP geçişi için destek isterseniz floopping ekibiyle iletişime geçebilirsiniz.
Bu yazıyı hosting firmalarının yama durumları ve yeni gelişmeler netleştikçe güncelleyeceğim.
Sıkça Sorulan Sorular
PHP2Shell nedir?
PHP2Shell, PHP yorumlayıcısının çekirdeğinde bulunan ve 21 Ekim 2026'da kapatılan iki kritik güvenlik açığının (CVE-2026-109618 ve CVE-2026-109619) ortak adıdır. Saldırganın hiç giriş yapmadan sunucuda kod çalıştırmasına izin verir.
WordPress sitem PHP2Shell'den etkilenir mi?
Siteniz yamalanmamış bir PHP sürümünde çalışıyorsa evet. Açık WordPress'te değil PHP'de olduğu için WordPress ve eklentileriniz güncel olsa bile risk devam eder. Wiz, açığın en güncel WordPress kurulumunda çalıştığını gösterdi.
Hangi PHP sürümleri güvenli?
PHP 8.5.12, 8.4.27, 8.3.36 ve 8.2.35 ile bunların üzerindeki sürümler yamalıdır. Bazı dağıtımlar ve hosting firmaları yamayı eski sürüm numarasıyla uygulayabildiği için kesin bilgi için hosting firmanıza danışın.
PHP sürümümü nasıl öğrenirim?
cPanel'de MultiPHP Yöneticisi veya PHP Sürümünü Seç ekranında PHP dalını görebilirsiniz. WordPress'te Araçlar, Site Sağlığı, Bilgi, Sunucu bölümünde tam sürüm yazar. En kesin bilgiyi hosting firmanız verebilir.
Bir güvenlik eklentisi PHP2Shell'e karşı korur mu?
Hayır. Açık PHP katmanında, sitenin kodu çalışmadan önce tetiklenebildiği için WordPress eklentileri bu açığı kapatamaz. Tek tam çözüm PHP'nin güncellenmesidir. Cloudflare gibi güvenlik duvarları yalnızca geçici koruma sağlar.
PHP 7.4 veya 8.1 kullanıyorum, ne yapmalıyım?
Bu sürümlerin resmi desteği bitti ve PHP ekibi bunlar için normal bir güncelleme yayımlamadı. Sitenizin yedeğini alıp test ederek PHP 8.3 veya 8.4'e geçmeniz önerilir. Geçiş mümkün değilse hosting firmanıza yamalı bir paket sunup sunmadığını sorun.
Kaynaklar
- Wiz Research — PHP2Shell: Critical RCE vulnerabilities in PHP
- CERT-EU — Security Advisory 2026-018: Critical Vulnerabilities in PHP
- Help Net Security — PHP2Shell: Critical PHP vulnerabilities patched (21 Ekim 2026)
- Qualys — PHP announces critical security release for two vulnerabilities
- Patchstack — Major security alert: PHP vulnerable to critical RCE
- InMotion Hosting — PHP critical security release, October 2026
- MassiveGrid — How to patch PHP for CVE-2026-109618 and CVE-2026-109619
- DEV Community — PHP2Shell checker: what 650 checks showed
Bu içerik düzenli olarak gözden geçirilir. Son kontrol: 22 Ekim 2026 · Markdown sürümü
