sashok991
Новичок
Дата регистрации:
16.12.2013 10:04:40
Сообщений: 5
В одном простиньком движке видел зашиту через две стандартные функции примерно так:
$a = trim(htmlspecialchars($a)).
Достаточно ли этого, чтобы избежать иньекций, например php скриптов или SQL запросов?
И если можно обьясните, почему при отправке вместо переменной кусок php кода, он не выполняется. Например:
код обработчика:
$a = $_POST["b"];
значение запроса:
"c"; echo 'asdasdfgd'
У себя на сайте я пробывал использовать такой набор функций:
$aaa = strip_tags($aaa);//удаляем пхп теги
$aaa = trim(htmlspecialchars($aaa, ENT_QUOTES));//удаляем слеши
$aaa = stripslashes($aaa);
$search = array ("'<script[^>]*?>.*?</script>'si",
"'<[\/\!]*?[^<>]*?>'si",
"'([\r\n])[\s]+'",
"'&(quot|#34);'i",
"'&(amp|#38);'i",
"'&(lt|#60);'i",
"'&(gt|#62);'i",
"'&(nbsp|#160);'i",
"'&(iexcl|#161);'i",
"'&(cent|#162);'i",
"'&(pound|#163);'i",
"'&(copy|#169);'i",
"'&#(\d+);'e"
$replace = array ("", "", "", "", "", "", "", "", "", "", "", "", ""
$aaa = preg_replace($search, $replace, $aaa);
Правельно ли я их использовал и в каком порядке лучше всего их использовать?