Anasayfa İletişim RSS
 
Şimdi Üye Ol | Şifremi Unuttum
 
Anasayfa » PHP & MySQL (143 ders)
 
Upload Dosya Filtreleme

Yazar: Ziya Kahraman  
Eklenme: 21.06.2008   Okunma: 725    Puan: 3   Seviyesi:  Başlangıç
PHP sayfalarınızda upload kontrolünü kullanacaksanız, hackerların sisteminize basitçe sızasını önlemek için bir kaç önemli noktayı bilmelisiniz..

PHP sayfalarınızda kullanıcılara herhangi bir konuda upload hakkı verebilirsiniz. Mesela avatarlarını yüklemeleri konusunda onlara kolaylık sağlamak amacıyla vs. olabilir bu. İşte bu durumlarda hackerlara da aynı hakkı vermiş olursunuz ve bu hakkı onlardan esirgemelisiniz belki de.. Neden mi çünkü onlar avatar yükleme yerine çalıştırmak istedikleri bir FSO'yu sisteminize upload edecek, ardından da www.siteniz.com/images/avatarlar/fso.php şeklinde tam yolu tarayıcılarına yazarak bu dosyayı sizin sisteminiz için çalıştırarak sunucunuzun izin verdiği ölçüde sisteminizde at koşturacaklardır. Bu durumda yapılması gerekenler basit ancak hayati önem taşıyan ayrıntılar..

Öncelikle System.IO.Path ve System.Text.Regex namespacelerini kullanacağız.

Önce upload edilmek istenen dosyasın uzantısını kontrol edeceğiz ve istediğimiz uzantılar dışındakileri kabul etmeyeceğiz. Mesela .exe, .asp, .php, .cgi uzantılı dosyaları uyumsuz uzantılı dosya olarak görüp, kabul etmeyeceğiz. Tabi bunu sadece resim uzantılarına izin vererek yapmak daha mantıklı olacağından o şekilde yapalım..

string dosyauzanti = System.IO.Path.GetExtension(FileUpload1.PostedFile.FileName);


Ardından kabul ettiğimiz uzantıları belirleyeceğiz ve bunların dışındakilerin yüklenememesini sağlayacağız.

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



Eğer dosya uzantılarını büyük harfli olarak gönderirse kullanıcı sistemin bunu da kabul etmesi için şöyle bir kod ekleyebilirsiniz :

dosyauzanti = dosyauzanti.ToLower();




Herkese başarılar, saygılarımla..
 
  • Currently 3.00/5
Değelendirmek için üye girişi yapmanız gerekmektedir
EkleBunu Sosyal Paylam Butonu
Upload Dosya Filtreleme Dersini Yazdırın

"Upload Dosya Filtreleme" dersi için 4 yorum var

09.07.2008 mahirix diyor ki:
Yalnız düşünmeniz gereken bir nokta var. Ben resim.exe adında bir dosyanın uzantısını jpg yapıp pekala upload edebilirim. Bu işlem için en mantıklı yol dosya türünü almaktır. Yanlış mıyım acaba ?

10.07.2008 ziyade diyor ki:
peki bu şekilde upload ettiğinizde exe dosyası çalışır mı dersiniz?

03.10.2008 byron diyor ki:
bazen çalışır çok site hack edildi bizzat tarafımca (yabancı zararlı siteler ) .jpg uzantılı yapıp php shelli atıp pekala hacklerler

24.10.2008 sametkuru diyor ki:
yaa o deil de be şunu anlayamadım.bu yazdıklarınız direk php sayfasınamı yazılacak.yazdım ama çalışmadı kodlar o yüzden soruyorum.direk alıp yapıştırdım nerde hata yapmış olabilirim???

Üye olmadan yorum ekleyemezsiniz !


UYARI: SANALKURS'ta yer alan materyaller ile ilgili her türlü sorumluluk hazırlayan veya gönderene aittir. SANALKURS'ta yer alan hiçbir makale, yazarından izinsiz başka bir yerde yayınlanamaz. SANALKURS kullanıcıları ve üyeleri, üçüncü kişilerin telif hakkı sahibi bulunduğu her türlü fikri eser, fotoğraf, resim vb. materyal ve ürünleri kullanamazlar. SANALKURS kullanıcı ve yazarlarının, üçüncü kişilerin telif hakkı sahibi olduğu yazı, resim vb. ürünleri kullanması durumunda, her türlü hukuki ve cezai sorumluluk kendilerine aittir. Söz konusu haksız kullanım nedeniyle SANALKURS .NET'in hiçbir hukuki sorumluluğu bulunmamakta olup, haksız kullanım nedeniyle SANALKURS.NET'in üçüncü kişilere ödemek zorunda kalabileceği her türlü tazminat ve/veya adli/idari para cezaları ilgili Sanalkurs kullanıcılarından rücu edilecektir.
 İSTATİSTİKLER
XML Kaynağımızdan yararlanarak sitemizdeki derslerimizi masaüstünüzden yada web sitenizden takip edebilirsiniz
ÇEVRİMİÇİ 35 Ziyaretçi, 0 Üye

BUGÜN DOĞUM GÜNÜ OLAN ÜYEMİZ:
grafikrim (23)
Bugün: 509, Dün: 6623, Bu Ay: 26031, Toplam Ziyaret: 1883034, Toplam Üye: 133039, Son Üye: osmannnoli
Toplam Ders: 2011, Toplam Yazar: 45, Toplam Dosya: 34, Toplam Link: 55
   
RSS Kaynağımızdan yararlanarak sitemizdeki derslerimizi masaüstünüzden yada web sitenizden takip edebilirsiniz