PHP / JS: как убрать пользовательский ввод / вывод - PullRequest
0 голосов
/ 25 декабря 2011

Например, допустим, у меня есть веб-сайт, который получает и отображает комментарии пользователей (текст). Я обеспокоен уязвимостями, возникающими при получении пользовательских сообщений, а также при их отображении.

проблемы:

  • Межсайтовая скриптовая атака

  • SQL-инъекция

У меня вопрос, есть ли еще атаки, которые могут исходить от пользовательского ввода текста? Кроме того, каким образом я могу защититься от таких атак с использованием PHP, Javascript?

Спасибо и веселого Рождества!

Ответы [ 4 ]

1 голос
/ 25 декабря 2011

JavaScript не является барьером от атак XSS, CSRF, поэтому вам следует позаботиться о защите на стороне сервера.Если вы говорите о функциях, то вам помогут XSS: htmlentities (), strip_tags (), utf8_decode ();и, как сказал Зар, ​​mysql_real_escape_string поможет вам от внедрения SQL.Есть много статей, посвященных SQL-инъекциям, XSS, CSRF, перехватам сессий.Перейдите на http://phpsec.org/projects/guide/ и прочитайте все это.

0 голосов
/ 25 декабря 2011

Взгляните на php Библиотека фильтров , которая предназначена для очистки и проверки различных типов данных, от логических до адресов электронной почты, такие функции, как filter_input и filter_input_array может сделать ваше приложение более безопасным и умным.

0 голосов
/ 25 декабря 2011

Если вы используете ajax для отправки некоторых данных формы на сервер как часть URL, закодируйте их следующим образом

encodeURIComponent(yourFormInputData);

и не забудьте декодировать их на стороне сервера.

0 голосов
/ 25 декабря 2011

Вы можете использовать strip_tags($var) для защиты от XSS.

mysql_real_escape_string($var) обеспечит базовую защиту от SQL-инъекций.

...