strhost adlı üyeden alıntı:
mesajı görüntüle
doğru bir yorum tebrikler
27
●4.345
<?php
$frenle=$_SERVER['REQUEST_URI'];
//Aşağıdaki if deyimiyle eğer url satırı 55 karakterden uzunsa -Url tabanlı exploitlerin bir çoğu bu değerden uzundur.- diğer satırlara geçmeyi durduruyor. Eğer SEF, url rewrite yapmıyorsanız bu kod ile çoğu URL tabanlı saldırının önüne geçebilirsiniz.
if (strlen($frenle)>=65) {
exit;
}
// Aşağıdaki kod ise eğer url bölümünüzde istenmeyen bir karakter, bölüm varsa çalışmayı durdurmaktadır. Bu da henüz çıkmamış, duyrulmamış url tabanlı açıkların bile önüne geçmenizi sağlayabilir. $bnd1,2,3,4... alanlarını çoğaltarak kendinize göre zenginleştirebilirsiniz. Anlaşılır olması açısından değerler tek tek yazılmış ve döngüye sokulmuştur.
$frenle=strtolower($frenle);
$bnd1=strpos($frenle, "tool");
$bnd2=strpos($frenle, "******");
$bnd3=strpos($frenle, "redire");
$bnd4=strpos($frenle, "location");
$bnd5=strpos($frenle, "script");
$bnd6=strpos($frenle, "html");
$bnd7=strpos($frenle, "include");
$bnd8=strpos($frenle, "insert");
$bnd9=strpos($frenle, "delete");
$bnd10=strpos($frenle, "exit");
$bnd11=strpos($frenle, '//');
$bnd12=strpos($frenle, 'where');
$bnd13=strpos($frenle, 'vb_login');
$bnd14=strpos($frenle, 'xss');
$bnd15=strpos($frenle, 'echo');
$bnd16=strpos($frenle, 'die');
$bnd17=strpos($frenle, 'command');
$bnd18=strpos($frenle, 'cookie');
$bnd19=strpos($frenle, 'cmd');
$bnd20=strpos($frenle, '_md5');
//yukarıda tanımladığımız 11 kural için bir ihlal yakalanmışsa ihlali yapan kişi karşısında echo ile belirtilmiş iletiyi görecek ve orada kalacaktır.
if (($bnd1== true) or ($bnd2== true) or ($bnd3== true) or ($bnd4== true) or ($bnd5== true) or ($bnd6== true) or ($bnd7== true) or ($bnd8== true) or ($bnd9== true) or ($bnd10== true)or ($bnd11== true)or ($bnd12== true)or ($bnd13== true)or ($bnd14== true)or ($bnd15== true)or ($bnd16== true)or ($bnd17== true)or ($bnd18== true) or ($bnd19== true) or ($bnd20== true)) {
echo 'Zararlı olabilecek Url durduruldu! Lütfen kullandığınız Urlye dikkat ediniz.';
exit; }
?>