Я считаю, что я прочитал все связанные с ним темы, появившиеся мне, когда я писал название.Как предотвратить XSS на моем сайте?
Короче говоря, я использовал почти ВСЕ функции PHP для дезинфекции ввода пользователя, но я все равно не могу остановить простой тест XSS, который должен быть выполнен.
код, который я пытаюсь обеспечить следующим образом:
$keyword = $_POST['biz'];
$keyword = strip_tags($keyword); //this
$keyword = addslashes(str_replace("||sp_rp_and||", "&", $keyword));
$keyword = addslashes(str_replace("<", "HELLO", $keyword)); //this
$myFilter = new InputFilter(); //this
$keyword = $myFilter->process($_POST['biz']); //this
if($keyword=="")
$query="select * from `business` order by business_id DESC LIMIT 0,20";
else
Однако не из функций делает то, что он должен делать на переменную $ ключевое слово
две возможности : * У меня нет того, что я делаю. * Тест XSS терпит неудачу, но это не значит, что человек может использовать его для вреда !!?
Тест, который я использовал, прост (в поле поиска на странице): `"> alert (document.cookie); " или через URL-адрес, то же самое в обоих случаях, всплывающее окно с файлами cookie.
Что я делаю неправильно, был в этом с парой дней.
P.S. Даже установленный Mod_security2 на сервере, и он не выполнял работу (или я не настроил правильно) !!
Try для вывода everithing, который приходит от пользователя с `htmlentities()` – cristian 2010-12-07 21:22:41
Это было бы хорошим началом. – RobertPitt 2010-12-07 21:23:47
Возможный дубликат [Предотвращение скриптов на стороне сервера, XSS] (http://stackoverflow.com/questions/2965430/preventing-server-side-scripting-xss) – ajreal 2010-12-07 21:25:31