lostyazilim
tr.link

Sql İnjection Açığı Kapama

18 Mesajlar 2.852 Okunma
lstbozum
tr.link

denizbe3558 denizbe3558 WM Aracı Kullanıcı
  • Üyelik 16.02.2016
  • Yaş/Cinsiyet 27 / E
  • Meslek Web Developer
  • Konum İzmir
  • Ad Soyad S** A**
  • Mesajlar 277
  • Beğeniler 32 / 31
  • Ticaret 1, (%100)
merhaba arkadaşlar bir script kodladım ve açıkları kapatıyorum bütün açıkları kapattım fakat
137. Satır $resimname = $_FILES['myfile']['name']; kodunda sql injection açığı veriyor burada ne yapacağımı bilemiyorum bilgili arkadaşlar bilgilendirir ise sevinirim...
 

 

wmaraci
reklam

Creatasarim Creatasarim WM Aracı Kullanıcı
  • Üyelik 13.06.2015
  • Yaş/Cinsiyet 40 / E
  • Meslek Yazılım Uzmanı
  • Konum İzmir
  • Ad Soyad A** Ç**
  • Mesajlar 116
  • Beğeniler 41 / 40
  • Ticaret 3, (%100)
yükleme esnasında bu açıklardan korunmak istiyorsan (ek güvenlik önlemi gerektirebilir) verotnet upload sınıfını kullanmanı öneririm, mimetype sayesinde yüklenen dosyanın ne olduğu kontrol edilebiliyor sadece resim yüklensin istiyorsan belirtebiliyorsun http://www.verot.net/php_class_upload.htm incelemeni tavsiye ederim
 

 

ismail03 ismail03 WM Aracı Kullanıcı
  • Üyelik 28.11.2013
  • Yaş/Cinsiyet 30 / E
  • Meslek Ameliyathane Hemşiresi
  • Konum Afyon
  • Ad Soyad I** Ç**
  • Mesajlar 2633
  • Beğeniler 344 / 487
  • Ticaret 12, (%100)
Creatasarim hocam bu açıklar nasıl kontrol ediliyor :(
 

 

denizbe3558 denizbe3558 WM Aracı Kullanıcı
  • Üyelik 16.02.2016
  • Yaş/Cinsiyet 27 / E
  • Meslek Web Developer
  • Konum İzmir
  • Ad Soyad S** A**
  • Mesajlar 277
  • Beğeniler 32 / 31
  • Ticaret 1, (%100)

Creatasarim adlı üyeden alıntı

yükleme esnasında bu açıklardan korunmak istiyorsan (ek güvenlik önlemi gerektirebilir) verotnet upload sınıfını kullanmanı öneririm, mimetype sayesinde yüklenen dosyanın ne olduğu kontrol edilebiliyor sadece resim yüklensin istiyorsan belirtebiliyorsun http://www.verot.net/php_class_upload.htm incelemeni tavsiye ederim


çok teşşekkür ediyorum hocam deniyorum hemen
 

 

wmaraci
wmaraci

Creatasarim Creatasarim WM Aracı Kullanıcı
  • Üyelik 13.06.2015
  • Yaş/Cinsiyet 40 / E
  • Meslek Yazılım Uzmanı
  • Konum İzmir
  • Ad Soyad A** Ç**
  • Mesajlar 116
  • Beğeniler 41 / 40
  • Ticaret 3, (%100)

ismail03 adlı üyeden alıntı

Creatasarim hocam bu açıklar nasıl kontrol ediliyor :(


kendin kodlayacaksan yüklenen dosyayı direkt olarak resim klasörüne gönderme öncelikle mutlaka dosya uzantısını kontrol ettir, çok basit kalabilir fakar az'da olsa güvenlik sağlayacaktır buna benzer bir kontrol yaptırabilirsin $uzanti = end(explode(".",$_FILES["upload"]["name"])); gibi daha sonra mutlak suretle yüklenen dosya adını değiştir deneme.jpg olarak yükleniyorsa fsdjflsdkfjsdlkfj.jpg olarak yüklenmesini sağla, bunun haricinde dediğim gibi mime check vb işlemler çok önemli tavsiyem buna uygun güvenlik kontrolleri yapabileceğiniz class'lar ile çalışmanız yukarıda'da belirttiğim gibi verotnet sınıfı şu an için kullanılan en yaygın hazır classlardan biri
burakisci

kişi bu mesajı beğendi.

denizbe3558 denizbe3558 WM Aracı Kullanıcı
  • Üyelik 16.02.2016
  • Yaş/Cinsiyet 27 / E
  • Meslek Web Developer
  • Konum İzmir
  • Ad Soyad S** A**
  • Mesajlar 277
  • Beğeniler 32 / 31
  • Ticaret 1, (%100)
Creatasarim hocam isim değiştirme felan hepsini yaptım zaten bakın kodlar burada yanlış yaptığım bir yer mi var yardımcı olursanız sevinirim

$resimname = @mysql_real_escape_string($_FILES['myfile'] ['name']);

$resimtype = @$_FILES["myfile"] ["type"];
$resimsize = @$_FILES["myfile"] ["size"];
$resimtemp = @$_FILES["myfile"] ["tmp_name"];
$resimerror = @$_FILES["myfile"] ["error"];
$resimnamenew = md5($name);
$resimzaman = date('dmYHis');
$resimzamannew = md5(date('dmYHis'));
$resimuzanti =$siteurl."img/".$resimzamannew.$resimnamenew.$resimzaman.seflink($resimname);
$uzantilar = array("jpg", "png", "images/jpeg", "images/png");


açık bulduğum sayfada bu şekilde.

 

 

Creatasarim Creatasarim WM Aracı Kullanıcı
  • Üyelik 13.06.2015
  • Yaş/Cinsiyet 40 / E
  • Meslek Yazılım Uzmanı
  • Konum İzmir
  • Ad Soyad A** Ç**
  • Mesajlar 116
  • Beğeniler 41 / 40
  • Ticaret 3, (%100)
bu hata değil sadece uyarı, mysql_real_escape_string tek başına güvenli bir kullanım oluşturmuyor bundan bahsediyor, mysql_real_escape_string'in orada olmasının sanırım pek bir esprisi yok o kodu oradan kaldırarak deneyebilirsin, ya da dediğim gibi daha basiti benimde sürekli kullandığım sınıfı kullan.
 

 

denizbe3558 denizbe3558 WM Aracı Kullanıcı
  • Üyelik 16.02.2016
  • Yaş/Cinsiyet 27 / E
  • Meslek Web Developer
  • Konum İzmir
  • Ad Soyad S** A**
  • Mesajlar 277
  • Beğeniler 32 / 31
  • Ticaret 1, (%100)
Creatasarim bende bir espirisi olmadığını düşünüyordum fakat onu koymayınca açık varmış gibi hata veriyor
 

 

Creatasarim Creatasarim WM Aracı Kullanıcı
  • Üyelik 13.06.2015
  • Yaş/Cinsiyet 40 / E
  • Meslek Yazılım Uzmanı
  • Konum İzmir
  • Ad Soyad A** Ç**
  • Mesajlar 116
  • Beğeniler 41 / 40
  • Ticaret 3, (%100)
o zaman yaşasın verotnet :)

require('class.upload.php');
$image = new upload($_FILES["image_file"]);
if ( $image->uploaded ) {
$image->file_new_name_body = sha1(md5(date("1YmdHis")));
$image->allowed = array('image/jpeg','image/jpg','image/gif','image/png');
$image->mime_check = true;
$image->no_script = true;
$image->Process('../uploads/klasöradı/');
if($image->processed){
mysql_query ...... resim adını $image->file_dst_name ile alacaksın
} gibi bir kullanımla sorununda çözülmüş olur.
 

 

ismail03 ismail03 WM Aracı Kullanıcı
  • Üyelik 28.11.2013
  • Yaş/Cinsiyet 30 / E
  • Meslek Ameliyathane Hemşiresi
  • Konum Afyon
  • Ad Soyad I** Ç**
  • Mesajlar 2633
  • Beğeniler 344 / 487
  • Ticaret 12, (%100)

denizbe3558 adlı üyeden alıntı

Creatasarim bende bir espirisi olmadığını düşünüyordum fakat onu koymayınca açık varmış gibi hata veriyor


hocam şimdiden mysqli veya pdo ya geçin Php 5.5 le mysql,mysql_escape_string,mysql_real_escape_string, kaldırıldı ileriye dönük bi iş için şimdiden başlayın
soulmy

kişi bu mesajı beğendi.

wmaraci
wmaraci
Konuyu toplam 3 kişi okuyor. (0 kullanıcı ve 3 misafir)
Site Ayarları
  • Tema Seçeneği
  • Site Sesleri
  • Bildirimler
  • Özel Mesaj Al