Задать вопрос
@zlodiak

Почему не срабатывает xss?

Я написал два варианта одного и того же кода. Суть в том, что пользователь вводит в поле типа input вредоносный код:
<script>alert('xss attack')</script>

В результате jquery-код выполняет команду alert. А nativeJS-код не выполняет.

LIVE DEMO

Помогите пожалуйста сделать так чтобы nativeJS-код тоже выполнял команду alert. Не обязательно использовать innerHTML.

Я пробовал вместо innerHTML использовать createElement/createTextNode , но тоже не получилось. Хотя jquery-метод использует именно их, судя по исходникам
  • Вопрос задан
  • 151 просмотр
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
  • Академия Эдюсон
    Fullstack-разработчик на JavaScript + ИИ
    11 месяцев
    Далее
  • ProductStar × РБК
    Профессия: Инженер по тестированию + ИИ
    6 месяцев
    Далее
Пригласить эксперта
Ответы на вопрос 1
Psixodelik
@Psixodelik
Преподаватель на Hexlet
Script elements inserted using innerHTML do not execute when they are inserted.


Стандарт

Хз, как там внутри всё это делает jQuery, но видимо обрабатывают по своему. При этом всё равно можно использовать XSS, только не так явно.

Например, вот это сработает <img src='x' onerror='alert(1)'>
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы