• 27-09-2012, 01:21:13
    #19
    Üyeliği durduruldu
    reklam kodu eklese ne olur ? post la aldığı veri htmlentities ile entitilerine ayırır sonrada entiti decode eder veya strip_tags kullanılır konuyu başka yerlere çekmeye gerek yok şuanki ihtiyacı gereksiz karakterleri temizlemek bahsettiğin şeylere sıra geldiği zaman onuda araştırıp bulacak php yi böyle öğrenicek. Ayrıca php ders alıcam v.s. diye konu açanlarada şaşırıyorum öğrenmekmi istiyorsun GOOGLE gibi bir öğretmenin var 21. yüzyılın meslek erbabı diyebiliriz aklına bir proje koy o proje için neler gerekiyor araştıra araştıra öğren. Kimse php nin tüm fonksiyonları bilmez işine yarayanı alıp kullanırsın.
  • 27-09-2012, 03:59:18
    #20
    	function korubeni($gelen)
    	{
    		$guvenli = htmlentities(strip_tags($gelen));
    		return $guvenli;
    	}
        $Ad_Soyad=korubeni($_POST["Ad_Soyad"]);
        $Eposta=korubeni($_POST["Eposta"]);
        $Mesaj=korubeni($_POST["Mesaj"]);
        $Yorum_Yapilan_Yer=korubeni($_POST["Yorum_Yapilan_Yer"]);
        $Yorum_Yapilan_ID=korubeni($_POST["Yorum_Yapilan_ID"]);
        $Tarih=korubeni($_POST["Tarih"]);
    böyle kullanırsanız sıkıntı kalmaz ilgili kısmı değiştirin
  • 27-09-2012, 11:18:34
    #21
    Kimlik doğrulama veya yönetimden onay bekliyor.
    <?
    function guvenlik($q) {  
        $q = htmlspecialchars(stripslashes($q)); 
        $q = str_replace("script", "blocked", $q); 
        $q = str_replace("select", "", $q); 
        $q = str_replace("SELECT", "", $q); 
        $q = str_replace("UPDATE", "", $q); 
        $q = str_replace("update", "", $q); 
        $q = str_replace("delete", "", $q); 
        $q = str_replace("DELETE", "", $q); 
        $q = str_replace("UNION", "", $q); 
        $q = str_replace("union", "", $q); 
        $q = str_replace('"', "", $q); 
        $q = str_replace("%", "", $q); 
        $q = mysql_escape_string($q); 
        $q = str_replace("`","",$q); 
        $q = str_replace("'","'",$q); 
        $q = str_replace("-","-",$q); 
        $q = str_replace("&","",$q); 
        $q = str_replace("%","",$q); 
        $q = str_replace("<","",$q); 
        $q = str_replace(">","",$q); 
        $q = trim($q); 
        $q = htmlentities(strip_tags($q));
        return $q;  
    	
    }
    ?>
    şeklinde düzenledim güvenlik fonksiyonumu heralde. test ettim çalışıyor (test derken formdan birşeyler yolladım güvenlik testi yapmam pek mümkün değil )

    sanırım bu kodlar bir nebze korur? dimi?
  • 27-09-2012, 12:33:00
    #22
    WMB
    Üyeliği durduruldu
    güvenlik formundan sql injection yapabilen kişi sayısı çok çok azdır, ama yinede önlem almak lazım
  • 27-09-2012, 12:39:02
    #23
    Vermiş olduğun güvenlik fonksiyonunun mantığını anladiysan ve kendi ihtiyaçlarına göre duzeltebilecek durumdaysan, evet bu kodlar senin içim yeterli..
  • 27-09-2012, 12:48:29
    #24
    Mantığı anladım özellikle test edip db deki karşılıkları görünce çok daha iyi anladım.

    Formu kullanan orada belirtilen kodlardan birini yazarsa otomatik olarak onları kodlara dönüştürüyor veya yok sayıyor.

    İşin temelini yakaladım bu kodlarla.

    Sadece anlamadığım tarafı
    $q = htmlspecialchars(stripslashes($q));
    $q = htmlentities(strip_tags($q));

    satırları. Anlamadım derken kodları biraz araştırdım, saldıranın ne şekilde saldırdığını bilmediğimden test yapıp sonuç göremedim. o tarafım biraz eksik kaldı ama hırsıza kilit dayanmaz şu an anladım ve yapabildiğim şekliyle kilitledim dayının biri çıkar patlatırsada tebrik ederiz yedeklerden siteyi yine yükleriz