Нужно ли использовать HTML-очиститель, если я убираю теги / преобразовываю их в HTML-объекты? - PullRequest
1 голос
/ 21 февраля 2011

В настоящее время я работаю над проектом, в котором данные считываются из текстовой области и передаются в базу данных mysql.Мой вопрос заключается в том, нужно ли мне использовать очиститель html для предотвращения инъекций mysql или любых других атак, если я уже удаляю теги html или преобразовываю их в сущности?

Ответы [ 2 ]

2 голосов
/ 16 июля 2012

Для защиты от MySQL инъекций вы должны использовать подготовленные операторы .

Для других атак, а для XSS вам нужно сделать правильное экранирование выходных данных.Это немного больше кусок пирога.Мэтт Робинсон написал хорошее введение в концепцию .Падрайк Брейди отмечает, что это не так просто, как , и в конечном итоге предлагает использовать обертку вокруг htmlspecialchars, как Twig do.У Zend также есть экранирующая библиотека, и они оба вдохновлены ссылочным кодом из ESAPI , который, к сожалению, не имеет готовой к работе версии для php .

Обратите внимание, что все библиотеки пропускают запятую в контексте javascript , что, на мой взгляд, является уязвимостью.

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

0 голосов
/ 21 февраля 2011

Вам нужно добавить экранирующие кавычки ' (addslashes функция php).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...