Oğuz Esen Resmi Fan Clup İndir-Dinle 2011
C ile Kötü Niyetli Dosya Çalıştırma 112

Join the forum, it's quick and easy

Oğuz Esen Resmi Fan Clup İndir-Dinle 2011
C ile Kötü Niyetli Dosya Çalıştırma 112
Oğuz Esen Resmi Fan Clup İndir-Dinle 2011
Would you like to react to this message? Create an account in a few clicks or log in to continue.

C ile Kötü Niyetli Dosya Çalıştırma

Aşağa gitmek

komik C ile Kötü Niyetli Dosya Çalıştırma

Mesaj tarafından Mc Zindan Ankara Style Cuma Nis. 30, 2010 2:10 pm

Web uygulamanıza FileUpload ile dosya yüklemesi yapmak durumunda iseniz
gelen dosyanın türünü mutlaka denetlemek gerekir. Örneğin bir Forum
uygulaması yaptınız ve kullanıcılar kendi resimlerini resimler
klasörüne upload edebilmekteler. Saldırgan hazırlamış olduğu bir asp
sayfasını resimler klasörüne upload eder ve [Linkleri görebilmek için üye olun veya giriş yapın.] şeklinde tam yolu yazarak dışardan göndermiş olduğu bir dosyayı sisteminizde çalıştırabilir.



Bu şekilde sisteminizin izin verdiği ölçüde yeni dosyalar
oluşturabilir. Örneğin anadizinde ki default.aspx dosyasını silip
yerine bir default.asp dosyası oluşturabilir. Böylece siteniz
açıldığında “hacked by ++++++ ana” yazısı ile karşılaşabilirsiniz.



Böyle üzücü durumların yaşanmaması için sisteminize upload edilen dosyaların türünü denetlemek gerek.



Bunun için System.IO.Path ve System.Text.Regex namespacelerinden yararlanacağız.

Önce upload edilen dosyasın uzantısı nı alacağız ve kabul ettiğimiz dosya türleri içerisinde olup olmadığını denetleyeceğiz.

string uzanti = System.IO.Path.GetExtension(FileUpload1.PostedFile .FileName);
System.IO.Path.GetExtension metodu uzntıyı bize “.jpg” gibi noktalı bir şekilde verir.



Kullanıcı tarafından gönderilen dosya ismi büyük harfler ile yazılmış
olabilir. Buda birazdan yapacağımız karşılaştırmada farklıymış gibi
algılanmasına sebep olur. Bu yüzden uzantı harflerini küçültelim.

uzanti = uzanti.ToLower();
Kabul edeceğimiz dosya uzantıları için teker teker if kontrolü yazmamak için Regular Expression ifadelerinden yararlacağız.



using System.Text.RegularExpressions;
.....
if(Regex.IsMatch(uzanti,".jpg|.jpeg|.gif|.png|.bmp ") == false)
{
// gönderilen dosya formatı uygun değil
}
else
{
// gönderilen dosya formatı uygun.
}
Mc Zindan Ankara Style
Mc Zindan Ankara Style
Admin
Admin

Mesaj Sayısı : 3104
Aktiflik Puanı : 13214
Kayıt tarihi : 26/11/09
Yaş : 31
Nerden : ankara

http://www.amasyateknoloji.tk

Sayfa başına dön Aşağa gitmek

Sayfa başına dön

- Similar topics

 
Bu forumun müsaadesi var:
Bu forumdaki mesajlara cevap veremezsiniz