Что такое XSS и как закрыть дыру?

Печать RSS
738

N

Голубые штаны
0
Действенный метод - это фильтровать все входящие гет, пост, куки данные там где это нужно и соответствующими функциями.
А фильтровать весь гет или пост массив, как я часто встречаю, да еще универсальными функциями с регулярками - очень скажется на производительности.
Б

Пацак
0
При вы8воде данных в браузере: htmlspecialchars фильтруем, при запросах в мускул mysql_escape_string фильтруем (цыфры для запросов я проверяю через ctype_digit, чтоб быть вполне уверенным)
I
Автор
Пришелец
0
Neformat (Сегодня / 17:26)
Действенный метод - это фильтровать все входящие гет, пост, куки данные там где это нужно и соответствующими функциями.
А фильтровать весь гет или пост массив, как я часто встречаю, да еще универсальными функциями с регулярками - очень скажется на производительности.
Так вроде эти переменные фильтруются а гады все равно узнают пароли

Ктулху
0
14, кто же их в открытом виде то хранит? и мне кажется что там явно не XSS, или у тебя пароли прямо в URL идут
N

Голубые штаны
0
#14. если бы они все фильтровались, тебя бы не взломали

Персональный статус
0
ну да гетом ловят видимо, пусть не переходят по прямых линках, или сесиионную авторизацию делай, куки, да масса вариантов для защиты, было бы желание

Дух
0
10,писал 2 кода,просто последний форум не задублировал,дома напишу от XSS.
А по теме использовать для фильтра strip_tags(); вырежим строчные теги php|html
htmlspecialchars() - работает по спец символам,вот ещё функция htmlentities() конвертирует все символы в строке (кроме букв),ну и stripslashes() удалим экранированные символы.
N

Эцилопп сией тентуры
0
я у себя запретил в url все кроме : / . ? & и в полне спокоен! и фильтрую каждую переменную полученную через гет и пост, все что можно заменить, заменяю! и вполне уверенно чувствую себя smile
С

о_О
0
Заяц скинь код

2000 лет д.н.э.
0
Вообще ни чего не запрещаю ни когда в адресе..
Все переменные на месте фильтрую.
Эти универсальные методы лажа и лишняя нагрузка.
Site.ru/?page=fuck
и фильтр обосрался, и ресурсы сожрал и проку 0.
$_MYGET['page'] = abs(intval($_GET['page']));
$_MYGET['id'] = abs(intval($_GET['id']));
$_MYGET['login'] = (preg_match('|^[a-z0-9]{3,20}$|i',$_GET['login']) ? $_GET['login'] : false;
проще свой массив создать и из него брать нужные переменные уже правильно отфильтованными.
Если уж так хочется чего ни будь в шапку запихнуть..
Стикеры / Теги / Правила / Топ тем / Топ постов / Поиск