WordPress SQL Enjeksiyonu: Tam Bir Koruma Kılavuzu

Yazdır · Время на чтение: 17min · tarafından · Yayınlanan · Güncellenmiş

oynamakBu makaleyi dinle

WordPress SQL Injection - SQL Saldırılarına Karşı Koruma Rehberi.

SQL enjeksiyonu WordPress sitelerine yapılan en yıkıcı saldırılardan bazılarıdır. Aslında, en kritik WordPress güvenlik açıkları listesinde ikinci sırada, yalnızca siteler arası komut dosyası çalıştırma saldırılarından sonra ikinci sırada yer alıyorlar. WordPress SQL enjeksiyonu, bir bilgisayar korsanının sitenizin veritabanına erişmesine ve ardından onu kötü amaçlı yazılımla doldurmasına olanak tanır.

WordPress sitelerinde SQL enjeksiyon saldırıları hakkında bir şeyler okuduysanız ve bunların neden olabileceği zararlardan endişe ediyorsanız, doğru yere geldiniz. Size bu saldırılardan kaynaklanan kötü amaçlı yazılımlarla tam olarak nasıl başa çıkacağınızı ve daha da önemlisi bunların oluşmasını nasıl önleyeceğinizi anlatacağım.

2019'da tüm saldırıların üçte ikisi SQL enjeksiyon saldırılarıydı. Bu sayı biraz azaldı ama bu onları daha az tehlikeli yapmıyor. Bununla birlikte, bir WordPress SQL enjeksiyon saldırısının ne yaptığını ve nasıl çalıştığını anlamak, sitenizin güvenliğini sağlamada uzun bir yol kat eder. SQL enjeksiyon saldırıları, herhangi bir web sitesi için tehlikelidir ve önemli hasara neden olabilir.

Makalenin içeriği:

WordPress SQL Enjeksiyon Saldırıları nedir?

WordPress SQL enjeksiyon saldırıları - nedir bu?
WordPress SQL enjeksiyon saldırıları sitenizin veritabanına yetkisiz erişim sağlama girişimleridir. Web sitenizin veritabanı, gönderiler, sayfalar, bağlantılar, yorumlar ve hatta kullanıcılar gibi kullanıcılar tarafından oluşturulan tüm bilgileri ve içeriği içerir. Bu, önemli bilgilerin büyük bir deposudur ve bu nedenle bilgisayar korsanları için bir altın madeni.

WP SQL uygulaması, şaşırtıcı bir şekilde, SQL komutlarını kullanır. Yapılandırılmış Sorgu Dili veya SQL, veritabanlarıyla etkileşimde bulunmak için kullanılan bir dildir. Veritabanı tablolarında saklanan bilgileri ekleyebilen, silebilen veya değiştirebilen komutlara sahiptir. SQL, web sitesi dosyalarınızın web sitenizde görüntülenecek doğru verileri veritabanından bulmasını ve almasını sağlar.

SQL enjeksiyon saldırıları, sitenizin form alanlarına SQL komutları enjekte ederek çalışır. Örneğin, bir bilgisayar korsanı sitenize veri girmek için iletişim formunuzu kullanabilir. Veriler, web siteniz tarafından yürütülen ve dolayısıyla veritabanınızı değiştirebilecek SQL komutlarına sahiptir. Daha sonra, bir bilgisayar korsanı sitenizin veritabanına eriştiğinde, sitenizi kötü amaçlı yazılımla doldurabilir veya başka türden kabus gibi sorunlara neden olabilir.

SQL enjeksiyon saldırıları için çeşitli giriş noktaları vardır. Bilgisayar korsanları genellikle formları ve arama çubukları gibi diğer açık alanları hedefler. Arabaların SQL enjeksiyonuna duyarlı olduğu da bilinmektedir.

WordPress Sitenize SQL Enjeksiyon Saldırısının Sonuçları

Bir WordPress SQL enjeksiyonunun sonuçları, bilgisayar korsanının gölgeli erişimleriyle ne yapmayı seçtiğine bağlı olarak büyük ölçüde değişebilir. Bilgisayar korsanlarının web sitelerine yaptığı sonuçlardan bazıları şunlardır:

  • En kötü senaryoda, bir bilgisayar korsanı veritabanınızın tüm içeriğini silebilir. Bu, sitenizi bozacak ve bağımsız yedeklemeleriniz yoksa geri yüklemeyi imkansız hale getirecektir.
  • WordPress'teki SQL enjeksiyonu ile bir bilgisayar korsanı, veritabanınıza kötü amaçlı yazılım enjekte edebilir. Bu, SEO spam kötü amaçlı yazılımı ve anahtar kelime korsanlığı veya ilaç korsanlığı gibi değişkenler anlamına gelebilir. Ayrıca, tüm gönderileri ve sayfaları etkileyen saldırıya uğramış yeniden yönlendirme kötü amaçlı yazılımı anlamına da gelebilir.
  • Bir bilgisayar korsanı, bir kullanıcının hesabının kontrolünü ele geçirebilir ve ayrıcalıklarını yükseltebilir. Garip kullanıcı etkinliği görürseniz, bu saldırıya uğramış bir web sitesinin işareti olabilir.
  • Bilgisayar korsanının veritabanınıza erişimi olduğu için veri ekleyebilir, değiştirebilir, silebilir ve hatta çalabilir. Bu, özellikle e-postalar veya kişisel veriler gibi kullanıcı verilerini saklıyorsanız, büyük bir gizlilik sorunu oluşturur. Veri sızıntıları kullanıcıları riske atar.
  • Son olarak, SQL enjeksiyon saldırıları, uzaktan kod yürütme saldırılarına da yol açabilir.

Kısacası, SQL enjeksiyon saldırıları, bilgisayar korsanları tarafından yetkisiz erişim elde etmek için kullanılan bir mekanizmadır. Bir kez yaptıklarında, web sitenize çok fazla zarar verebilirler.

WordPress Sitenizde SQL Enjeksiyon Güvenlik Açığı Olup Olmadığını Nasıl Kontrol Edebilirsiniz?

SQL enjeksiyon saldırılarının genellikle başarılı olmasının en büyük nedeni güvenlik açıklarıdır. Güvenlik açıkları, ister WordPress çekirdeği, ister eklentiler veya temalar olsun, koddaki eksikliklerdir. WordPress SQL enjeksiyonunun nasıl çalıştığının mekaniğini bu makalenin ilerleyen bölümlerinde ele alacağız, ancak güvenlik açıklarının giriş noktaları olduğunu söylemekle yetinelim.

Sitenizde bir WordPress SQL enjeksiyon güvenlik açığı olup olmadığını öğrenmenin birkaç yolu vardır:

1. Sitenizdeki herhangi bir şeyin güncellenmesi gerekip gerekmediğini kontrol edin. Sitenizdeki herhangi bir yazılımda bir güvenlik açığı bulunursa, o yazılımın geliştiricileri mutlaka bir güvenlik yaması güncellemesi yayınlayacaktır. Her zaman sitenizi güncellemekten yana olmamın ana nedeni budur.

2. Sızma Testi Aracı kullanın. Çok popüler bir SQL enjeksiyon aracı olan sqlmap, web sitenizi WordPress SQL enjeksiyon güvenlik açığı açısından kontrol eder.

3. Sitenizi SQL kodu ile test edin. Bu adım, sizden biraz teknik bilgi gerektirir. Sitenizin hangi veritabanını kullandığına bağlı olarak, hangi komutları deneyeceğinizi bulmak için bu kopya kağıdını kullanabilirsiniz.

SQL enjeksiyon güvenlik açıklarını test edecek çevrimiçi tarayıcılar da vardır. Sqlmap bunlardan biridir, ancak Acunetix, bir web sitesi güvenlik açığı tarayıcısı ve diğer açık kaynak araçları da vardır. Ancak bunlar penetrasyon testi araçlarıdır ve sitenizi saldırılardan koruyamaz. Sitenizi saldırılardan korumak için bir WordPress güvenlik duvarı kurmanız gerekir.

SQL Enjeksiyon Saldırısının Sızdığı Kötü Amaçlı Yazılımlardan Nasıl Kurtulunur?

WordPress SQL enjeksiyonu, kötü amaçlı yazılımın kendisi değildir, ancak sitenizin veritabanına veya sitenin kendisine potansiyel olarak kötü amaçlı yazılım enjekte etmek için bir mekanizmadır.

Sitenizdeki kötü amaçlı yazılımın belirtileri

Kötü amaçlı yazılım bir web sitesinde her zaman net bir şekilde görünmez, ancak dikkat edebileceğiniz bazı belirtiler vardır:

  • Web sitenizi Google arama sonuçlarında spam yapmak.
  • Google Search Console'daki güvenlik sorunları.
  • Web sitenizdeki hatalar ve diğer sorunlar, örneğin sayfalardaki bozuk kodlar veya spam pop-up'ları.
  • Web sitesinde açıklanamayan dahili değişiklikler.
  • Site başka bir siteye yönlendiriyor.
  • Google sitenizi kara listeye alıyor.
  • Yandex ihraç pozisyonlarında büyük bir düşüş var.
  • Ana istekler için konumlar ve sonuçlar kaybolur.
  • Yandex Webmaster size bir güvenlik ihlali bildirir.
  • Web sunucusu siteyi duraklatır veya bir uyarı e-postası gönderir.
  • Site yavaşlamaları gibi performans sorunları.
  • Kullanıcılara gönderilen spam gibi kullanıcı deneyimi sorunları.
  • Ani trafik patlamaları için analiz şablonlarında yapılan değişiklikler.
  • Google Ads hesabı kara listeye alındı.
  • Yandex YAN hesabı da engellendi.

Bu belirteçlerden yalnızca biri anormal olabilir, ancak iki veya daha fazlasının birleşimi, kesin bir kötü amaçlı yazılım belirtisidir.

Sitenizi kötü amaçlı yazılımlara karşı tarayın

Web sitenizde açıklanamayan bir durum görürseniz, web sitenizde kötü amaçlı yazılım bulunduğunu doğrulamanız gerekir. Bunu yapmanın en iyi yolu, sitenizi kötü amaçlı yazılımlara karşı taramaktır. Web sitenizi taramanın, azalan etkinlik sırasına göre listelediğimiz üç yolu vardır.

  • Web sitenizdeki veya veritabanınızdaki en küçük kötü amaçlı yazılım izlerini bulmak için bir güvenlik tarayıcısıyla derinlemesine tarama yapın. Bu, sitenizde kötü amaçlı yazılım olup olmadığını belirlemenin nihai yoludur.
  • Çevrimiçi bir tarayıcıyla tarama, daha az verimli bir tarama yöntemidir, ancak bir sorun olup olmadığını anlamak için iyi bir ilk adımdır.
  • Manuel kötü amaçlı yazılım taraması en az etkili olanıdır, bu nedenle kesinlikle önermiyoruz.

Kötü amaçlı yazılımları sitenizden kaldırın

Sitenizde kötü amaçlı yazılım olduğunu belirledikten sonra, siteyi hemen temizlemeye öncelik vermeniz gerekir. Kötü amaçlı yazılım barizdir ve zamanla daha da kötüleşir.
Kötü amaçlı yazılımları WordPress sitenizden kaldırmanın 3 yolu vardır.:

  1. Bir WordPress güvenlik eklentisi kullanın;
  2. Bir WordPress destek ekibi kiralayın;
  3. Kötü amaçlı yazılımları manuel olarak temizleyin.

1. Bir WordPress güvenlik eklentisi kullanın

Üç seçenek arasından en iyisi bir güvenlik eklentisi kullanmaktır. Aşağıdaki gibi eklentileri öneririm:

  • All In One WP Security
  • Wordfence Security

Web sitenizi birkaç dakika içinde kötü amaçlı yazılımlardan temizlemenize yardımcı olurlar. Verilerinizi tamamen bozulmadan tutarken sitenizden yalnızca kötü amaçlı yazılımları ameliyatla kaldırmak için akıllı bir sistem kullanırlar.

Aslında, WordPress SQL Injection, web sitenizin veritabanına kötü amaçlı yazılım enjekte edebilir, ancak bunun gibi eklentiler, kötü amaçlı yazılım veritabanını temizleme söz konusu olduğunda, diğer tüm güvenlik eklentilerinin önünde ve omuzlarındadır.

2. Bir WordPress Yardım Masası İşe Alın

Bir sonraki en iyi seçenek, sitenizi kötü amaçlı yazılımlardan temizlemek için bir bakım hizmeti veya güvenlik uzmanı tutmaktır. Ancak, bu hizmetlerin pahalı olduğunu ve temizliği nadiren telafi ettiğini unutmayın. Sonuç olarak, hizmetler için büyük bir fatura alabilirsiniz.

3. Kötü amaçlı yazılımları manuel olarak temizleyin

Kötü amaçlı yazılımları manuel olarak temizlememenizi şiddetle tavsiye ederim. Sürenin yanı sıra, insan hatasına her zaman yer vardır.

Hack Sonrası Kontrol Listesi

Kötü amaçlı yazılım kaldırıldıktan sonra yapmanız gereken birkaç şey vardır. Bunlar, bir bilgisayar korsanının potansiyel olarak web sitenize ve veritabanınıza bir süreliğine erişebileceğini hesaba katan hizmet görevleridir.

  1. Tüm şifreleri güncelleyin: kullanıcılar, veri tabanı, e-postalar, her şey;
  2. Rolleri Değiştirme ve WordPress Güvenlik Anahtarları;
  3. Tüm önbellekleri temizle;
  4. Kullanıcıları parola değiştirme konusunda uyarın.

Genel bir kural olarak, parolalar gibi hassas bilgilerin ele geçirilmiş olabileceğini ve bu nedenle değiştirilmesi gerektiğini varsaymak en iyisidir.

WordPress'te SQL enjeksiyonları nasıl önlenir?

Kötü amaçlı yazılım ve saldırılarla baş etmenin en iyi yolu, bunların oluşmasını engellemektir. Sitenizin olabildiğince güvenli olduğundan emin olmak için uygulayabileceğiniz birkaç özel SQL enjeksiyon güvenlik adımı vardır:

  • Güvenlik eklentisini kurun: Güvenlik eklentisinin ne kadar önemli olduğunu yeterince vurgulayamıyorum. Web sitesi güvenliğinin zirvesinde kalmak için günlük olarak çalışan bir tarayıcıya ihtiyacınız var. Kötü amaçlı yazılım, sitenizde ne kadar uzun süre kalırsa o kadar tehlikeli hale gelir. Tarayıcılar, kötü amaçlı yazılım ve güvenlik açıklarını günlük olarak tarar ve aynı anda sitenizi dakikalar içinde temizleyebilir ve işlerin daha da kötüye gitmesini önleyebilirsiniz.
  • Güvenlik duvarı kullanC: Güvenlik duvarları, bir WordPress yöneticisinin katlanabileceği SQL enjeksiyon saldırılarına karşı en iyi korumadır. Güvenlik açıklarıyla ilgili sorun, bir web sitesi yöneticisi olarak altta yatan sorunları düzeltmek için yapabileceğiniz çok az şey olmasıdır. Ancak bir WordPress güvenlik duvarı kurabilirsiniz. Güvenlik duvarı, uzaktan kod yürütme ve siteler arası komut dosyası çalıştırma gibi saldırılara ek olarak SQL enjeksiyonu gibi saldırıları engellemek için kurallar kullanır.
  • Tüm eklentilerinizi ve temalarınızı güncelleyin: Sitenizdeki her şeyi güncellemenin öneminden bahsediyorum. Güncellemeler genellikle güvenlik açıkları için güvenlik düzeltmeleri içerir. Güncellemeleri geciktirmeyi seçmek, başarılı saldırılara ve kötü amaçlı yazılımlara yol açabilir.
  • Null olmadan yazılım: Uzantıları dikkatli seçin. Geçersiz kılınan eklentiler ve temalar saatli bombalardır. Kötü amaçlı yazılım önceden yüklenmiş olarak gelmezlerse, bunun yerine istismar edilebilecek arka kapıları olabilir. Ayrıca eklenti veya tema, saldırıya uğramış bir sürüm olduğu için güncellenemez. Böylece meşru sürümde güvenlik açıkları giderilse de sonsuza kadar sıfırlanmış durumda kalacaktır.
  • WordPress Güvenliğinizi Güçlendirin. WordPress web sitenizde en iyi güvenlik uygulamalarını uygulamanın yanı sıra, onu güçlendirebilirsiniz. Web sitenizde XML-RPC'yi devre dışı bırakmanızı ve iki faktörlü kimlik doğrulamayı etkinleştirmenizi özellikle tavsiye ederim.

Bir geliştiriciyseniz veya web siteniz için özel kod oluşturuyorsanız, web sitenizdeki WordPress SQL enjeksiyon güvenlik açıklarını önlemek için aşağıdakileri yapabilirsiniz:

  • Hazır ifadeleri kullanın. Bu, formdan gelen girdinin önce doğrulama için işleve gönderildiği, bir değişkende saklandığı ve ardından işleçlere iletildiği anlamına gelir. Girişler doğrudan komutların içine gömülmez ve ardından yürütülür.
  • Kullanıcı girişini sterilize ettiğinizden emin olun. Giriş doğrulaması çok önemlidir. SQL'de işleç olan tüm özel karakterleri kaldırın ve bunların parolalarda kullanılmasını tamamen yasaklayın. Sisteminiz bu karakterleri hemen reddetmelidir.
  • Hazır ifadeleri kullanan işlevlere sahip çerçeveleri de kullanabilirsiniz. Pek çok geliştirici bu platformları kullanır, böylece doğrudan kodlarına SQL deyimleri yazmak zorunda kalmazlar.
  • Veritabanına erişimi yalnızca ihtiyacı olanlarla sınırlayabilirsiniz.

Geliştirme açısından size yardımcı olacak birçok kodlama kaynağı vardır. Şans eseri, WordPress parolaları depolamak için roller kullanır, bu nedenle bir tür daha az WP SQL enjeksiyonu için endişelenmeniz gerekir.

SQL enjeksiyon saldırıları neden bu kadar yaygın?

SQL enjeksiyonları, bilgisayar korsanları için pek çok değerli veriye yol açar. Bu kadar yaygın olmalarının ana nedeni budur. Başka nedenler olsa da:

  • Çoğu web sitesi veritabanı SQL kullanır.
  • Saldırı, öncelikle form alanları aracılığıyla çalışır ve çoğu web sitesinde veri girmenize izin veren en az bir alan bulunur. İletişim formu, arama alanı vb.
  • İnternette, bir web sitesindeki SQL enjeksiyon güvenlik açıklarını tespit edebilen birçok tarayıcı vardır. Bunlar genellikle bir web sitesi yöneticisini güvenliklerindeki zayıflıklar konusunda uyarmak için tasarlanmış, ancak bilgisayar korsanları tarafından da kullanılabilen etik bilgisayar korsanlığı araçlarıdır.
  • Ne yazık ki, SQL enjeksiyonlarının gerçekleştirilmesi kolaydır. Çok fazla teknik bilgi veya deneyim gerektirmezler.
  • Bu güvenlik açıklarını hesaba katmak zordur. Aslında, WordPress güvenlik eklentilerinde de SQL enjeksiyon güvenlik açıkları bulundu. Onları bulmayı beklemeyeceğiniz tek yer.

2022'nin başlarında, WordPress'in çekirdeğinde SQL enjeksiyon güvenlik açıkları da keşfedildi. Geliştiriciler eski saldırı yöntemlerine karşı korumalar uygularken, bilgisayar korsanları web sitelerini kullanmanın yeni yollarını buluyor.

SQL enjeksiyon saldırıları nasıl çalışır?

SQL enjeksiyonları, bilgisayar korsanları bir web sitesine SQL komutları eklediğinde ve bir veritabanına erişim sağladığında işe yarar. Bunu yapmanın, SQL enjeksiyon saldırısı türleri ile ilgili bölümde inceleyeceğimiz birçok yolu vardır.

Etkilenen bir WordPress veritabanı örneği.

Esasen, bilgisayar korsanları doğrulanmamış girdiler kullanır. Temizlenmemiş girdiler, bir sistem, bu durumda bir web sitesi tarafından onaylanmayan veya onaylanmayan kullanıcı girdileridir. Girdiler veritabanı tarafından alınacak ve sonuçlar geri gönderilecektir. İstenen sonucu elde etmek için SQL komutunu yaratıcı bir şekilde kullanmakla ilgilidir.

Sitedeki iletişim formu aracılığıyla SQL enjeksiyon kodunun uygulanması.

Örneğin, bilgisayar korsanları bir veritabanından bilgi çıkarmak için SQL'de bulunan özel karakterleri kullanır. Semboller veya semboller, dilde özel bir anlamı olan operatörler olarak bilinir. Yıldız karakteri (*), "tümü" anlamına gelen bir işleçtir. Operatörler, kodlama verimliliğini artırmak için kullanılır, ancak spesifik olmadıkları için dikkatsizce kullanıldıklarında kötüye kullanılabilirler.

WordPress SQL Enjeksiyon Örneği:

Bir SQL enjeksiyon saldırısının nasıl çalıştığına dair bir örneğe bakalım:

Kullanıcı adlarından veya e-posta adreslerinden birini bildiğiniz bir giriş formunuz olduğunu varsayalım.

SELECT * FROM users WHERE email = 'admin@siteemail.ru' AND pass = 'password' LIMIT 1

Parolayı tahmin etmek yardımcı olmayabilir. Ancak, daha sonra özel bir karakter eklemeyi deneyebilirsiniz: tek tırnak. Sonuç olarak, beklenmeyen bir hata alırsınız.

Günlükler, bir sözdizimi hatasının oluştuğunu, yani tek alıntının şifreden bir karakter olarak değil, bir kod olarak okunduğu anlamına gelir. Tek alıntı, SQL'de özel bir anlama sahiptir ve bu nedenle bir hataya neden olur.

SELECT * FROM users WHERE email = 'admin@siteemail.ru' AND pass = 'password'' LIMIT 1

İkinci kod satırına bakarsanız, tek alıntı sözdizimini tamamen değiştirir. Parolanın her iki tarafındaki bir çift tek tırnak, parolanın o kod satırında nerede başladığını ve nerede bittiğini belirtir. Bu nedenle, bu işaretler arasındaki her şey bir şifre olarak kabul edilmelidir. Ancak, parolanın sonuna fazladan tırnak işaretleri ekleyerek, parola verilerini beklenenden daha erken elde edersiniz. Beklenmeyen bir hata, bilgisayar korsanına bu formun SQL enjeksiyonuna karşı savunmasız olabileceğini söyler çünkü form alanlarına girilen her şeyi tam olarak yazıldığı gibi alır ve veritabanına gönderir.

Bu arada, bu bir bilgisayar korsanı için ilginç bir bilgi. Bu bilgi, onlara veritabanının komutları nasıl işlediğine dair fikir verir.

Böylece şifre alanına ' veya 1=1 - girdik.

SELECT * FROM users WHERE email = 'admin@siteemail.ru' AND pass = '' or 1=1--' LIMIT 1

Bu bize sisteme erişim sağladı. Neden? Tek alıntı, daha önce de açıkladığımız gibi, şifre alanını sonlandırdı. 1=1 ise girdiğimiz sistemdeki gerçek değere çevrilir.

Ardından - veritabanı TRUE'dan sonraki her şeyi yok sayar. Kod, parolanın doğru olduğunu gösteren gerçek bir değer döndürdüğü için kullanıcının kimliği doğrulandı.

WordPress SQL Enjeksiyon Saldırılarının Türleri

Önceki bölümdeki örnek, çok basit bir SQL enjeksiyon saldırısının küçük bir gösterimidir. Çoğu WordPress programı zaten bu tür saldırılara karşı koruma sağlar. Klasik bant içi SQL enjeksiyonu olarak bilinir.

Bu klasik SQL enjeksiyonlarının dışında birkaç kategori daha vardır. Ancak, diğer türlerden bahsetmeden önce, WordPress siteleri bağlamında bilinmesi yararlı olan birkaç terim vardır:

  • İnternet Uygulaması: Çoğu web güvenlik kaynağı, SQL enjeksiyon saldırılarını web uygulamalarıyla ilişkili olarak açıklar. Yazımızda özellikle WordPress sitelerinden bahsediyoruz. Bu nedenle, bu durumda web uygulaması bir web sitesidir. Bu, kullanıcının etkileşime girdiği ön uçtur ve özünde bu, onu web sitesinin arka ucundan, yani veritabanından ayırmalıdır.
  • Web sunucusu: Bu, WordPress web sitenizi barındıran web sunucusudur. Tüm web siteleri, barındırma şirketlerinin web sunucularında saklanır.
  • İstekler/Yanıtlar: İnternette iletişim istekler yoluyla gerçekleşir. Bir kişi, tarayıcısını kullanarak sitenizle etkileşime girer. Tarayıcı, bir web sunucusuna bir istek gönderir, sunucu daha sonra bu isteğin içeriğini işler ve kişinin tarayıcısına bir yanıt gönderir. Örneğin, Google'da bir web sitesi bağlantısını tıklarsanız, web sitesinin sunucusuna bir istek gönderilir. Cevap, web sitesinin tarayıcınıza yüklenmiş olmasıdır.
  • Kanal: Kanal, enjeksiyon saldırıları ve bu saldırının sonuçları için kullanılan bir iletişim yöntemidir. Aşağıdaki enjeksiyon saldırı kategorilerinde temel fark kanaldır. Bant içi saldırılarda, yanıt kanalı istek ile aynıdır. Ancak kanal, mantıksal saldırılar ve bant dışı saldırılar için farklıdır. WordPress siteleri söz konusu olduğunda, bir bilgisayar korsanı siteyi saldırmak için kullanır. Saldırının sonuçları sitenin kendisinde görünüyorsa, SQL enjeksiyonunun aynı kanalı kullandığı söylenir.

Saldırı türleri

  • Bant İçi SQL Enjeksiyonu/Klasik SQ Enjeksiyonu: Altta yatan sistemin nasıl çalıştığını anlamanın çeşitli yolları vardır ve hatalar ve diğer sistem mesajları bu fikri edinmenin iyi bir yoludur. Bant içi SQL enjeksiyonları esas olarak yürütülecek SQL deyimlerini gönderir ve sonuçlar aynı sayfada görüntülenir. Klasik SQL enjeksiyon saldırılarının iki ana türü vardır:
    Hata tabanlı saldırı: Burada enjeksiyondaki SQL ifadesi kasıtlı olarak yanlış sözdizimi veya girdi içeriyor. Yürütüldüğünde, sistem bir hata mesajı döndürür. Bir bilgisayar korsanı, bu hata mesajına dayanarak veritabanıyla ilgili bilgileri bir araya getirebilir. Hata mesajları, geliştiriciler için olabildiğince yararlı olmalı ve hataları hızlı bir şekilde belirlemelerine olanak sağlamalıdır. Bu, bu işlevin büyük bir kötüye kullanımıdır.
    Katılım tabanlı saldırı: Birleştirme ifadeleri, iki veya daha fazla ifadeyi bir ifadede birleştiren SQL komutlarıdır. Bu güvenlik açığından etkilenen web siteleri, normal bir isteğin sonunda kötü amaçlı bir isteği işaretleyerek, zorlanmasını sağlar. Sonuçlar sayfada bir HTTP yanıtı olarak görüntülenir.
  • Çıkarımsal SQL Enjeksiyonu/Kör SQ Enjeksiyonu: Bant içi SQL enjeksiyon saldırılarının aksine, SQL sorgularının hataları veya sonuçları sayfada görüntülenmez. Bu nedenle, bilgisayar korsanı farklı girdi türlerini dener ve ardından veritabanının nasıl çalıştığını anlamak için ortaya çıkan davranışı analiz eder. Yarasa kornası gibi düşün. Sinyal nesnelerden yansıdığında, yarasa nesnenin boyutunu ve mesafesini ve bunun yiyecek mi yoksa tehdit mi olduğunu belirleyebilir. SQL enjeksiyon çıkarımsal saldırılarının iki ana türü vardır:
    Mantık saldırısı: Bilgisayar korsanı, önce gerçek bir sonuç üreteceğini bildiği bir istek göndererek başlar ve web uygulamasının davranışını gözlemler. Bunun bir örneği, her zaman doğru olacak 1=1 gibi bir koşul olabilir. Bilgisayar korsanı, istek yanlış olarak çözümlendiğinde davranışı gözlemleyecektir. Bu bilgilerle, veritabanının doğru ve yanlışa nasıl tepki verdiğini bilirler. Bir bilgisayar korsanının bu bilgileri verileri ayıklamak için nasıl kullanabileceği hemen belli olmayabilir. Ancak, bilgisayar korsanı artık esasen bir dizi doğru-yanlış sorusu olan sorgular oluşturabilir. Örneğin, yönetici hesabı parolalarını çıkarmak için bir bilgisayar korsanı, parolayı harf, sayı ve özel karakterlerden oluşan bir listeye göre karakter karakter kontrol edebilir. Bu liste sınırlı olduğundan, şifre yavaş yavaş açıklanacaktır. Katılıyorum, bu çok zaman alan sıkıcı bir süreç. Ancak, bilgisayar korsanları bunu otomatikleştirerek dakikalar içinde gerçekleşir.
    Zaman Tabanlı Saldırı: Teorik olarak boole saldırısına benzeyen zamana dayalı saldırı, doğru/yanlış sonucundan ziyade zaman gecikmesine dayanır. Talep doğru ise bir süre sonra geri dönüş yapılacaktır. Değilse, hemen olacak.

Çıkarımsal SQL Enjeksiyon saldırıları, nasıl yapılandırıldıklarına bağlı olarak daha uzun sürebilir. Ancak bu onları daha az tehlikeli yapmaz.

  • SQ bant dışı enjeksiyon saldırısı: Bu tür saldırılar, SQLi çıkarımsal saldırılarından bir sonraki adımdır. Bant dışı SQL enjeksiyon saldırılarında, yanıtlar web sitesinde hiç gösterilmez.

Dolayısıyla, SQLi bant dışı saldırılar, temeldeki sistemi, genellikle bilgisayar korsanı tarafından kontrol edilen başka bir sisteme yanıt göndermeye zorlayarak çalışır.

SQL enjeksiyonu yoluyla kötü amaçlı yazılımın sitenizde nasıl bir etkisi olur?

Kötü amaçlı yazılım, bir web sitesinde büyük hasara ve kayba neden olur. Kaynakları tüketir, ziyaretçileri uzaklaştırır ve çok fazla strese neden olur. Genellikle yönetici paniğe kapılır. Ayrıca, saldırıya uğramış web sitelerinde görülen kötü amaçlı yazılım etkilerinden bazıları şunlardır:

  1. Organik patlamalar;
  2. Google, sitenizi kara listeye alır;
  3. Yandex sitenizi engeller;
  4. Site güvensiz olarak işaretlenmiş görünüyor;
  5. Web barındırıcısı web sitenizi askıya alıyor;
  6. Ziyaretçiler sitenizi ziyaret etmeyi bırakır.

Bu liste sorunların yüzeyini çizmiyor bile - bunlar sadece en berbat sorunlar. Kısacası: Kötü amaçlı yazılım asla hafife alınmamalıdır.

Çıktı

Bir WordPress yöneticisinin, her şeyin güncel olduğundan emin olmak dışında web sitelerindeki WordPress SQL enjeksiyon güvenlik açıklarını azaltmak için yapabileceği çok az şey vardır. Bununla birlikte, iyi bir WordPress güvenlik duvarı, bilgisayar korsanlarının bu güvenlik açıklarından yararlanmasını engelleyerek web sitesinin güvende kalmasını sağlar. Herhangi bir yöneticinin WordPress'i güvende tutmak için yapabileceği en iyi şey, bir güvenlik eklentisi yüklemektir.

Bu makaleyi okumak:

Okuduğunuz için teşekkürler: SEO YARDIMI | NICOLA.ÜST

Bu gönderi ne kadar yararlı oldu?

Derecelendirmek için bir yıldıza tıklayın!

Ortalama puanı 5 / 5. Oy sayısı: 413

Şimdiye kadar oy yok! Bu gönderiyi ilk değerlendiren siz olun.

Şunlar da hoşunuza gidebilir...

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

on dört − on iki =