Одним из наиболее важных шагов является дезинфекция любого пользовательского ввода перед его обработкой и/или возвратом в браузер. В PHP есть несколько "filter" функций, которые могут быть использованы.
Обычно XSS-атаки имеют форму вставки ссылки на какой-нибудь javascript вне сайта, который содержит вредоносные намерения пользователя. Подробнее об этом читайте здесь.
Вы также захотите протестировать свой сайт - я могу порекомендовать дополнение Firefox XSS Me.
. В основном, вам нужно использовать функцию htmlspecialchars()
всякий раз, когда вы хотите вывести в браузер что-нибудь из пользовательского ввода.
Правильным способом использования этой функции является что-то вроде этого:
echo htmlspecialchars($string, ENT_QUOTES, 'UTF-8');
Google Code University также имеет эти самые обучающие видео по Web Security:
Лучший способ защитить Ваш вход это - использование htmlentities
функция. Пример:
htmlentities($target, ENT_QUOTES, 'UTF-8');
можно получить больше информации здесь .