Güvenlik

Bu ücretsiz sunum belgesinde WordPress'in çekirdek yazılım güvenliği hakkında daha fazla bilgi edinin. Ayrıca, PDF biçiminde indirebilirsiniz.

Genel Bakış

Bu belge, WordPress çekirdek yazılım geliştirme ve bununla ilgili güvenlik süreçlerinin bir analizini ve açıklamasını, ayrıca doğrudan yazılıma yerleşik olan yerleşik güvenliği incelemektedir. WordPress'i bir içerik yönetim sistemi veya web uygulama çerçevesi olarak değerlendiren karar vericiler bu belgeyi analizlerinde ve karar almalarında ve geliştiricilerin yazılımın güvenlik bileşenlerini ve en iyi uygulamalarını tanımak için bu belgeye başvurmaları için kullanmalıdır.

Bu belgedeki bilgiler, yazılımın en son kararlı sürümü olan, yayın sırasında WordPress 4.7, için günceldir ancak yazılımın en son sürümleriyle de ilgili olduğu düşünülmelidir; çünkü geriye dönük uyumluluk, WordPress geliştirme ekibinin güçlü bir odağıdır. Özel güvenlik önlemleri ve değişiklikler, belirli sürümlerde çekirdek yazılıma eklendiklerinden not edilecektir. Mümkün olan en güvenli deneyimi sağlamak için her zaman WordPress'in en son kararlı sürümünü kullanmanız kesinlikle önerilir.

Yönetici Özeti

WordPress, milyonlarca web sitesine, web uygulamasına ve bloglara güç vermek için kullanılan dinamik bir açık kaynaklı içerik yönetim sistemidir. Şu anda, İnternetteki en iyi 10 milyon web sitesinin 41% oranından fazlasına güç vermektedir. WordPress’in kullanılabilirliği, genişletilebilirliği ve olgun geliştirme topluluğu, her boyuttaki web siteleri için popüler ve güvenli bir seçim olmasını sağlar.

2003'teki kuruluşundan bu yana, WordPress sürekli güçlenmeye maruz kalmıştır, böylece çekirdek yazılımı, Açık Web Uygulama Güvenliği Projesi (OWASP) tarafından bu belgede açıklanan ortak güvenlik açıkları olarak tanımlanan en iyi 10 liste de dahil olmak üzere ortak güvenlik tehditlerini ele alabilir ve hafifletebilir.

WordPress güvenlik ekibi, WordPress çekirdek liderlik ekibi ile birlikte ve WordPress küresel topluluğu tarafından desteklenerek, WordPress.org'da dağıtım ve kurulum için mevcut olan temel yazılımdaki güvenlik sorunlarını belirlemek ve çözmek, ayrıca . üçüncü taraf eklenti ve tema yazarları için en iyi güvenlik uygulamlarını önermek ve belgelendirmek için çalışır.

Site geliştiricileri ve yöneticileri, tüm kullanıcıların WordPress'e erişmek için güçlü parolalar kullanmasını sağlamanın yanı sıra, yaygın güvenlik açıkları kaynağı olan temel API'lerin ve temel sunucu yapılandırmasının doğru kullanımına özellikle dikkat etmelidir.

WordPress'e genel bakış

WordPress ücretsiz ve açık kaynaklı bir içerik yönetim sistemidir (CMS). Dünyadaki en yaygın kullanılan CMS yazılımıdır ve ilk 10 milyon web sitesinin1 41% oranından daha fazlasına güç verir ve bir CMS kullanan tüm sitelerin tahmini 62% kadar pazar payını verir.

WordPress, dört temel özgürlük sağlayan Genel Kamu Lisansı (GPLv2 veya üstü) lisansına sahiptir ve WordPress 'haklar bildirgesi' olarak kabul edilebilir.

  1. Programı herhangi bir amaç için çalıştırma özgürlüğü.
  2. Programın nasıl çalıştığını inceleme ve dilediğin şeyi yapmak için değiştirme özgürlüğü.
  3. Yeniden dağıtma özgürlüğü.
  4. Değiştirilmiş sürümlerinizin kopyalarını başkalarına dağıtabilme özgürlüğü.

WordPress Çekirdek Liderlik Takımı

WordPress projesi çekirdek liderlik ekibi tarafından yönetilen ve ortak yaratıcısı ve baş geliştiricisi Matt Mullenweg tarafından yönetilen bir meritokrasidir. Ekip, çekirdek geliştirme, WordPress.org ve topluluk girişimleri dahil olmak üzere projenin tüm yönlerini yönetir.

Çekirdek liderlik ekibi Matt Mullenweg, beş baş geliştirici ve kalıcı taahhüt erişimi olan bir düzineden fazla çekirdek geliştiriciden oluşur. Bu geliştiricilerin teknik kararlar konusunda nihai yetkileri vardır ve mimari tartışmalara ve uygulama çabalarına öncülük ederler.

WordPress'in bir çok katkıda bulunan geliştiricisi var. Bunlardan bazıları eski veya şu andaki sorumluluk sahipleri ve bazıları da gelecekteki kişilerdir. Katkıda bulunan bu geliştiriciler, akranları arasında büyük saygı gören WordPress'e güvenilir ve kıdemli katkıda bulunuyorlar. WordPress ayrıca, gerektikçe geçici veya deneme esasına dayalı olarak, bazen belirli bir bileşen için, erişim izni verilen geliştiricilere sahiptir.

Çekirdek ve katkıda bulunan geliştiriciler öncelikle WordPress geliştirmesine rehberlik eder. Her sürümde, yüzlerce geliştirici WordPress’e kod katıyor. Bu temel katkıda bulunanlar, temel kod tabanına bir şekilde katkıda bulunan gönüllülerdir.

WordPress Dağıtım Döngüsü

Her WordPress sürüm döngüsü, temel WordPress geliştiricilerinden biri veya daha fazlası tarafından yönetilir. Bir sürüm döngüsü genellikle ilk kapsam belirleme toplantısından sürümün kullanıma sunulmasına kadar yaklaşık 4 ay sürer.

Bir dağıtım döngüsü aşağıdaki deseni izler2:

  • Aşama 1: Takım adaylarının planlanması ve güvenliği. Bu Slack #core sohbet odasında yapılır. Sürüm kılavuzu, WordPress’in bir sonraki sürümü için özellikleri tartışır. WordPress katılımcıları bu tartışmaya dahil olur. Sürüm lideri, her özellik için ekip liderlerini belirleyecektir.
  • Aşama 2: Geliştirme çalışmaları başlar. Ekip liderleri ekipleri bir araya getirir ve atanan özellikleri üzerinde çalışır. Geliştirmenin ilerlemeye devam etmesini sağlamak için düzenli sohbetler planlanır.
  • Aşama 3: Beta. Betalar yayınlanır ve beta test kullanıcılarından hataları bildirmeye başlamaları istenir. Bu aşamadan sonra yeni geliştirmeler veya özellik talepleri için başka taahhüt yapılmaz. Üçüncü taraf eklenti ve tema yazarlarının kodlarını yaklaşan değişikliklere karşı test etmeleri önerilir.
  • Aşama 4: Adayı yayınla. Bu noktadan sonra çevrilebilir metinler için bir dizi dondurma vardır. İş sadece regresyonlar ve bloklayıcılara yöneliktir.
  • 5. Aşama: Dağıtım. WordPress sürümü dağıtılır ve WordPress yönetici ekranında güncellemeler için kullanıma sunulur.

Sürüm Numaralandırma ve Güvenlik Dağıtımları

Önemli bir WordPress sürümü ilk iki dizi tarafından belirlenir. Örneğin, 3.5, 3.6, 3.7 veya 4.0 gibi büyük bir sürümdür. Bir “WordPress 3” veya “WordPress 4” yoktur ve her büyük sürüm numaralandırmasıyla belirtilir, örneğin “WordPress 3.9”.

Büyük sürümler yeni kullanıcı özellikleri ve geliştirici API özellikleri içerir. Yazılım dünyasında alışageldik yapı büyük sürümlerin geriye uyumluluğu kırdığı noktalar olsa da WordPress geriye uyumluluğu kırmamak için uğraşır. Geriye uyumluluk projenin en önemli felsefelerinden biridir, amacımız kullanıcılar ve geliştiriciler için olabilecek en kolay güncellemeleri sunmaktır.

Küçük WordPress sürümü üçüncü sayı ile gösterilir. 3.5.1 sürümü bir küçük güncellemedir, 3.4.2'de öyle3. Bir küçük güncelleme güvenlik açıklarını kapatmak ya da önemli kritik hataları gidermek içindir. WordPress'in yeni sürümleri sık yayımlandığı için — hedef her 4-5 ayda bir yeni bir büyük sürüm ve gerektikçe küçük sürümler — büyük ve küçük sürümler için gerekli olduğunda dağıtım çıkar.

Sürüm Geriye Uyumluluk

WordPress projesi geriye uyumluluk konusunda büyük bir bağlılık göstermektedir. Bu bağlılık temalarınızın, eklentilerinizin ve özel geliştirdiğiniz kodların WordPress çekirdek yazılımı güncellense de çalışmasını amaçlar, böyece site sahiplerini her zaman WordPress'in en güncel ve güvenli sürümünü kullanmaya cesaretlendiririz.

WordPress ve Güvenlik

WordPress güvenlik ekibi

WordPress Güvenlik Ekibi yaklaşık 50 uzmandan oluşmaktadır, buna lider geliştiriciler ve güvenlik araştırmacıları dahildir — neredeyse yarısı Automattic çalışanıdır (WordPress.com'un yapıcıları, webdeki en erken ve en büyük WordPress bulundurma platformu), ve bir kısmı da web güvenliği alanında çalışır. Ekip iyi bilinen ve güvenilir güvenlik araştırmacılarına ve bulundurma şirketlerine de danışır3.

WordPress Güvenlik Ekibi bir çok zaman diğer güvenlik ekipleri ile beraber ortak gereksinimler üzerinde çalışır, örneğin WordPress 3.9.24 sürümünde WordPress ile beraber dağıtılan XML-RPC API'si tarafından kullanılan PHP XML ayıklayıcıdaki bir hatayı gidermek için olduğu gibi. Bu açık hem WordPress hem de Drupal güvenlik ekiplerinin ortak çabaları ile kapatıldı.

WordPress Güvenlik Riskleri, Süreci ve Tarihçesi

WordPress güvenlik ekibi herhangi bir potansiyel açık durumunda güvenlik ekibinin hemen uyarılması yoluyla sorumlu ifşaya inanmaktadır.Potansiyel güvenlik açıkları Güvenlik Ekibine WordPress HackerOne5 üzerinden iletilebilir. Güvenlik ekibi kendi içinde gizli bir Slack kanalında görüşüp, kapalı kapılar ardında gizli bir depoa geliştirip, test edip hataları giderir ve güvenlik problemlerini giderir.

Her bir güvenlik raporu alındığı gibi tasdik edilir, ardından ekip açığı doğrulamaya ve seviyesini tespit etmeye çalışır. Doğrulandığı durumda güvenlik ekibi problemi düzeltmek için bir yama planlar, bu yama durumun aciliyetine göre bir sonraki sürüm ile beraber dağıtılabileceği gibi bir güvenlik güncellemesi ile de dağıtılabilir.

Acil bir güvenlik dağıtımı için Güvenlik Ekibi tarafından WordPress.org Haber sitesinde6 dağıtımı haber veren ve değişiklik ayrıntılarını içeren bir bildirim yayınlanır. Gelecekte de sorumluluk bilinci ile raporlamaların devam etmesi için bu bildirimde açık bulan kişi(ler) gerektiği gibi onurlandırılır.

WordPress yazılımının yöneticileri sitelerinin yönetim panelinde yeni bir sürüm olduğuna dair bir bildirim görürler, el ile yapılan güncelleme işlemi sonrasında değişiklikler ile ilgili WordPress Hakkında sayfasına yönlendirilirler. Eğer yöneticiler otomatik arka plan güncellemelerini etkinleştirdiyse, güncelleme tamamlandığında bir e-posta ile bilgilendirilirler.

Güvenlik Dağıtımları için Otomatik Arka Plan Güncellemeleri

3.7 sürümü ile beraber, WordPress tüm küçük güncellemeler7 için arka planda otomatik güncelleme özelliğini getirdi, örneğin 3.7.1 ve 3.7.2. WordPress Güvenlik Ekibi güvenlik iyileştirmelerini tespit edebilir, yamayabilir ve otomatik bir şekilde sitenize ileterek yüklenmesini sağlayabilir, hem de site sahibinin hiç bir şey yapmasına gerek kalmadan.

WordPress'in mevcut kararlı sürümü için bir güvenlik güncelleştirmesi gönderildiğinde, arka plan güncellemesi yapabilen (WordPress 3.7'den bu yana) tüm sürümler için güvenlik güncellemesi çıkar, böylece eski fakat güncel WordPress sürümleri de güvenlik güncellemelerini alabilir.

Bireysel site sahipleri yapılandırma dosyalarında yapabilecekleri ufak bir değişiklik ile arka plan güncellemelerini almayı tercih edebilirler, fakat bu özellik çekirdek ekip tarafından kuvvetler önerilmektedir, ki WordPress'in kararlı en son sürümü ile çalışabilesiniz.

2013 OWASP En İyi 10

Açık Web Uygulaması Güvenliği Projesi (OWASP), web uygulamalarının güvenliğine adanmış bir çevrimiçi topluluktur. OWASP İlk 10 listesi8, çok sayıda kuruluş içinden en ciddi uygulama güvenliği risklerini belirlemeye odaklanmıştır. İlk 10 öge, kötüye kullanılabilme, algılanabilme ve etki öngörüleri değerlendirilerek fikir birliği ile seçilir ve sıralanır.

Aşağıdaki bölümlerde WordPress'in temel yazılımı ve üçüncü taraf eklentilerini ve bu potansiyel risklere karşı temaları güçlendirmek için kullandığı API'ler, kaynaklar ve politikalar ele alınmaktadır.

A1 - Enjeksiyon

WordPress, geliştiricilere bir kodun yetki sahibi olmadan enjekte edilmesini engellemek ve doğrulanıp ayıklanmasına yardımcı olmak için çeşitli işlevler ve bir API uygulaması sağlar. HTML, URL ve HTTP üst bilgilerinde bulunabilecek veriler ile veritabanı ve dosya sistemi tarafından işlenen gelen ve giden verilerin API tarafından doğrulanması ve ayıklanması için uygulama örnekleri ve belgeleri 9 üzerinde bulabilirsiniz. Ayrıca yöneticiler süzgeçleri kullanarak yüklenebilecek dosya türlerini daha da kısıtlayabilir.

A2 - Bozuk Kimlik Doğrulama ve Oturum Yönetimi

WordPress çekirdek yazılımı, kullanıcı hesaplarını yönetir ve kimlik doğrulaması yapar ve kullanıcı kimliği, adı ve şifresi gibi ayrıntılar, kimlik doğrulama çerezlerinin yanı sıra sunucu tarafında yönetilir. Şifreler veritabanında standart tuzlama ve germe teknikleri kullanılarak korunmaktadır. Var olan oturumlar, 4.0'dan sonra WordPress sürümleri için, oturumu kapattıktan sonra imha edilir.

A3 - Siteler Arası Komut Dosyası (XSS)

WordPress, kullanıcı tarafından paylaşılan verilerin güvenliğini sağlamaya yardımcı olabilecek çeşitli işlevler sunar10. Tek bir WordPress kurulumunda yöneticiler ve düzenleyiciler olan güvenilir kullanıcılar ve yalnız WordPress Multisite kurulumunda ağ yöneticileri, bir gönderi veya sayfa gibi, gerek duydukları kadar süzülmemiş HTML veya JavaScript yazıları ekleyebilir. Güvenilmeyen kullanıcılar ve kullanıcı tarafından gönderilen içerik, tehlikeli içerikleri kaldırmak için varsayılan olarak wp_kses işlevi tarafından KSES kitaplığı kullanılarak süzülür.

Bir örnek olarak, WordPress çekirdeği ekibi, WordPress 2.3 sürümünün yayınlanmasından önce the_search_query() işlevinin, HTML içinde kullanılmak üzere işlevin çıktısından kaçmayan çoğu tema yazarı tarafından hatalı kullanıldığını fark etti. Geriye dönük uyumluluğun hafifçe bozulduğu çok nadir bir durumda, işlevin çıktısı WordPress 2.3 sürümünde önceden kaçılacak şekilde değiştirildi.

A4 - Güvensiz Doğrudan Nesne Referansı

WordPress sıklıkla, kullanıcı hesaplarının eşsiz sayısal belirteçlerini ya da adres veya form alanlarında bulunan içerikler gibi doğrudan nesne referansları sağlar. Bu belirteçler doğrudan sistem bilgilerini açığa çıkardığından, WordPress zengin izinler ve erişim denetimi sistemini kullanarak, yetkili olmayan istekleri engeller.

A5 - Yanlış Güvenlik Yapılandırması

WordPress güvenlik yapılandırma işlemlerinin çoğu, tek bir yetkili yönetici ile sınırlıdır. WordPress için varsayılan ayarlar, çekirdek ekip düzeyinde sürekli olarak değerlendirilir ve WordPress çekirdek ekibi, bir WordPress sitesini11 çalıştırmak için sunucu yapılandırması güvenliğini sıkılaştırmak için belgeler ve en iyi uygulamaları sağlar.

A6 - Hassas Veri Maruziyeti

WordPress kullanıcı hesabı parolaları, Portable PHP Password Hahing Framework12 çatısı kullanılarak karılır. WordPress izin sistemi, kayıtlı kullanıcılar PII, yorum yapanlar ve e-posta adresleri, özel olarak yayınlanmış içerik gibi özel bilgilere erişimi denetlemek için kullanılır. WordPress 3.7 sürümünde çekirdek yazılıma parola zorluğu ölçümü eklenerek, kullanıcılar parolalarını belirlerken ek bilgiler ve parola zorluğunu artırma konusunda ipuçları sunuldu. Ayrıca HTTPS kullanımı için WordPress üzerinde isteğe bağlı bir yapılandırma ayarı bulunur.

A7 - Eksik İşlev Seviyesi Erişim Kontrolü

WordPress, eylem gerçekleştirilmeden önce herhangi bir işlev düzeyi erişim isteği için uygun yetkilendirme ve izinleri kontrol eder. Yönetimsel URL'lere, menülere ve sayfalara doğru kimlik doğrulaması yapılmadan erişilmesi veya görüntülenmesi, yetkisiz kullanıcıların erişimini önlemek için kimlik doğrulama sistemi ile sıkı bir şekilde bütünleştirilir.

A8 - Siteler Arası İstek Sahteciliği (CSRF)

WordPress, potansiyel CSRF tehditlerine karşı koruma sağlamak amacıyla, yetkili kullanıcılardan gelen işlem isteklerinin amacını doğrularken nonce13 (number used once) adı verilen tek kullanımlık şifreleme kodlarını kullanır. WordPress üzerinde, eşsiz ve geçici kodlar oluşturmak ve doğrulamak için bu kodların oluşturulmasını sağlayan bir API bulunur. Tek kullanımlık kodlar, belirli bir kullanıcı, belirli bir işlem, belirli bir nesne ve belirli bir saat dilimi ile sınırlanmıştır ve gerektiğinde formlara ya da adreslere eklenebilir. Ayrıca oturum kapatıldığında tüm tek kullanımlık kodlar geçersiz kılınır.

A9 - Bilinen Güvenlik Açıkları olan Bileşenleri Kullanma

WordPress çekirdek ekibi, WordPress'in temel işlevler için entegre olduğu birkaç kütüphaneyi ve çatıları yakından izler. Geçmişte çekirdek ekip birçok üçüncü taraf bileşenine daha güvenli hale getirmek için, WordPress 3.5.2'de14 TinyMCE'deki siteler arası bir güvenlik açığını gidermek için güncelleme gibi, katkıda bulundu.

Çekirdek ekip gerekirse kritik harici bileşenleri çatallamaya veya değiştirmeye, 3.5.2 sürümünde SWFUpload kütüphanesinin Plupload kütüphanesi ile değiştirildiği ve güvenlik ekibi15 tarafından kısa vadede SWFUpload#8217;u kullanmaya devam eden eklentiler için güvenli bir SWFUpload çatalı yerleştirilmesi gibi, karar verebilir.

A10 - Doğrulanmamış Yönlendirmeler ve İletmeler

WordPress’in dahili erişim kontrolü ve kimlik doğrulama sistemi, kullanıcıları istenmeyen hedeflere veya otomatik yönlendirmelere karşı koruma sağlayacaktır. Bu işlevsellik, wp_safe_redirect()16 adlı bir API aracılığıyla eklenti geliştiricilere de sunulur.

Ek Güvenlik Riskleri ve Endişeler

XXE (XML eXternal Entity) işleme saldırıları

XML işlenirken, WordPress, External Entity ve Entity Expansion saldırılarını önlemek için özel XML varlıklarının yüklenmesini devre dışı bırakır. PHP'nin temel işlevselliğinin ötesinde, WordPress, eklenti yazarları için ek güvenli XML işleme API'sı sağlamaz.

SSRF (Sunucu Tarafı İsteği Sahteciliği) Saldırıları

WordPress tarafından gönderilen HTTP istekleri geridöngü ve özel IP adreslerine erişimi önlemek için filtrelenir. Ayrıca, yalnızca belirli standart HTTP bağlantı noktalarına erişim izni verilir.

WordPress eklenti ve tema güvenliği

Varsayılan tema

WordPress, içeriği ön uçta görünür kılmak için bir temanın etkinleştirilmesini gerektirir. Çekirdek WordPress (şu anda "Twenty Twenty-One") ile birlikte gelen varsayılan tema, hem tema geliştiricileri hem de çekirdek geliştirme ekibi tarafından güvenlik nedeniyle detaylıca incelenip test edildi.

Varsayılan tema, özel tema geliştirme için bir başlangıç noktası olabilir ve site geliştiricileri, bazı özelleştirmeler içeren ancak çoğu işlevsellik ve güvenlik için varsayılan temaya geri dönen bir alt tema oluşturabilir. Varsayılan tema, gerekirse bir yönetici tarafından kolayca kaldırılabilir.

WordPress.org Tema ve Eklenti Depoları

WordPress.org sitesinde listelenen yaklaşık 50.000+ eklenti ve 5.000+ tema bulunmaktadır. Bu temalar ve eklentiler depoya dahil edilmek üzere gönderilir ve gönüllüler tarafından depoda kullanılabilir duruma getirilmeden önce elle gözden geçirilir.

Eklentilerin ve temaların depoya eklenmesi, güvenlik açıklarından arınmış olmalarının garantisi değildir. Eklenti yazarlarının, depoya17 dahil edilmeden önce başvurularından önce danışmaları için kılavuzlar sağlanmıştır ve WordPress tema geliştirmesinin18 nasıl yapılacağına ilişkin kapsamlı belgeler WordPress.org sitesinde verilmektedir.

Her bir eklenti ve tema, eklenti veya tema sahibi tarafından sürekli olarak geliştirilebilme özelliğine sahiptir ve sonraki düzeltmeler veya özellik geliştirmeleri depoya yüklenebilir ve bu eklentinin veya temanın bu değişikliğin açıklamasıyla birlikte yüklendiği kullanıcılar tarafından kullanılabilir. Site yöneticileri, yönetim panoları aracılığıyla güncellenmeleri gereken eklentilerden haberdar edilir.

WordPress güvenlik ekibi tarafından bir eklenti güvenlik açığı tespit edildiğinde, eklentinin yazarına ulaşır ve eklentiyi düzeltmek ve güvenli bir sürümünü yayınlamak için birlikte çalışırlar. Eklenti yazarından yanıt gelmiyorsa veya güvenlik açığı ciddiyse, eklenti/tema ortak dizinden alınır ve bazı durumlarda doğrudan güvenlik ekibi tarafından düzeltilir ve güncellenir.

Tema İnceleme Ekibi

Tema inceleme ekibi, resmi WordPress tema dizinine dahil edilmek üzere gönderilen temaları inceleyen ve onaylayan, WordPress topluluğunun kilit ve kurulu üyeleri tarafından yönetilen bir grup gönüllüdür. Tema inceleme ekibi, resmi tema inceleme kılavuzlarını19, tema unit test verilerini20 ve tema denetimi eklentilerini21 yönetir ve WordPress tema geliştiricisi topluluğunu, en iyi uygulama geliştirme uygulamaları hakkında bilgilendirmeye ve eğitmeye çalışır. Gruba dahil olma, WordPress geliştirme ekibi tarafından denetlenir.

WordPress Güvenliğinde Barındırma Sağlayıcısının Rolü

WordPress çok sayıda platforma kurulabilir. WordPress çekirdek yazılımı, bu belgede ele alınan güvenli bir web uygulamasının çalıştırılması için birçok hüküm sunsa da, işletim sisteminin ve yazılımı barındıran temel web sunucusunun yapılandırılması, WordPress uygulamalarının güvenliğini sağlamak için eşit derecede önemlidir.

WordPress.com ve WordPress güvenliği hakkında bir not

WordPress.com, dünyanın en büyük WordPress kurulumudur ve WordPress proje ortak yaratıcısı Matt Mullenweg tarafından kurulan Automattic, Inc. şirketine aittir. WordPress.com, çekirdek WordPress yazılımı üzerinde çalışır ve kendi güvenlik süreçleri, riskleri ve çözümleri vardır22. Bu belge, WordPress.org adresinde bulunan ve dünyadaki herhangi bir sunucuya yüklenebilen, kendi kendine barındırılan, indirilebilir açık kaynaklı WordPress yazılımıyla ilgili güvenlik anlamına gelir.

Ek

Temel WordPress API'leri

WordPress çekirdek ıygulama programlama arabirimi (API)23, her biri belirli bir işlev kümesinde yer alan işlevleri kullanan birkaç ayrı API'den oluşur. Bunlar, eklentilerin ve temaların WordPress çekirdek işlevselliğini güvenli ve sağlam bir şekilde etkileşime girmesini, değiştirmesini ve genişletmesini sağlayan proje arabirimini oluşturur.

Her WordPress API'si, WordPress çekirdek yazılımıyla etkileşimde bulunmak ve genişletmek için en iyi uygulamaları ve standartlaştırılmış yolları sunarken, aşağıdaki WordPress API'leri WordPress güvenliğini sağlamak ve sağlamlaştırmak için en uygun olanlardır:

Veritabanı API

WordPress 0.71'e eklenen veritabanı API'si24, verilere veritabanı katmanında depolanan adlandırılmış değerler olarak erişmek için doğru yöntemi sağlar.

Filesystem API

WordPress 2.6'da26 eklenen dosya sistemi API'si25, aslında WordPress'in kendi otomatik güncelleme özelliği için oluşturulmuştur. Dosya sistemi API'si, çeşitli sunucu türlerinde, güvenli bir şekilde, dosya sisteminde yerel dosyaları okumak ve yazmak için gereken işlevselliği özetler.

Bunu, WP_Filesystem_Base sınıfı ve sunucu desteğine bağlı olarak yerel dosya sistemine bağlanmak için farklı yöntemler uygulayan birkaç alt sınıf aracılığıyla yapar. Yerel olarak dosya yazması gereken herhangi bir tema veya eklenti WP_Filesystem sınıf ailesini kullanarak bunu yapmalıdır.

HTTP API

WordPress 2.7'ye28 eklenen ve WordPress 2.8'de daha da genişletilmiş olan HTTP API27, WordPress için HTTP isteklerini standartlaştırır. API çerezleri, gzip kodlamasını ve kodunu çözmeyi, yığın kod çözmeyi (eğer HTTP 1.1 ise) ve diğer çeşitli HTTP protokol uygulamalarını ele alır. API istekleri standartlaştırır, göndermeden önce her yöntemi test eder ve sunucu yapılandırmanıza bağlı olarak isteği yapmak için uygun yöntemi kullanır.

İzinler ve şuandaki API kullanıcısı

İzinler ve mevcut kullanıcı API'si29, mevcut kullanıcının talep edilen herhangi bir görevi veya işlemi gerçekleştirmek için izinlerini ve yetkisini doğrulamaya yardımcı olacak ve yetkisiz kullanıcıların izin verilen özelliklerin ötesindeki işlevlere erişmesine veya bunları gerçekleştirmesine karşı daha fazla koruma sağlayabilecek bir işlevler kümesidir.

Teknik inceleme içeriği lisansı

Bu belgedeki metin (WordPress logosu veya ticari markası dahil değil) CC0 1.0 Universal (CC0 1.0) altında lisanslanmıştır. İşi, ticari amaçlar için bile izinsiz olarak kopyalayabilir, değiştirebilir, dağıtabilir ve gerçekleştirebilirsiniz.

Bazı ilhamlar veren, Drupal'ın güvenlik belgesi sunumuna özel bir teşekkür ederiz.

Ek okuma


Sara Rosso tarafından geliştirilmiştir

Barry Abrahamson, Michael Adams, Jon Mağarası, Helen Hou-Sandí, Dion Hulse, Mo Jangda, Paul Maiorana katkıları

Sürüm 1.0 Mart 2015


Dipnotlar