Модераторы: Aliance, skyboy, MoLeX, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Защита от XSS 
:(
    Опции темы
EugeneS
Дата 17.4.2009, 20:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 1
Регистрация: 17.4.2009

Репутация: нет
Всего: нет



Как фильтровать данные чтобы защититься от XSS при автозамене ссылок и bbcode?
Каков минимальный набор символов позволяющий вставить вредоносный скрипт?
А можно использовать процентную кодировку URL для XSS?

Вот такие шаблоны безопасны?

для ссылок:
Код

'#(^|[\] -])((?:http:\/\/)(?:www\.)?(?:[0-9a-z_\.\/\-%]+)(?:\?[\w=-]+(?:&\w+=\w+)*)?)#uim'



для рисунков:
Код

'#\[img\]((http:\/\/)(www\.)?([0-9a-z_\.\/\-]+)\.(jpg|png|gif))\[\/img\]#uiU'


В действии их можно проверить здесь
http://www.scientific-publications.ru/inde...heme&t_id=6

Это сообщение отредактировал(а) EugeneS - 17.4.2009, 20:31
PM MAIL   Вверх
enof
Дата 17.4.2009, 20:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 837
Регистрация: 23.1.2009
Где: Санкт-Петербург

Репутация: 1
Всего: 35



Не мудрите.
Https, ftp, mailto, magnet и т.д. ссылки забыли?
Все пользовательские данные через htmlspecialchars + если есть, вырезать "javascript:" из пути.
У картинок опять же htmlspecialchars + проверка протокола и расширения.

Цитата(EugeneS @  17.4.2009,  21:29 Найти цитируемый пост)
\.

Точка в символьном классе не является специальным символом, так что экранирование не надо.
Цитата(EugeneS @  17.4.2009,  21:29 Найти цитируемый пост)
\-

Если нужен дефис в символьном классе, то нужно его поставить вначало, иначе он задает диапазон.
Цитата(EugeneS @  17.4.2009,  21:29 Найти цитируемый пост)
\/

Экранирование не требуется.
Цитата(EugeneS @  17.4.2009,  21:29 Найти цитируемый пост)
(?:www\.)?

www является таким же субдоменом как и остальные, зачем его выделять?
Ну и данные рв не пропустят много нормальных адресов.

Ну эт так. Делать нечего просто smile 

Это сообщение отредактировал(а) enof - 17.4.2009, 21:09
PM MAIL ICQ Skype   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Тексты | Следующая тема »


 




[ Время генерации скрипта: 0.0379 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.