HİZMETLER
KATEGORİLER
BILGISAYAR & DONANIM
TEKNOLOJI
DİĞER
CYBER SECURITY DEVELOPER NETWORK SECURITY / TELEKOMÜNIKASYON
OFFLINE ADMİN — bağlantı bekliyor
G
G
SECURE
GÜVENLİ ALTYAPI
7/24
Tüm ziyaretler çevrimiçi güvenlik katmanlarıyla korunur ve kötüye kullanıma karşı otomatik izlenir.
W
W
--
☀️
--°
--
💧 -- 💨 -- 🌅 --
--☀️--°--°
--☀️--°--°
--☀️--°--°
--☀️--°--°
--☀️--°--°
Ana Sayfa / CYBER SECURITY / PHP Nedir? Tarihi, Açıkları ve Web’e ...
CYBER SECURITY

PHP Nedir? Tarihi, Açıkları ve Web’e Etkisi Rehberi

GH
nonanik1306@gmail.com •26 October 2026 16:21 •Cyber Security
9 dk OKUMA
PHP Nedir? Tarihi, Açıkları ve Web’e Etkisi Rehberi
CONTENTS

PHP Nedir, Ne İşe Yarar?

PHP sunucuda çalışan bir betik dili. Tarayıcı bir sayfa istediğinde sunucudaki PHP kodu devreye girer, gerekirse veritabanına bağlanır, HTML’i üretir ve ziyaretçiye yalnızca bitmiş çıktıyı yollar. Kodun kendisi kullanıcıya hiç ulaşmaz.

Yapılan iş de çeşitli: üyelik sistemleri, iletişim formları, e-ticaret sepetleri, blog motorları, yönetim panelleri, REST API’ler. Word Press PHP ile yazıldı ve W3Techs’in Eylül 2026 ölçümüne göre internetteki tüm sitelerin yüzde 40,7'sini çalıştırıyor. Wikipedia, Etsy ve Mailchimp gibi büyük isimler de PHP kullanıyor. Aynı kurumun 26 Ekim 2026 verisinde, sunucu tarafı dili belirlenebilen sitelerin yüzde 69,2'si PHP üzerinde çalışıyor. Yani “PHP öldü” lafı, kullanım rakamlarıyla pek örtüşmüyor. Yine de pay yıllar içinde geriledi ve Java Script, Temmuz 2026'da Ruby’yi geçip ikinci sıraya yerleşti.

Küçük Bir Araçtan Dile

Hikâye 1994'te Rasmus Lerdorf’un kendi özgeçmiş sayfasına gelen ziyaretçileri izlemek için C ile yazdığı küçük CGI programlarıyla başladı. Bunları 8 Haziran 1995'te “Personal Home Page Tools” adıyla Usenet’te duyurdu. Form işleme ve HTML’in içine gömülebilen basit bir söz dizimi vardı. Lerdorf sonradan, bir programlama dili yazmak gibi bir niyeti hiç olmadığını, dilin kendi kendine büyüdüğünü anlattı.

1997'de PHP/FI 2.0 geldi. 1998'de Zeev Suraski ile Andi Gutmans motoru baştan yazıp PHP 3'ü çıkardı, ad da “PHP: Hypertext Preprocessor” oldu. PHP 4 (2000) Zend Engine’i getirdi. PHP 5 (2004) nesne yönelimli programlamayı oturttu, bugünkü framework’lerin temeli o dönemde atıldı. PHP 6 yarıda kaldı ve hiç yayımlanmadı, numara doğrudan 7'ye atladı.

PHP 7 (2015) hızda büyük bir sıçrama yaptı. PHP 8 (2020) JIT derleyiciyi, union type’ları, adlandırılmış argümanları ve attribute’ları getirdi. 8.1'de enum’lar ve fiber’lar geldi. 8.4'te property hook’lar ve asimetrik görünürlük eklendi. 20 Kasım 2025'te çıkan PHP 8.5 pipe operatörünü, standartlara uygun yeni URI eklentisini, clone with söz dizimini ve arrayfirst() ile arraylast() fonksiyonlarını getirdi. PHP 8.6'nın 19 Kasım 2026'da çıkması planlanıyor, şu an aday sürüm aşamasında.

Bugünkü PHP, 2005'te yazılan PHP’ye pek benzemiyor. Katı tipler, enum’lar, Composer ile paket yönetimi ve ciddi test araçları var. Eleştirilerin bir kısmı, mesela tutarsız fonksiyon adları, hâlâ geçerli. Ama dilin amatör imajı artık eskisi kadar hak edilmiş sayılmaz.

Dilin yönetimi de değişti. Eskiden birkaç gönüllünün omzundaydı, bugün geliştirme PHP Foundation ve PHP Group gibi yapıların desteğiyle yürüyor. Yeni özellikler RFC adı verilen öneri sürecinden, topluluk oylamasıyla geçiyor. Bu yüzden değişiklikler artık kimsenin keyfine bırakılmış değil; geriye dönük uyumsuzluklar uzun uyarı dönemlerinden sonra yürürlüğe giriyor.

Hangi Sürüm Hâlâ Destekleniyor?

Ekim 2026 itibarıyla desteklenen dallar 8.2, 8.3, 8.4 ve 8.5. PHP 8.5 için güvenlik yamaları 31 Aralık 2029'a kadar sürecek. 8.4'ün aktif desteği 31 Aralık 2026'da bitiyor, güvenlik desteği ise 31 Aralık 2028'e kadar devam ediyor. 8.2 yalnızca güvenlik düzeltmesi alıyor ve 31 Aralık 2026'da tamamen kapanıyor. PHP 8.1 ve öncesi desteksiz. 8.3'ün bitiş tarihi kaynaklar arasında tutarsız: Bazıları Aralık 2027, biri Kasım 2026 veriyor. Planınızı yapmadan önce php.net’teki Supported Versions sayfasından kontrol edin.

PHP ekibi yılda bir minör sürüm çıkarıyor ve her sürüme yaklaşık dört yıl destek veriyor. Bu takvim, yazılımı güncel tutmayı şansa bırakılmayacak bir iş haline getiriyor. Yılda bir geçiş yapan ekip, beş yıl sonra tek seferde dev bir geçişle uğraşan ekibe göre çok daha rahat.

Neden Altyapı Olarak PHP Seçildi?

Sebep teknik üstünlükten çok pratikliktı. PHP’nin yayıldığı yıllarda paylaşımlı hosting ucuzdu ve PHP desteği neredeyse standarttı. Bir dosyayı FTP’yle yüklemek yetiyordu; ayrı sunucu süreci, derleme adımı ya da karmaşık kurulum gerekmiyordu. HTML’in içine kod yazılabildiği için bir tasarımcı bile dinamik sayfa çıkarabiliyordu. Her istek kendi süreci içinde başlayıp bittiği için bir hata sunucunun geri kalanını çökertmiyordu. Öğrenmesi de barındırması da kolay bir modeldi.

Sonra ekosistem işi kilitledi. Word Press, Drupal, Joomla ve Magento gibi ürünler PHP üzerine kuruldu. Bir şirketin web sitesine ihtiyacı olduğunda seçim çoğu zaman önceden belliydi. Composer, Laravel ve Symfony gelince projeler düzenli bir mimariyle yazılmaya başladı. PHP bilen geliştirici bulmak da kolaydı, bu da şirketler için ayrı bir gerekçeydi. Bugün bile Word Press ağırlıklı bir pazarda, PHP’nin payının hızla çökmesi için Word Press’in terk edilmesi gerekir.

Bir başka etken maliyet. Bir PHP uygulamasını çalıştırmak için özel bir altyapı gerekmiyor; en ucuz hosting paketi bile işi görüyor. Küçük işletmeler, ajanslar ve serbest çalışanlar için bu fark büyük. Üstelik yıllarca biriken eğitim içeriği, forum cevabı ve hazır eklenti, yeni başlayan birinin bir sorunda yalnız kalmasını nadir bir ihtimal yapıyor.

Açıklar: Eskiden Bugüne

PHP’nin güvenlik geçmişi iki yerden okunmalı: dilin çekirdeği ve üzerine yazılan uygulamalar.

Eski dönem açıklarının çoğu dilin kolaylığından doğdu. registerglobals, URL’den gelen değerlerin otomatik olarak değişkene dönüşmesine izin veriyordu ve sonradan kaldırıldı. Eski mysql* fonksiyonları parametreli sorguyu teşvik etmediği için SQL enjeksiyonu yaygınlaştı, PHP 7'de silindi, yerine PDO ve mysqli öne çıktı. Dosya yüklemelerinin denetlenmemesi, include ile gelişigüzel dosya çağırmak, çıktının kaçışlanmaması (XSS) yıllarca en sık görülen hatalar arasındaydı. 2024'te Windows üzerinde PHP-CGI kullanan sunucuları etkileyen CVE-2024-4577 ise eski bir yapılandırma biçiminin hâlâ risk taşıdığını gösterdi.

Güncel olay doğrudan çekirdeği ilgilendiriyor. 20 Ekim 2026'da PHP çekirdeğindeki iki kritik uzaktan kod çalıştırma açığının ayrıntıları, koordineli duyurudan önce internete sızdı. PHP ekibi ertesi gün, 21 Ekim’de acil bir güvenlik sürümü yayımladı: 8.5.12, 8.4.27, 8.3.36 ve 8.2.35. Açıklar “PHP2Shell” adıyla anılıyor, CVE-2026-109618 ve CVE-2026-109619 numaralarını taşıyor, ikisi de CVSS v4.0'da 9.2 puan aldı.

Teknik özet şöyle: Birincisi, bellek yetersizliği durumunda istek verisinin yarım başlatılmış halde kalmasından; ikincisi, istek durumunun bellek serbest bırakıldıktan sonra da tutulmasından kaynaklanıyor. Saldırgan kimlik doğrulaması olmadan, web sunucusu hesabının yetkisiyle kod çalıştırabiliyor. PHP ekibi bunu mod_php ve varsayılan sınırlarla doğruladı. Sürüm notlarındaki ifade net: Tam bir hafifletme yok, tek güvenli yol güncellemek. CVE numaraları ve bazı ayrıntılar PHP’nin kendi duyurusundan değil, watch Towr ve Huntress gibi güvenlik firmalarının raporlarından geldiği için bu kısmı temkinli aktarıyorum.

Asıl tehlike eski sürümlerde. W3Techs’e göre PHP kullanan sitelerin yüzde 65,5'i PHP 8'de, yüzde 26,7'si PHP 7'de, yüzde 7,7'si PHP 5'te. Yani yaklaşık üçte biri çoktan desteği bitmiş sürümlerde çalışıyor. PHP 8.2'nin desteği de 31 Aralık 2026'da sona eriyor. Plesk gibi bazı panel üreticileri 8.1, 8.0 ve 7.4 için kendi derlemelerini güncelledi, ama bu herkes için geçerli değil. Kendi sunucusunu yöneten biri için iş basit: php -v ile sürümü kontrol edin, yamalı sürüme geçin. Paylaşımlı hostingdeyseniz firmanızdan hangi sürümde olduğunuzu ve yamanın uygulanıp uygulanmadığını yazılı olarak isteyin.

Uygulama katmanı ayrı bir hikâye. Krayin CRM’deki CVE-2026-38526 (CVSS 9.9), TinyMCE yükleme uç noktasının dosya türünü denetlememesinden kaynaklanıyor. Yüklenen .php dosyası web dizininde doğrudan çalıştığı için sorun büyüyor. Yükleme klasörünü kod çalıştırmayacak şekilde yapılandırmak ve uzantıyı sunucu tarafında doğrulamak bu sınıfın temel çaresi. PHP sitelerinde yaşanan ihlallerin çoğu çekirdekten değil, bakımsız eklentilerden ve özel yazılmış kodlardan çıkıyor. PHP2Shell gibi çekirdek açıkları nadir ve o yüzden daha çok ses getiriyor.

JavaScript ve CSS Dünyasına Etkisi

PHP’nin web’e en büyük katkısı, “sayfa dinamik olabilir” fikrini sıradanlaştırmak oldu. İlk yıllarda CSS ve Java Script, PHP’nin ürettiği HTML’in içine serpilen ikincil parçalardı. Word Press’in tema yapısı, şablon parçalarını birleştiren ve stilleri ayrı dosyalara çıkaran bir düzen oturttu. jQuery’nin Word Press ile birlikte yayılması da aynı dönemin ürünü.

AJAX gelince ilişki değişti: Sunucu tam sayfa yerine veri döndürmeye başladı, PHP de json_encode ile JSON üretti. React ve Vue çıkınca PHP ikinci role geçti. Laravel API olarak arkada durdu, Next.js veya Nuxt ön yüzü çizdi. Bu “headless” düzen bugün çok yaygın. Hatta bir PHP ürünü olan Word Press bile blok editörünü React tabanlı Java Script ile yeniden kurmak zorunda kaldı.

Sonra ters bir akım çıktı. Java Script yükünden bıkanlar için Laravel Livewire, arayüz bileşenlerini PHP sınıfı olarak yazdırıyor ve AJAX isteklerini kendisi hallediyor. Alpine.js ile birleşince TALL stack (Tailwind, Alpine, Livewire, Laravel) ortaya çıkıyor. Inertia.js, Vue veya React sayfalarını Laravel yönlendirmesine bağlıyor. htmx ise HTML niteliklerinden AJAX tetikliyor, yani “sunucu HTML döndürsün” fikrine dönüş. Bunu moda diye geçmemek lazım: Java Script derleme zincirinin ağırlığı birçok ekip için gerçek bir maliyet. Öte yandan Laravel’in başlangıç paketleri bile Vite ve Tailwind ile geliyor. Yani PHP dünyası ön yüz araçlarından kaçmıyor, onları kendi içine alıyor.

Güvenlik tarafında da iz var. Çıktısı kaçışlanmayan bir PHP sayfası, saldırganın Java Script’ini ziyaretçinin tarayıcısında çalıştırıyor (XSS). Bu yüzden Content-Security-Policy, Http Only ve Same Site çerezleri ön yüz geliştiricilerinin de alışkanlığı oldu. Blade gibi şablon motorları çıktıyı varsayılan olarak kaçışlıyor, bu da ham PHP şablonlarına göre ciddi bir fark.

Site Sahibi Ne Yapmalı?

Açıkların haberini okuyup geçmek yetmez. Birkaç somut adım var:

Sunucudaki PHP sürümünü öğrenin. Panelde ya da php -v çıktısında görünür. 8.5.12, 8.4.27, 8.3.36 veya 8.2.35 ve üstüne geçin. 8.1 ve altındaysanız yama yok, sürüm atlamanız şart. Word Press kullanıyorsanız çekirdeği, temayı ve eklentileri güncelleyin. Kullanmadığınız eklentiyi pasif bırakmak yerine silin. Yükleme klasörlerinde PHP çalıştırmayı kapatın. Bu, dosya yükleme açıklarının zararını sınırlar. Yönetim panelini ek bir koruma katmanıyla (IP kısıtı, iki aşamalı doğrulama) kapatın. Düzenli yedek alın ve geri yüklemeyi bir kez deneyin.

PHP2Shell gibi bir açık duyurulduğunda saldırganlar otomatik tarama başlatır. Yama ile saldırı arasındaki süre günlerle, bazen saatlerle ölçülüyor. Bu yüzden “sonra bakarım” demek burada pahalıya gelir.

blog154d9cbd-79de-4066-bc99-0d5919cbb59a1654243131.jpg

Sonuç

PHP’yi savunmak da ona saldırmak da yarım doğru. Dil yirmi beş yılda ciddi biçimde olgunlaştı, ama dünyadaki PHP kodunun büyük kısmı hâlâ eski sürümlerde ve bakımsız eklentilerde duruyor. Pratik özet: PHP 8.5'e, olmadı en az 8.3'e geçin, 21 Ekim yamalarını uygulayın, eklentileri güncel tutun. Ön yüz için PHP’nin sunduğu seçenekler bugün her zamankinden fazla. Yeni bir proje başlatıyorsanız Laravel ya da Symfony ile modern bir yapı kurmak, eski tarz dağınık PHP dosyalarına göre hem güvenliği hem bakımı çok daha kolaylaştırır. Mevcut bir siteniz varsa, önce sürümünüzü öğrenin ve takvime bir güncelleme günü yazın.

Kaynaklar:

W3Techs: PHP kullanım istatistikleri (26 Ekim 2026) Priority Pixels: İnternetin ne kadarı PHP üzerinde çalışıyor Full Scale: PHP 2026'da hâlâ geçerli mi PHP Manual: PHP’nin tarihçesi Wikipedia: PHP Bacancy: PHP sürüm tarihçesi PHP 8.5.0 sürüm duyurusu (GitHub) Laravel News: PHP 8.5 yayımlandı PHP 8.5.12 güvenlik sürümü (GitHub) Huntress: php2shell hızlı müdahale watchTowr: PHP2Shell SSS Plesk: PHP2Shell duyurusu Modern PHP: Güncel PHP sürümü (Ekim 2026) HeroDevs: PHP EOL tarihleri Krayin CRM CVE-2026-38526 (GitHub) Redberry: Laravel ön yüz mimarisi 2026 Tighten: Laravel’de htmx kullanımı

Press #Laravel #Java Script #CSS #Siber Güvenlik #Yazılım Geliştirme#Word Press #Laravel #Java Script #CSS #Siber Güvenlik #Yazılım Geliştirme

Bu yazıdaki bazı bağlantılar affiliate (bağlı kuruluş) bağlantılarıdır; bu bağlantılar üzerinden yapılan alışverişlerde bize komisyon ödenebilir, bu size ek bir maliyet yaratmaz. Detaylar için Gizlilik Politikamız sayfamıza göz atabilirsiniz.

GH
nonanik1306@gmail.com
GrayHat — Siber Güvenlik İçerik Ekibi

Siber güvenlik geliştirme, savunma stratejileri, güvenli kodlama ve farkındalık alanlarında; özgün araştırmalara dayalı içerikler hazırlar. Tüm yazılar eğitim ve savunma amacıyla yayınlanır.

🌍 Okuyan ülkeler: 🇩🇪 16 🇺🇸 12 🇨🇦 3 🇬🇧 2 🇧🇪 1 🇫🇷 1 🇸🇬 1 🇹🇷 1

YORUMLAR (0)

Henüz yorum yapılmamış. İlk yorumu sen yap!
1 E-posta doğrula 2 Kodu gir 3 Yorumu yaz
E-postana gönderilen 6 haneli kodu gir:
✓ E-posta doğrulandı — yorumunu yaz:

Danışma Formu