Çerez Kullanımı

Bu web sitesi, deneyiminizi iyileştirmek ve site kullanımını analiz etmek için çerezler kullanmaktadır. Gizlilik Politikası sayfamızdan detaylı bilgi alabilirsiniz. Çerezleri kabul ederek, KVKK kapsamında verilerinizin işlenmesine onay vermiş olursunuz.

Samet Karabulut - Web Uygulamalarında SQL Injection Koruması
#SIBERGüVENLIK #YAZıLıM #WORDPRESS #PHP #NODE.JS #CSS #GüVENLIK

Web Uygulamalarında SQL Injection Koruması

Samet Karabulut

January 6, 2026

3 min read

Web Uygulamalarında SQL Injection Koruması

Web uygulamalarında güvenlik, en önemli konulardan biridir. SQL injection saldırıları, web uygulamalarına yönelik en yaygın tehditlerden biridir. Bu saldırılar, saldırganların veritabanınıza erişim sağlamasına ve hassas verileri çalmasına neden olabilir.

Bu makalede, SQL injection saldırılarından korunmak için neler yapabileceğinizi öğreneceksiniz. Ayrıca, örnekler ve kod parçacıkları ile birlikte, uygulamalarınızı güvence altına almak için neler yapabileceğinizi görecek ve öğrenmeye başlayacaksınız.

SQL Injection Nedir?

SQL injection, saldırganların web uygulamalarına kötü amaçlı SQL kodu enjekte etmesine olanak tanıyan bir güvenlik açığıdır. Bu, saldırganların veritabanınıza erişim sağlamasına, hassas verileri çalmasına ve hatta veritabanınızıManipüle etmesine neden olabilir.

SQL injection saldırıları, genellikle kullanıcı girişini doğrulamak için kullanılan SQL sorgularındaki zayıflıklardan yararlanılır. Saldırganlar, bu zayıflıkları kullanarak, veritabanınıza erişim sağlayabilir ve istenmeyen işlemler gerçekleştirebilirler.

SQL Injection Örnekleri

Şimdi, bir SQL injection saldırısı örneğini görelim. Örneğin, bir web uygulaması, kullanıcıların giriş yapması için bir form kullanıyor olsun.

$kullanici_adi = $_POST['kullanici_adi'];
        $sifre = $_POST['sifre'];
        $sorgu = "SELECT * FROM kullanicilar WHERE kullanici_adi = '$kullanici_adi' AND sifre = '$sifre'";
        $sonuc = mysqli_query($baglanti, $sorgu);

Bu örnekte, saldırganlar, kullanıcı adı ve şifre alanlarına kötü amaçlı SQL kodu girebilirler. Örneğin, bir saldırgan, kullanıcı adı alanına "' OR 1=1 --" girerse, sorgu şu şekilde değişir:

$sorgu = "SELECT * FROM kullanicilar WHERE kullanici_adi = '' OR 1=1 --' AND sifre = ''";
        

Bu, sorgunun her zaman doğru dönmesine neden olur ve saldırganın veritabanınıza erişim sağlamasına olanak tanır.

SQL Injection Koruması

SQL injection saldırılarından korunmak için, beberapa önlem alabilirsiniz. İlk olarak, kullanıcı girişini doğrulamak için kullanılan SQL sorgularını güvence altına alabilirsiniz.

Bunun için,prepared statement'leri kullanabilirsiniz. Prepared statement'ler, SQL sorgularını önceden derleme ve sonra kullanıcı girişini güvenli bir şekilde eklemeye olanak tanır.

$sorgu = "SELECT * FROM kullanicilar WHERE kullanici_adi = ? AND sifre = ?";
        $stmt = $baglanti->prepare($sorgu);
        $stmt->bind_param("ss\                

Yorumlar

Henüz yorum yok. İlk yorumu sen yap.