Siber GüvenlikWeb Güvenliği

SQL İnjection Nedir?

SQL, veritabanlarında data silme, çekme ve değiştirme gibi işlemler için kullanılan bir dildir. Basit yapılı olan SQL dili neredeyse tüm web uygulamalarının alt yapısında yer almaktadır. SQL injection ise web uygulamasında bulunan açığı ifade eder. İşte SQL ve SQL injection ile ilgili detaylar ve diğer bilgiler…

SQL Nedir?

SQL (Structured Query Language) veritabanlarında çeşitli işlemler yapmak için kullanılan basit bir dildir. Her web uygulamasının alt yapısında bulunan SQL dili ile birçok farklı sorgulamalar yapılabilir. Örneğin bir siteye mesaj bırakıldığında o mesaj veritabanına kaydedilir ve veritabanı güncellenmiş olur. Verileri kategorize etmenin ve verileri sorgulamanın en kolay yollarından biri olan SQL dili birçok kişi tarafından araştırılan ve merak edilen bir konudur. SQL dili içerisinde kullanılan çeşitli sorgulama komutları bulunmaktadır.

SQL İnjection

SQL injection nedir ? Veritabanını tahrip edebilecek ve zarara uğratabilecek olan kötü amaçlı kodların siteye yerleştirilmesini ifade eder. Web sitelerinin bütün bilgilerinin yer aldığı veritabanlarını sql injection saldırılarına karşı korumak ve veritabanının güvenliğini sağlamak bu açıdan çok önemlidir. Sql dilini oluşturan dinamik cümleciklerin arasına sıkıştırılmış olan meta karakterler sql injection saldırılarına neden olabilir. Saldırganlar, sql injection ile bir web sitesindeki:

  • Kullanıcı bilgilerini çalabilir.
  • Veritabanı içerisinde bulunan mevcut veriler üzerinde değişiklik yapabilir.
  • Veritabanının tamamen silinmesine neden olabilir.
  • Yetkisini yükselterek gizlenmiş ve gizli tutulması gereken bilgilere ulaşabilir.
  • İşlemleri değiştirebilir.

SQL İnjection Nasıl Bulunur?

SQL açıklarının ve SQL injection gibi saldırı açıklarının aranması için geliştirilmiş özel araçlar bulunmaktadır. BU araçlardan en çok bilinenlerinden biri ise SQL Map’tir. Açık kaynaklı bir yazılım olan SQL map ile SQL açıkları kolay bir şekilde bulunabilir ve saldırı olup olmadığı anlaşılabilir. SQL map veritabanında bulunan kullanıcıların, rollerin, tabloların ve sütunların bilgilerini hızlı bir şekilde tespit eder ve açıkların bulunmasını sağlar.

Kali linux işletim sistemine sahip olan kullanıcılar için hazır ve kurulu bir şekilde gelen SQL map’in yanı sıra Vega, Netsparker gibi araçlar da bulunmaktadır. SQL injeciton saldırılarından korunmak ilk başta web yöneticisinin görevidir.

SQL İnjection Nasıl Önlenir?

SQL injection saldırılarından korunmak için yapılması gereken birçok işlem vardır. Bu işlemlerden bazıları şunlardır:

  • Kullanıcıdan alınan her veride ‘ (tek tırnak) ve ” (çift tırnak) karakterleri kullanılmalıdır. Bu karakterler SQL dili için önemli karakterlerdendir. Karakterler kullanıcıdan alındıktan sonra ya karakter şekline çevrilmeli ya da başına \ işareti konulmalıdır.
  • Sistemler güncel tutulmalı ve güvenlik yamalarına dikkat edilmelidir.
  • Veriler GET veya POST üzerinden alınıyorsa mutlaka filtreleme yapılmalıdır.
  • Veritabanı düzenli olarak yedeklenmeli ve bilgi kontrolü sağlanmalıdır.

Bu ve buna benzer önlemler ile veritabanları saldırılara karşı korunabilir.

Etiketler
Daha Fazla Göster

Alp Eren Güney

Alp Eren Güney, Bilgi Güvenliği ve Siber Güvenlik Alanlarında Kendince Belirli Bir Yeterliliğe Ulaşmış ve Sürekli Kendini Geliştirmekte Olan Bir Girişimcidir. BiSEO başta olmak üzere bir çok web ve yazılım projelerinde öncü olarak görev almıştır. Şuana BiSEO.com.tr nin kurucu ortaklarındandır.

İlgili Makaleler

Başa dön tuşu
Kapalı