Güvenlik açıkları
23
●1.984
- 27-09-2012, 01:21:13Üyeliği durduruldureklam 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
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:34Kimlik 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:48:29Mantığı 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
)