2009-06-16 4 views
1

Есть ли хорошая библиотека в CPAN для фильтрации текстового поля для всех плохих вещей, таких как xss?Есть ли хорошая библиотека в CPAN для фильтрации межсайтовых скриптов (XSS)?

+0

Возможно, это дубликат [Фильтрация JavaScript из HTML] (http://stackoverflow.com/questions/858773/filtering-javascript-out-of-html). – sleske

ответ

6

Ваш первый шаг должен всегда состоять в поиске и просмотре результатов. Похоже, есть lots of potential hits. Когда я ищу что-то новое, я просматриваю результаты поиска и проверяю документы модулей, чтобы понять, насколько они понятны и насколько хорошо построен API. Я также ищу отзывы (некоторые из них, некоторые из них - это часто случайные) и проверяют ошибки. Это дает мне представление о том, с чем я имею дело.

Если у вас есть вопрос «Какой из этих вариантов лучше?», То, боюсь, я не знаю в этом случае. (Мой первоначальный ответ может быть слишком общий.)

Два хороших мест, чтобы начать поиск CPAN:

0

На базовом уровне вы хотите HTML::Entities, но которые вы выбрали, зависит от того, где в DOM вы используете значения. Это вообще не поможет html-сущности кодировать ввод пользователя, если вы вставляете его в тег <script>, например.

Это довольно вероятно, что вы используете какой-то шаблон для генерации HTML, поэтому он должен иметь метод, чтобы избежать содержания, HTML::Mason имеет <% $thing |h %>, Template::Toolkit имеет [% thing | html %] ... но если вы просто делаете это в вашем собственном коде вам нужно позвонить по телефону encode_entities.