Защита от XSS
1.
bazooka (31.03.2010 / 22:58)
Вопрос в том от уезвимости xss, как защитить от этой атаки, тоесть набераем в окне поисковика или блока форм данную функцию "><script>alert()</script> и вылетает окошко при нажатия поиска. Дайте инфо как избавиться от этого!
2.
Neformat (31.03.2010 / 23:03)
$str = htmlspecialchars($str, ENT_QUOTES);
http://www.php.su/functions/?htmlspecialchars
3.
bazooka (31.03.2010 / 23:11)
За инфо спс, но данная функция не помогла
$str = htmlspecialchars($str, ENT_QUOTES);
4.
Neformat (31.03.2010 / 23:18)
3. bazooka, значит ты не туда ее поставил. От XSS как раз достаточно htmlspecialchars().
Функция вставляется в том месте, где результат обработки твоей формы, а $str - название переменной (учитывая как она передается POST или GET если регглобал офф) для каждого поля ввода.
5.
ramzes (31.03.2010 / 23:25)
Тут уже таких тем с десяток и в каждой все разжеванно до немогу. И куча фильтров приведены для примера.
6.
bazooka (31.03.2010 / 23:36)
Да все туда, прост много че испробывал, и поиском и т.д. у меню руки растут где надо, я розоблачил много чего и закрыл дыры, но где в поиск вставляешь это "><script>alert()</script> выйдет экран алерт.
7.
Владислав (31.03.2010 / 23:43)
6.
bazooka, ооо Господи
$search = htmlspecialchars($_POST['query']);
8.
bazooka (31.03.2010 / 23:51)
Не помогло
$search = htmlspecialchars($_POST['query']);
9.
Neformat (31.03.2010 / 23:53)
$_POST['site'] = htmlspecialchars($_POST['site']);
или
$site = htmlspecialchars($_POST['site']);
Попробуй. Должно помочь.
10.
Дмитрий (31.03.2010 / 23:55)
тебе уже сказали, что ты не туда вставляешь.
--
могу написать тебе тоже самое, а ты завтра ответишь мне что не помогло))
11.
bazooka (01.04.2010 / 00:07)
Neformat вставил код, но ща при атаки корезябли, короче тоже не спасло.
12.
Игорь (01.04.2010 / 01:23)
Neformat (Вчера / 23:53)
$_POST['site'] = htmlspecialchars($_POST['site']);
неправильно
13.
Игорь (01.04.2010 / 01:29)
Neformat (Вчера / 23:53)
$site = htmlspecialchars($_POST['site']);
Попробуй. Должно помочь.
должно правильно быть
14.
Игорь (01.04.2010 / 01:32)
например мы добавляем сообщение или ввод в переменную $msg тогда так
$msg = substr($_POST["msg"]);
$msg = htmlspecialchars(stripslashes($msg));
15.
bazooka (01.04.2010 / 01:54)
AsviS 13 пост помог, спасибо огромное!
16.
Azzido (01.04.2010 / 06:52)
12, это правильный пост, и ошибки он не вызовет, лишь заменит элемент глобального массива
17.
Azzido (01.04.2010 / 06:54)
14, $msg = substr($_POST["msg"]); ---- где здесь дополнительные параметры откуда и докуда обрезать????
http://www.php.su/functions/?substr а лучше
http://www.php.su/functions/?mb-substr или
http://www.php.su/functions/?iconv-substr
18.
Azzido (01.04.2010 / 06:59)
14, stripslashes объясни для чего ты применил эту функцию? С ней надо поосторожней, иначе символы которые ты экранировал, так сказать обретут свою силу.
19.
Саня (01.04.2010 / 10:16)
В скриптах халявных насмотрелись и теперь пихают куда попало.
20.
Удаленный (01.04.2010 / 20:52)
<script>alert()</script>
21.
Игорь (02.04.2010 / 02:06)
Azzido (Вчера / 06:59)
14, stripslashes объясни для чего ты применил эту функцию? С ней надо поосторожней, иначе символы которые ты экранировал, так сказать обретут свою силу.
Удаляет экранирующие бэкслэши. (\' преобразуется в ', и т.д.). Двойные бэкслэши (\\) преобразуется в одиночные(\).
stripslashes() используется, например, когда директива конфигурации magic_quotes_gpc включена (она включена по умолчанию), и экранирование символов не требуется. Например, данные не вставляются в базу данных, а просто выводятся в браузер.
22.
Azzido (02.04.2010 / 06:40)
"Опция magic quotes будет так же исключена из PHP и при попытке включения такой настройки, «выскочит» ошибка E_CORE_ERROR. Это повлияет на magic_quotes, magic_quotes_sybase и magic_quotes_gpc." - - вот что говорят о php6 так что не следует применять ненужные функции, в данном случае, а готовясь к переходу, отключать эту настройку в .htaccess
23.
Игорь (03.04.2010 / 12:35)
Стрипслешес может работать и без магических кавычек! Так как в пхп6 ее никто не отменял
URL:
https://visavi.net/topics/7633