Standart Aspde Temel Güvenlik #1
Guest
Alt 2 June 2009, 12:39
Alıntı ile Cevapla
ASP’DE TEMEL GÜVENLİK
Bize gönderilen bir çok uygulamada farkettiğimiz bir takım önemli güvenlik eksiklikleri nedeniyle, yapılan bir çok uygulama kötü niyetli kişiler tarafından suistimal edilebilmektedir.Bunun önüne geçebilmek için hazırladığımız bu rehberin sizlere kodlamalarınızda temel olarak almanız gereken güvenlik önlemlerini öğretebileceğini düşünüyoruz.

1. ADIM:

ASP kodlarında en çok tehlikeye neden olan ve SQL INJECTION olarak tabir edilen güvenlik sorununu aşağıda vermiş olduğumuz örnek kod yardımıyla çok basit bir şekilde çözebilirsiniz.

Örnek olarak link.asp adlı bir sayfanızın olduğunu düşünelim. Link.asp sayfasının içinden Link_Guncelle.asp?ID=1 şeklinde bir gidiş olsun.Eğer siz aşağıdaki kodu link_guncelle.asp'deki request.querystring kısmınıza koymazsanız. Kötü niyetli kişiler ' karakteri ile SQL cümlenizi istedikleri yönde kullanabilirler.

Sizin koymuş olduğunuz kod şu şekilde ise; ID = REQUEST.QUERYSTRING("ID") bu kodu aşağıda verdiğimiz şekilde değiştirin:


ID = REQUEST.QUERYSTRING("ID")
IF Not IsNumeric(REQUEST.QUERYSTRING("ID")) THEN
response.write "Lütfen Geçerli bir ID numarası girin."
response.end
END IF

2. ADIM:

Bu adımda da sayfalarımızda kullanmış olduğumuz formlardan gelen verilerde bulunan ' karakterini nasıl etkisiz hale getirebileceğimizi göreceğiz.

Sayfalarınızda kullandığınız formların işlendiği yani örnek olarak form.asp'nin bilgileri kaydetmek için yönlenmiş olduğu form_kaydet.asp dosyasındaki REQUEST.FORM kısımlarını koruma altına almanız gerekmektedir.Bunu aşağıda yazmış olduğumuz fonksiyon kodu ile çok basit bir şekilde gerçekleştirebilirsiniz:

Bu fonksiyon kodunu sayfanızın en tepesine koymanız yeterli olacaktır:

Function KarakterTemizle(Veri)
KarakterTemizle = Replace(Veri, "'", "''")
End Function
Fonksiyon kodunu sayfanıza yerleştirdikten sonra aşağıda yanlış olan yolu ve doğru olan yolu görebilirsiniz:
Yanlış olan Hali: GelenVeri = REQUEST.FORM("GelenVeri")
Doğru hali: GelenVeri = KarakterTemizle(Request.Form("GelenVeri"))

3. ADIM:

Son olarak bu adımda yine form kutucukları yoluyla kodlarımıza kötü amaçlı saldırılar yapılmasını engelleyeceğiz.

Yine 2.adımda belirttiğimiz gibi form.asp'den form_kaydet.asp'ye veri yolladığımız için form_kaydet.asp içerisinde bulunan REQUEST.FORM'ları aşağıda vermiş olduğumuz fonksiyon ile koruma altına almanız gerekmektedir;

« önceki Konu sonraki Konu »

Benzer Konular
Konu
Konuyu Başlatan
Forum
Cevaplar
Son Mesaj
eLanuR
edebiyat - turkçe - dilbilgisi
0
9 December 2008 10:01
Seversintabi.Com

Telif Hakları vBulletin® v3.8.4 Copyright ©2000 - 2025, ve
Jelsoft Enterprises Ltd.'e Aittir. Search Engine Optimisation provided by DragonByte SEO v2.0.37 (Lite) - vBulletin Mods & Addons Copyright © 2025 DragonByte Technologies Ltd.

ankara escort ankara escort ankara escort çankaya escort ankara otele gelen escort eryaman escort eryaman escort eryaman escort kızılay escort ankara escort bayan escort ankara çankaya escort kızılay escort ankara eskort Antalya Seo tesbih

Saat: 12:53