SQL, Structured Query Language anlamına gelir.. Yani Yapisal Sorgu Dil’i diye nitelendiririz..
SQL injection’ın tanımına değinelim..
SQL injection; SQL sorgusu ve komut gönderme yöntemidir..
80. porta gereksinim duyan ve sunucuda kurulan işletim sistemi yerine, sunucudaki sitelerin tabanlarına (ASP, PHP, CGI, vs) bağlı olan sorgu sistemidir.. Örnek verecek olursak; sisteme üye olan userların kullanıcı adları ve şifreleri veritabanına kaydolur.. SQL injection sayesinde SQL sorgulamalarla veritabanına kayıtlı user’ların account’larına erişim sağlayabiliriz..
ASP tabanlı scriptlerdeki SQL Injection bug’larından korunmaktan bahsedeceğim..
Örneğin; ASP tabanlı bir websitemiz olduğunu düşünerek, haber.asp adlı dosyamızın olduğunu varsayalım.. Haber.asp sayfasının detayı için açılan haber_detay.asp?id=1 şeklinde bir gidişat olsun.. Eğer vereceğim kodu; haber_detay.asp dosyasına eklemezseniz, hackerlar tarafından ’ karakteri ile mssql SQL sorgulamalarla, bulunan haberlere rahatlıkla erişebilirler..
Daha önce haber_detay.asp de bulunan kod “ID = REQUEST.QUERYSTRING(”ID”)” şeklinde ise;
ID = REQUEST.QUERYSTRING(”ID”)
IF Not IsNumeric(REQUEST.QUERYSTRING(”id”)) THEN
response.write “Lütfen Gecerli bir id numarası girin.”
response.end
END IF
bu kodlarla değişebilirsiniz..
Ayrı bir metod olarak kullanmış olduğumuz formlardan ötürü ’ karakterini nasıl etkisiz hale getireceğimizden bahsedeceğim..
Örnek olarak form’ları kaydetmek için bulunan form.register.asp dosyasındaki REQUEST.FORM kısmını bir üstte anlattığım gibi güvenli hale getirmeniz gerekir.. Yani vereceğim fonksiyon kodlarını, dosyada en üste koymanız kafii..
Function KarakterTemizle(Veri)
KarakterTemizle = Replace(Veri, “’”, “’’”)
Veri = KarakterTemizle
End Function
Bu fonksiyonu dosyaya yerleştirdikten sonra vereceğim örnekle yanlış ve doğru yolu ayırt edebileceksiniz..
Yanlış olan Hali: GelenVeri = REQUEST.FORM(”GelenVeri”)
Doğru hali: GelenVeri = KarakterTemizle(Request.Form(”GelenVeri”))
Bir başka adımla da yine bu form’lara etki eden kötü karakterleri engelleyeceğiz..
Yine üst kısımda bahsettiğim örnekteki gibi form’ları kaydeden form.register.asp dosyası içinde bulunan REQUEST.FORM kodlarını, vereceğim function’ı sayfanın en üstüne bırakarak güvenlik altına almanız gerekmektedir..
Function KarakterTemizle(Veri)
KarakterTemizle = Replace(Veri, “”)
Veri = KarakterTemizle
End Function
Bu fonksiyonu dosyaya yerleştirdikten sonra vereceğim örnekle yanlış ve doğru yolu ayırt edebileceksiniz..
Yanlış olan hali: GelenVeri = REQUEST.FORM(”GelenVeri”)
Doğru hali: GelenVeri = KarakterTemizle(Request.Form(”GelenVeri”))
Son olarak belirteceğim durum; gördüğünüz gibi bahsettiğim function’lar birbirine çok yakın.. Her iki function’da da ayrı ayrı incelemeniz açısından ayrı olarak verdim ki amaç; hatayı minimuma indirmek.. Her ikisini de birleştirecek olursak doğru hali şu function’lar olur;
Function KarakterTemizle(Veri)
KarakterTemizle = Replace(Veri, “’”, “’’”)
KarakterTemizle = Replace(Veri, “”)
Veri = KarakterTemizle
End Function
Son olarakta;
GelenVeri = KarakterTemizle(Request.Form(”GelenVeri”))
haline gelir..
Saygılar..
SQL Injec. Security Story
Bilgisayarınızı Her Türlü Saldırıya Karşı Korumak İçin Yapmanız Gerekenler
-
megabros
- Mesajlar: 0
- Kayıt: Sal Şub 24, 2026 11:31 am
- İletişim:
“Güvenlik / Security Makaleleri” sayfasına dön
Geçiş yap
- Off-Topic
- ↳ Genel
- ↳ Geyik Muhabbet Ve Komedi
- ↳ Fıkralar
- ↳ Resimler & Arkaplanlar
- ↳ Video & Flash Dosyaları
- ↳ Anket
- ↳ Telefon &Tablet
- ↳ Symbian Telefonlar
- ↳ Gsm Oyunları
- ↳ Gsm Programları
- Yaşama Dair
- ↳ Elektronik Kitap & E-Book
- ↳ Edebiyat (Şiir)
- ↳ Sağlık
- ↳ Sinema
- ↳ Dvix-Film
- ↳ Online Sinema
- ↳ E-MULE
- ↳ Yabancı Diziler
- ↳ Yemek Tarifleri
- ↳ Eğitim Dünyası
- ↳ Ödevler
- ↳ Mühendisler dünyası
- ↳ Üniversiteler & Kampüsler
- ↳ İngilizce
- ↳ Genel Kültür
- ↳ Felsefe ve Psikoloji
- ↳ Öğretmenler ve Adaylar
- ↳ İlköğretim ve Lise
- Müzik Dünyası
- ↳ Müzik Genel
- ↳ Şarkı sözleri istek
- ↳ Enstrümanlar
- ↳ Müzik Yardım
- ↳ Konser Organizasyon
- ↳ Video Klipler
- ↳ Yerli Klipler
- ↳ Yabancı Klipler
- ↳ Pop
- ↳ Diğer Müzik Türleri
- ↳ Rock ve Metal
- ↳ Rap ve Hipop
- ↳ Techno ve Trance
- ↳ Arabesk ve Fantazi
- ↳ Latin Dansları
- ↳ Salsa
- ↳ Bachata
- Haberler
- ↳ Güncel
- ↳ Bilim ve Teknoloji
- ↳ Magazin Haberleri
- Spor
- ↳ Futbol Genel
- ↳ Fenerbahçe & Galatasaray
- ↳ Trabzonspor & Beşiktaş
- ↳ Bahis & İddaa
- ↳ Basketbol
- ↳ Diğer Branşlar
- ↳ Av,Avcılık ve Silahlar
- Bilgisayar Güvenliği / Computer Security
- ↳ Bilgisayar Güvenliği
- ↳ Dosyalar
- ↳ Güvenlik / Security Haberleri
- ↳ Güvenlik / Security Makaleleri
- ↳ Exe & DLL Arşivi
- ↳ Zarar veren Yazılımları temizleme
- ↳ Beyaz şapka
- ↳ Güvenlik Programları, Güvenlik ve Güvenlik açıkları
- Bilgisayar
- ↳ Windows İşletim Sistemleri
- ↳ Programlar
- ↳ AIO Programlar
- ↳ Portable Programlar
- ↳ Yazılı ve Görsel Program Anlatımları
- ↳ Chat & Msn Programları
- ↳ Skype Genel
- ↳ MSN Genel Bölüm
- ↳ Avatar & Smiley
- ↳ MIRC Genel
- ↳ İkinci el ve 0 Parçalar
- ↳ VoIP
- ↳ Pardus / Linux İşletim Sistemleri
- Donanım & Hardware
- ↳ Donanım
- ↳ Driver & Firmware
- ↳ Network
- Webmaster
- ↳ Webmaster Genel
- ↳ Site Tanıtım
- ↳ Web Hosting
- Oyun
- ↳ Oyun Download
- ↳ Oyun yamaları
- ↳ Oyun Hileleri
- ↳ Oyun Muhabbetleri ve Yardımları
- ↳ Online Oyunlar
- ↳ Travian Online
- ↳ Knight Online
- ↳ Silkroad Online
- ↳ Konsollar Ve Emulatörleri
- Forum
- ↳ Forumlarla İlgili Duyurular/Sorularınız/Sorunlarınız
- ↳ Silinen Konular
Kimler çevrimiçi
Bu forumu görüntüleyen kullanıcılar: Hiç bir kayıtlı kullanıcı yok ve 1 misafir