PHP Kritik RCE Açığı (php2shell / CVE-2026-109618 & 109619) — Sunucu Tarafında Nasıl Kapatılır

Sabit admin açtı, 9 saat önce 0 yanıt 12 görüntülenme
admin Admin
  • 0 mesaj
  • 1K puan
  • Katılım 12.2025
  • Konu sahibi

PHP çekirdeğinde son derece kritik iki uzaktan kod çalıştırma (RCE) açığı açıklandı. “php2shell” adıyla anılıyor ve CVSS puanı 9.2 (kritik). Açık, sizin uygulama kodunuzda değil, PHP’nin kendisinde olduğu için iyi yazılmış kod sizi korumaz. Aşağıda ne olduğunu ve sunucu tarafında nasıl kapatacağınızı özetledim.

Açık nedir?

  • Kök neden: PHP’nin session.upload_progress özelliğinin ve multipart (dosya yükleme) ayrıştırıcısının bellek yönetimindeki bir hata (heap use-after-free).
  • Bu özellik varsayılan olarak açık ve uygulamanız onu hiç kullanmasa bile devreye giriyor. Çok parçalı (multipart) özel biçimli bir POST isteği yeterli.
  • Kimlik doğrulama gerekmiyor, uzaktan tek istekle tetiklenebiliyor. Sonuç: sunucuda PHP’nin yetkileriyle (genelde www-data) komut çalıştırma.

Kimler etkileniyor?

  • Sızan bilgilere göre PHP 5'ten itibaren tüm sürümler.
  • Resmi yamalar yalnızca desteklenen PHP 8 dallarına gelecek. PHP 5, 7, 8.0 ve 8.1 kullanıyorsanız güncel bir 8.x sürümüne geçmeniz gerekir.

1. Acil azaltma (yama gelene kadar)

session.upload_progress.enabled değerini kapatın. Bu, bilinen saldırı yolunu keser ve dosya yüklemelerinizi bozmaz — yalnızca kullanılmayan “ilerleme takibi” kapanır.

Kendi sunucunuz / VPS (php.ini):

ini
session.upload_progress.enabled = 0

Ardından PHP-FPM’i (veya mod_php için Apache’yi) yeniden başlatın:

bash
sudo systemctl restart php8.3-fpm
# mod_php kullanıyorsanız:
sudo systemctl restart apache2

FastCGI/CGI ortamı (.user.ini):
İlgili dizine .user.ini koyun:

ini
session.upload_progress.enabled = 0

(Değişikliğin aktif olması 5 dakika kadar sürebilir.)

mod_php + .htaccess:

apache
php_flag session.upload_progress.enabled off

(Yalnızca mod_php’de ve AllowOverride uygunsa çalışır.)

Paylaşımlı hosting (cPanel vb.):
“Select PHP Version” → “Options” ya da “MultiPHP INI Editor” bölümünden session.upload_progress.enabled değerini Off yapın.

Not: ini_set() ile çalışma anında değiştirilemez — mutlaka php.ini / .user.ini / panel üzerinden ayarlayın.

2. Kalıcı çözüm: PHP’yi yamalı sürüme güncelleyin

İkinci açığın bu ayardan bağımsız tetiklenebileceği iddia edildiği için tek güvenli yol PHP’yi güncellemektir.

  • Resmi güvenlik sürümü 21 Ekim 2026 için planlandı. Yamalı alt sürüm numaralarını resmi duyurudan teyit edin.
  • Debian/Ubuntu:
bash
  sudo apt update && sudo apt upgrade php8.3 php8.3-fpm
  • RHEL/AlmaLinux (Remi deposu):
bash
  sudo dnf update php php-fpm
  • Paylaşımlı hosting: panelden en güncel 8.x sürümünü seçin ya da hosting firmanızın güncellemesini bekleyin.

3. Doğrulama

Geçici bir phpinfo() sayfası oluşturup session.upload_progress.enabled değerinin Off olduğunu görün, sonra dosyayı silin. Sürüm için:

bash
php -v

Yamalı sürümde olduğunuzdan emin olun.

4. Ek önlemler

  • Hemen güncelleyemiyorsanız, internete açık uygulamaları WAF arkasına alın.
  • Web sunucusu ve PHP loglarında beklenmedik POST istekleri ve www-data ile çalışan şüpheli süreçler açısından izleme yapın.
  • public_html içinde tanımadığınız yeni .php dosyaları oluşup oluşmadığını kontrol edin.

Özetle: önce ayarı kapat, sonra PHP’yi yamalı sürüme güncelle. Azaltma anında koruma sağlar ama kalıcı güvenlik için güncelleme şart.

İşime Yaradı

0 oy
Evet
Hayır

Giriş yap ve oy ver.

Yanıt yazmak için giriş yap. Giriş yap Hesap oluştur