PHP2Shell: PHP envanterinden güvenlik güncellemesine
2026-10-22 · 7 dk okuma
PHP kullanan web servislerini belirlemek, sürümü doğru yerden doğrulamak ve güvenlik güncellemesini planlamak için Fox DSS kontrol rehberi ve PHP Finder aracı.
PHP güncellemesini planlamanın başlangıç noktası, PHP’nin nerede çalıştığını bilmek. İnternete açık siteler, iç ağ uygulamaları, yönetim panelleri ve container içindeki servisler aynı envanterde görünmediğinde güncelleme kapsamı eksik kalabiliyor. Bu sayfada tek sayfalık kontrol bültenimizi ve web servislerindeki PHP izlerini toplamaya yardımcı Fox DSS PHP Finder aracını birlikte paylaşıyoruz.
PHP2Shell hangi sistemleri ilgilendiriyor?
PHP’nin 21 Ekim 2026 tarihli güvenlik duyurusu, web isteği işleyen PHP kurulumlarını kapsıyor. PHP-FPM, Apache/mod_php, CGI, FrankenPHP ve LiteSpeed bu kapsamda. Duyuruda yer alan ilk düzeltilmiş upstream sürümler aşağıda. Dağıtım paketlerinde backport yama durumu ayrıca doğrulanmalı.
| PHP dalı | İlk düzeltilmiş upstream sürüm |
|---|---|
| 8.2 | 8.2.35 |
| 8.3 | 8.3.36 |
| 8.4 | 8.4.27 |
| 8.5 | 8.5.12 |
CVE-2026-109618, bellek tükenmesi sırasında geçersiz iç verinin kullanımını; CVE-2026-109619 ise istekler arasında kalan geçersiz durum bilgisini ele alıyor. Her iki advisory, uzaktan kod çalıştırma riskini açıklıyor.
Güncelleme için uygulanabilir kontrol akışı
- Kapsamı görünür kılmak. Dış servislerin yanında iç ağları, uygulama alan adlarını, farklı portları ve container’ları envantere dahil etmek.
- Web çalışma zamanını doğrulamak. Yönetim paneli, sunucu paket bilgisi veya uygulamanın web çalışma zamanı üzerinden sürümü kontrol etmek.
php -vyalnız seçili komut satırı ikilisini gösterir. - İlgili dalın güvenlik güncellemesini uygulamak. CMS ve eklenti güncellemelerini PHP çalışma zamanından ayrı değerlendirmek. Eski dallar için sağlayıcının yama desteğini kontrol etmek.
- Servisleri yeniden başlatıp sonucu kaydetmek. İlgili worker’ların yeni sürümü kullandığını doğrulamak, uygulama işlevlerini kontrol etmek ve envanteri güncellemek.
Hemen güncellenemeyen sistemler için bültende yapılandırma önlemleri yer alıyor. OOM advisory’sindeki memory_limit = -1 önerisi, kaynak sınırlarıyla birlikte değerlendirilmesi gereken bir geçici önlem. İstekler arası durum advisory’si, session.upload_progress.enabled=0 ve PHP 8.5 için fatal_error_backtraces=0 ayarlarının uygulama noktasını ve worker yeniden başlatma gereğini açıklıyor. Bu ayarlar tam koruma sağlamıyor. Cloudflare WAF koruması da yama uygulanana kadar ek bir katman olarak değerlendirilebilir; asıl sunucuya doğrudan erişim ayrıca kısıtlanmalı.
Fox DSS PHP2Shell Kontrol Rehberi’ni PDF olarak indir
Fox DSS PHP Finder
Belirtilen IP, ağ aralığı veya alan adındaki web servislerinden PHP izlerini ve açıklanan sürüm bilgisini toplar. Python 3.9 ve üzeri yeterlidir. Ek paket kurulumu gerekmez.
Fox-DSS-PHP-Finder.py indirNasıl kullanılır?
Aracı indirdikten sonra dosyanın bulunduğu klasörde terminal açabilirsiniz. Taramalar, sahibi olduğunuz veya tarama izniniz bulunan hedefler için yürütülmeli.
Windows / PowerShell veya CMD
py -3 Fox-DSS-PHP-Finder.py
Linux / Ubuntu / macOS
python3 Fox-DSS-PHP-Finder.py
Ubuntu’da py -3 yerine python3 kullanılmalı. Script açılınca akış şu şekilde ilerler.
- Internal veya External seçimi.
1iç ağ,2dış ağ etiketini seçer. Her iki tarama da scriptin çalıştırıldığı bilgisayarın bağlantısını kullanır. External seçimi uzak bir tarama sunucusu başlatmaz. - IP veya CIDR girişi. Örneğin
192.168.10.0/24. Alan adı da girilebilir; bu, sanal sunucularda HTTP Host ve HTTPS SNI için önemlidir. - Tarama ve sonuç. Tarama sırasında ilerleme çubuğu görünür. Sonunda özet, bulunan servisler tablosu ve rapor klasörü gösterilir. CSV dosyası Excel ile açılabilir.
Windows’ta dosyaya çift tıklayarak da çalıştırabilirsiniz. Pencere, sonuçları okuyabilmeniz için Enter tuşuna basana kadar açık kalır.
Bir seferde kaç IP taranabilir?
Varsayılan sınır 4096 IP/hedef. Birden fazla hedef verildiğinde sınır toplam için geçerli. Limit aşılırsa etkileşimli mod yeniden hedef ister; ağlar ayrı ayrı taranabilir.
| IPv4 ağı | Taranan IP sayısı | Varsayılan limit |
|---|---|---|
| /24 | 254 | İçinde |
| /22 | 1022 | İçinde |
| /20 | 4094 | İçinde |
| /18 | 16382 | Aşıyor |
Kapsam planı daha büyük bir ağ gerektiriyorsa --max-hosts 16384 ile limit artırılabilir. Port, zaman aşımı ve eşzamanlı iş ayarları yardım ekranında açıklanır.
# Windows
py -3 Fox-DSS-PHP-Finder.py --help
# Linux / macOS
python3 Fox-DSS-PHP-Finder.py --help
Sonuçlar nerede, ne anlama geliyor?
Varsayılan rapor konumu scriptin yanındaki sonuclar klasörü. Mod, hedef ve tarih-saat ayrı klasörlere yansır. Her tarama kendi klasörünü oluşturur, önceki raporları korur.
sonuclar/
internal/
hedef_192.168.10.0_24/
<tarih-saat>/
Fox-DSS-PHP-Finder.csv
Fox-DSS-PHP-Finder.json
| Sonuç | Yorum |
|---|---|
| PHP sürümü görünen | Server veya X-Powered-By başlığında PHP var. Açıklanan sürüm rapora yazılır. |
| Olası PHP | PHPSESSID çerezi veya .php yönlendirmesi görülmüş, sürüm görünmüyor. |
| PHP izi yok | Bu yanıtta PHP izi görünmüyor. |
| Web yanıtı yok | Port açık ancak HTTP/HTTPS yanıtı alınamadı. |
Sürümü görünen her servis için “Ne yapılmalı” sütununda kısa bir değerlendirme yer alır. Görünen sürüm bu bültendeki düzeltilmiş sürümlerle karşılaştırılır.
| Değerlendirme | Anlamı |
|---|---|
| Düzeltilmiş sürüm görünüyor | Görünen sürüm 8.2.35, 8.3.36, 8.4.27, 8.5.12 veya üzerinde. |
| Güncelleme gerekebilir | Görünen sürüm, kendi dalının düzeltilmiş sürümünün altında. |
| Desteklenmeyen sürüm | PHP 8.1 veya daha eski. Yükseltme ya da sağlayıcı yaması gerekir. |
| Sürüm gizli | PHP izi var ama sürüm görünmüyor. Sunucuda kontrol edilmeli. |
Araç varsayılan olarak 80, 443, 8000, 8080, 8081, 8443, 8888 ve 9000 portlarını kontrol eder. / ve /index.php yanıtlarının başlıklarını inceler. Sayfa gövdesini indirmez, yönlendirmeleri takip etmez. TLS sertifikası doğrulanmaz.
PHP Finder bir ön envanter aracıdır. Başlıklar gizlenebilir, sanal sunucular alan adı gerektirebilir ve sunucuda kurulu PHP web üzerinden görünmeyebilir. Sürüm bilgisi sunucunun kendi beyanıdır ve PHP izi bulunmaması PHP olmadığı anlamına gelmez. Linux dağıtım paketlerinde yama, sürüm numarası değişmeden gelmiş olabilir. Bu yüzden “Güncelleme gerekebilir” sonucu kesin değildir. Araç zafiyeti doğrulamaz, yalnız görünen sürümü karşılaştırır. Son aşamada web çalışma zamanının ve dağıtım paketinin sunucu tarafından doğrulanması gerekir.
Kaynaklar
- PHP resmî güvenlik duyurusu, 21 Ekim 2026
- PHP advisory, CVE-2026-109618
- PHP advisory, CVE-2026-109619
- Cloudflare, PHP zafiyetlerine karşı WAF koruması
- PHP2Shell bilgi sayfası (php2shell.com)
Teknik içerik ve sürüm tablosu 22 Ekim 2026 itibarıyla kontrol edilmiştir.