Не могу понять, как XSS-атака наносит ущерб

#security #owasp

#Безопасность #owasp

Вопрос:

Я не могу понять, какой ущерб наносит атака XSS. Когда я добавляю к вводу, например, функцию onmouse (), и она отображает изображение, это изображение появится не для другого пользователя, а для меня и исчезнет после обновления. как мы можем сохранить его на сервере через html?

Ответ №1:

XSS-атаки работают, используя уязвимости в коде веб-сайта.

Возьмем тривиальный пример:

Дан ввод, который предлагает пользователю ввести свое имя, а затем отвечает «Здравствуйте, ВАШЕ ИМЯ». Если сайт просто повторяет то, что было введено без изменений (т. Е. Без защиты XSS), Тогда кто-то может ввести <script> ... </script> и запустить некоторый JavaScript на сайте.

Если это так, то злоумышленник может написать форму на своем сайте, но установить action на эту страницу. Тогда у них может быть скрытый ввод, содержащий некоторый JavaScript. Тогда они могли бы отправить форму с помощью JS.

Теперь, если злоумышленник обманом заставил жертву посетить сайт злоумышленника, форма будет отправлена на исходный сайт браузером жертвы, и JS будет запущен в их браузере.

Затем JS может сделать что-то плохое, например, скопировать данные из своих файлов cookie и отправить их злоумышленнику. Затем злоумышленник может ввести этот файл cookie в свой браузер и использовать исходный сайт, войдя в систему как жертва.

Теперь представьте, что исходным сайтом был ваш онлайн-банкинг или веб-почта. Все ваши личные данные будут доступны злоумышленнику.


Этот пример относится к отраженной атаке XSS.

Другой вид атаки — это сохраненная XSS-атака.


Возьмем, к примеру, форум. Это позволяет отправлять сообщения. Они сохраняются в базе данных и отображаются всем посетителям.

Теперь, если данные, хранящиеся в базе данных, были возвращены обратно без защиты XSS, тогда JS будет выполняться для всех, кто посещает сайт.


Итак, вкратце:

как мы можем сохранить его на сервере через html?

Вы не можете использовать HTML для этого.

Вам нужно отправить HTTP-запрос (сохраненный) или заставить жертву сделать это (сохраненный или отраженный), который использует недостаток в коде сайта.