Evet, günümüzün bilgisiz avlama cümlelerine hoş geldiniz!

Bugün kendi PHP script'ini yapıp, rakip Wordpress temalarına tükürmeye çalışan süper insanları ve onların cümlelerini ele alacağım.
Bu konuyu açmamın en büyük sebebi, satışını yaptığım Hype Sözlük WP tema müşterilerimin sıkça bu sorularla bana gelmesi. Rakip script'ler başlıyorlar viral reklama;

"yiğenim bu wordpress bak, güvenli değil bu. kasar bak bu, wordpress blog sistemleri için var dostum!"

1) Wordpress kasar mı?

Şimdi soru çok saçma, açmak gerekli. Ne şartlar altında?

Öncelikle; Wordpress bir PHP CMS'dir. 3000 küsür temel fonksiyonu vardır ve bu fonksiyonlar kodlama kalitesi olarak oldukça kalitelidirler. Bu fonksiyonlar siz çağırmadıkça yük etmezler. Ama neden sürekli bir Wordpress kasar algısı var? Sebebi ise belli; kötü yazılımcılar ve bilinçsiz son kullanıcı.

Hepimizin kabul etmesi gereken bir şey var. PHP kolaydır. Programlamaya giriş ve üretme aşaması oldukça kısa bir dildir. Ancak, uzmanlaşması da bir o kadar zor bir dildir. Wordpress ile bu kolay olan çıta çok çok daha aşağıya çekiliyor. Sebebi ise her işimize koşan WP çekirdek fonksiyonları.

SQL'den bir bilgi çektirmenin, bilgi kayıt etmenin, belli koşullara göre sıralamanın onlarca yolu vardır. Bu onlarca yoldan bir çoğu en kısa ve kolay yoldur.

Bu neyi doğurur? Skalanın bu kadar düşük olduğu bir platformda, kalitesiz temaların doğmasına yol açar. Index'e sahip olmayan tablolar, akıllıca çektirilmemiş SQL sorguları, gereksiz, ilgisiz global değerleri, saçma algoritmalar...

Ne demeye çalışıyorum? Diyorum ki, Wordpress kasmaz, kalitesiz tema kasar.

Son kullanıcı bunun neresinde? Onlarca eklentiyi kullanmaları. Gereksiz, eskimiş, kalitesiz onlarca eklentiyi bir sistemde aktive ederseniz; elbette ki sistemin yavaşlaması söz konusu olacaktır.

Aksi halde özel olarak yazılan bir PHP script ile bir WP temasının performans farkı ancak benchmark testleriyle farkedilebilir.

2) Wordpress güvenli mi?

Bana sürekli olarak gelen bir soru: Hype Sözlük güvenli mi?

Öncelikle, güvenlikten kasıtı bir sormak gerek. Günümüzde kullanılan ve bir siteyi mahvedebilecek saldırı türlerine bakalım:
Ön
XSS ve türevleri ( sterilize edilmeden ekrana basılan değişkenlerin bir sonucudur )
SQL Injection ve türevleri ( prepare edilmeden ve temizlenmeden kayıt edilmeye çalışılan user inputların sonucudur )
Çerez açıkları ve türevleri (PHPSESID) ( XSS ile bağlantılıdır. XSS ile doc. cookie çekilmeye çalışılır ve PHPSESID değeri ele geçirilir )

Bana gelen bu soruya her zaman verdiğim cevap şudur: Wordpress ne kadar güvenliyse, bu tema da o kadar güvenli.

Bu ne demek?

Ben temamı wordpress standartlarında; rakam değişkenlerini intval(), metinleri esc_attr ve sanitize_text_field() komutları ile korudum demektir. SQL'e kayıt edilen bilgileri $wpdb->prepare komutu ile güvene aldım demektir.

E peki wordpress'in kendisi güvenli mi?


Verilebilecek en doğru cevap: OLDUKÇA! Çünkü bu soruya kimse ama kimse evet tamamen güvenlidir diyemez. Ama şu söylenebilir: parasını verip yaptırabileceğiniz bir PHP script'den daha güvenlidir.

Sebebi: Onlarca yıldır geliştirilir ve açık kaynak kodludur. Yani kodlamayı herkes inceleyerek bir açığı WP ekibine iletebilir.

Peki her tema aynı güvenliğe mi sahip?
Hayır! Eğer ki $_POST değerini hiçbir temizleme yapmadan direkt olarak kayıt ediyorsa, bir metini temizlemeden veritabanına alıp, temizlemeden ekrana yazdırıyorsa; bu tema güvenli değildir. Hoş, aynı şekilde bu işlemlerin yapılmadığı herhangi bir sistem güvensizdir.


3) Wordpress ile sadece blog mu yapılır?

Elbette hayır! 2003 senesinde ilk çıktığında belki evet denirdi. Ancak, burada "sadece şunun için" diyebileceğiniz bir durum söz konusu değil. Hype Sözlük'ü WP'e yama olduğunu söyleyen ve satış konumu baltalamaya çalışan bazı rakiplerim oldu. Neresinden gülersiniz...

Wordpress sadece ön tanımlı fonksiyonları bulunan, ön tanımlı veritabanı tabloları bulunan bir PHP altyapıdır. Bakın PHP'dir. Bu demektir ki WP temel fonksiyonlarının yetmediği yerde dilediğiniz PHP kodu yazabilirsiniz! Yani tamamen özgürsünüz!

Yettiğini kadarını alıp, yetmediği yerde hayal gücünüzün dahilinde her siteyi WP ile yapabilirsiniz...

4) Wordpress fonksiyonları zamanla eskir yeğenim, yazılımcın bırakır bak temayı; kalırsın bir güncellemede dımdızlak!

Bu karşılaştığım en saçma önermeydi. İki cevap vermek istiyorum, hem doğru hem de yanlış.

Neden doğru?

Evet WP fonksiyonları zamanla eskir ve yerini yenileri alabilir. Ancak bir gecede cahil kaldık durumu yaşanmaz. Bu geçiş seneye yayılır.

Neden yanlış?

Şimdi bir dönüp sormak gerek, bu neden güncelleniyor. Bu fonksiyon neden gidiyor?
En büyük sebebi: PHP'nin de sürekli güncelleniyor olması! PHP 5'de çalışıp, PHP 7'de çalışmayan sayısız fonksiyon var. Değerini yitiren, yerine yenisi gelen ya da ismi değişen.

E şimdi ne yapalım? PHP güncelleniyor, o da eskiyor. O zaman hiçbir programlama dilini kullanmayalım. Böylece fonksiyonlar da eskiyemez!...
Bir sistem geliştikçe, eskime her daim söz konusudur. Bu WP, PHP, ASPNET farketmez...


Bu konuda içimi dökmek istedim. Çünkü çok can sıkıcı sorular almaya başladım uzun zamandır.

Sizin de bu konudaki görüşlerinizi duymak isterim, herkese iyi forumlar dilerim.