Arkadaşlar şuan localdeki forumumda xss açığı buldum. bi eklentiden kaynaklanıyor.
linkte <script> gibi html tagları varsa direk exit(); nasıl yaparız ? strip_tags komutu htmlyi ayıklıyor ama if e nasıl dökerim çözemedim ?
mesela eklentide şöyle bir kod var
return "<a href=\"./deneme-{$str}.html\">{$str}</a>";
nasıl yapabilirim de html kullanıldığında sayfayı durdursun?
if(strip_tags(nasılolur)){exit();} ?
Eğer linkte html varsa sayfayı durdur ?
17
●1.192
- 02-09-2009, 22:53:52
function html_kontrol($uysal) { $rockci = strip_tags($uysal); if ($uysal != $rockci) return FALSE; else return TRUE; } $uysal_rockci = '<p><a href = "index.php">anasayfa</a></p><br/> '; if (!html_kontrol ($uysal_rockci) ) die('html kodu var, betik durduruldu');kestirmeden bir yöntem olsun bu da,
işe yarar belki
- 02-09-2009, 23:12:33Yani Silmek daha mantıklı.BHCoder adlı üyeden alıntı: mesajı görüntüle
Ama sayfada saldırı oldugu bilinsin diyorsan;
function kontrol($bak){ $bak = str_replace("<script","*saldiri(<script)",$bak); $bak = str_replace("<meta","*saldiri(<meta)",$bak); $bak =trim($bak); return $bak; } echo kontrol($degisken); }bu şekilde bir fonksiyon kullanabilirsin ama ben durduracam diyorsan;
function kontrol($bak){ $bak = str_replace("<script","*saldiri(<script)",$bak); $bak = str_replace("<meta","*saldiri(<meta)",$bak); $bak =trim($bak); return $bak; } $hemen_bakiyom_abi = kontrol($degisken); if($hemen_bakiyom_abi == "*saldiri(<script)") { exit(); // burdan ötesi yasak } else { echo $degisken; // temiz abi devam et } - 02-09-2009, 23:41:40Üyeliği durduruldustrip_tags in kullanımı;
http://www.programlamatv.com/ders/ph...me-strip-tags/ - 02-09-2009, 23:57:18abi zaten oraya bakarken aklıma geldi sorayım dedimsdemirkeser adlı üyeden alıntı: mesajı görüntüle
yorumda yazdım konuna.
Aklıma az öncede bişi geldi. mesela phpde süper globallerde remote addr ile ip adres alıyoruzya bir globalle acaba linki alabiliyormuyuz ? eğer alabiliyorsak uysal_rockcu nun yazdığı fonksiyon daha kolay olmaz mı ?
edit:// yazdığınız fonksiyonları kullanamayınca üstekini yazdım. - 03-09-2009, 00:06:36tam anlayamadım ama aradığınız bunlardan biri olabilir mi.By_System adlı üyeden alıntı: mesajı görüntüle
echo $_SERVER['REQUEST_URI']; echo $_SERVER['QUERY_STRING'];
diğer tümü için ;
echo '<pre>'; print_r($_SERVER); echo '</pre>';
- 03-09-2009, 00:20:22
function html_kontrol($uysal) { $rockci = strip_tags($uysal); if ($uysal != $rockci) return FALSE; else return TRUE; } if (!html_kontrol ($_SERVER['REQUEST_URI']) ) die('linkte html kodu var, o varsa ben yokum ...');böyle bişey olabilir mi...
yorumda yazdım konuna.