21 - 09 - 2015, 11:22 | #1 (permalink) |
Çevrimdışı Kullanıcıların profil bilgileri ziyaretçilere kapalı | Sql injection nedir ? Nasıl yapılır ? Sql injection nedir ? Nasıl yapılır ? Sql injection, Sql sorgularının arasına dışarıdan müdahale de bulunarak, veri ekleme işlemine verilen genel isimdir. Web uygulamalarında kullanıcılar tarafından girilen veriler ile dinamik Sql cümleleri oluşturulur. Bu cümleler oluşturulurken araya giren herhangi bir meta-karakter Sql injection’a neden olabilmektedir. Meta-karakter; bir program için özel anlam ifade eden karakterlere verilen isimdir. Mesela JAVA'daki “\” bir meta-karakterdir ve derleyici ya da yorumlayıcı bu karakteri gördüğünde ondan sonra gelen karakteri bu meta-karaktere göre işler. Sql için ise meta-karakter " ‘ " (tek tırnak) ve " ; " (noktalı virgül) dür. Sql injection Nasıl Yapılır? Örneğin, en çok kullanılan yöntem bir sisteme Kullanıcı Adı ve Parola ile giriş yaparken kullandığımız yöntemdir. Kod: select * from Uzmanim where KullaniciAdi = 'uzman' AND Parola = 'uzmanim' Bu örnek Sql kodu klasik bir oturum açma yöntemidir. Bu örnek üzerinde basit bir sql injection deneyelim. Öncelikle KullaniciAdi yerine " ‘ or 1 = 1 " , Parola yerine ise " ‘ or 1 = 1 " girelim. bakıyoruz ki sisteme giriş yapımışız. Şimdi koda yakından bakarak nasıl olduğunu inceleyelim. Girdiğimiz değerleri Sql kodunda yerlerine koyarsak karşımıza şu şekilde bir kod çıkar. Kod: select * from Uzmanim where KullaniciAdi = ' ' or 1 = 1 ' and Parola = ' ' or 1 = 1 ' Sql injection’dan nasıl korunabiliriz? Sql injection’ın temel nedenlerinden birisi web uygulamalarının kullanıcılardan aldığı verileri kontrol etmeden, gerekli filtreleme işlemini yapmadan verileri alıp Sql cümlesi oluşturmasıdır. Bu açık yakalandığında müdahalede bulunmak için " ‘ " (tek tırnak) karakteri ile girdiye başlanır ve bunun sonucunda Sql’e istenilen komutu göndermek için tek tırnak yardımıyla string bölümünden kaçınılabilir. Bunun gibi veya daha farklı yollardan müdahaleler de bulunulursa ulaşılmasını istemediğimiz veriler yabancı kişiler tarafından ele geçirilebilir. Buna izin vermemek için yapmamız gereken en önemli kurallar;
|
Bu Konuyu Paylaşın ! |
Seçenekler | Arama |
Stil | |
| |