Существует два типа атак XSS: отраженные атаки XSS и постоянные атаки XSS.То, что вы описали, когда пользователь сайта вводит данные, которые сохраняются на стороне сервера и отображается для всех, кто просматривает страницу, считается постоянным XSS.Подобные атаки возможны, если у вас есть поле для комментариев к сообщению, в котором отсутствует экранирование Javascript, или страница профиля, в которую я могу поместить что угодно.
Другой класс атак XSS - это отраженный XSS.Это немного сложнее, но они составляют один из аргументов в URL для страницы, которую нельзя экранировать.Они часто встречаются на страницах поиска на крупных сайтах.Вы получите URL, который включает в себя некоторый javascript (извините, мой пример был искажен рендерером здесь, поэтому я не могу показать вам пример), и страница отобразит javascript, который позволил бы кому-то создать вредоносный код.URL.Это особенно опасно на сайтах, которые передают любые финансовые данные;представьте себе добросовестного пользователя, который всегда проверяет, собирается ли он перейти по ссылке на запись в свой банк, но из-за атаки с использованием отраженного XSS злоумышленник может отправить его на допустимую страницу на веб-сайте своего банка, но при этом онкод в нем.
В любом случае, ваш пример - Persistent XSS.С такими атаками вы можете совершать еще более гнусные поступки, чем просто изменять, куда отправляет пользователей форма входа в систему.В течение многих лет они были популярны, например, собирая информацию из личных областей сайтов или в сочетании с CSRF, чтобы заставить аутентифицированного пользователя что-то делать, просто просматривая страницу.Некоторое время назад было несколько вирусов MySpace, которые сделали это и распространились из профиля в профиль.