M_script
30.10.2013, 06:41
В общепринятой классификации XSS разделяется на 3 типа: stored (persistent), reflected (non-persistent) и DOM based.
Рассмотрим такой пример:
Сайт A:
PHP:
alert(/XSS/)
Сайт B:
PHP:
...
...
Вектор XSS-атаки:
http://siteB.com/?xss=http://siteA.com/
То есть, пользователь передает на сайт B запрос, содержащий ссылку на сайт A. Cервер B считывает текст с сайта A и выводит на страницу.
С классификацией атаки проблем нет. Наш скрипт внедрен в страницу и JS-код выполняется в контексте сайта B - значит XSS.
Попробуем определить тип, использую классификацию OWASP (https://www.owasp.org/index.php/Cross-site_Scripting_(XSS)):
1) Stored
"Stored attacks are those where the injected script is permanently stored on the target servers, such as in a database, in a message forum, visitor log, comment field, etc."
Не подходит. На целевом сервере скрипт не хранится.
2) Reflected
"Reflected attacks are those where the injected script is reflected off the web server, such as in an error message, search result, or any other response that includes some or all of the input sent to the server as part of the request"
Тоже не подходит. Ответ сервера не содержит данных, переданных в запросе.
3) DOM Based
"is an XSS attack wherein the attack payload is executed as a result of modifying the DOM “environment” in the victim’s browser used by the original client side script"
Здесь все очевидно. Скрипт внедрен, для атаки не используются скрипты оригинальной страницы сайта B.
Вопросы:
К какому типу относятся такие XSS (аргументируйте свой ответ)? Или это отдельный тип, который еще не классифицирован?
p.s.:
vk.com в качестве практического примера - /showthread.php?postid=2886741#post2886741 (https://antichat.live/showthread.php/postid/2886741/), пост #3
Рассмотрим такой пример:
Сайт A:
PHP:
alert(/XSS/)
Сайт B:
PHP:
...
...
Вектор XSS-атаки:
http://siteB.com/?xss=http://siteA.com/
То есть, пользователь передает на сайт B запрос, содержащий ссылку на сайт A. Cервер B считывает текст с сайта A и выводит на страницу.
С классификацией атаки проблем нет. Наш скрипт внедрен в страницу и JS-код выполняется в контексте сайта B - значит XSS.
Попробуем определить тип, использую классификацию OWASP (https://www.owasp.org/index.php/Cross-site_Scripting_(XSS)):
1) Stored
"Stored attacks are those where the injected script is permanently stored on the target servers, such as in a database, in a message forum, visitor log, comment field, etc."
Не подходит. На целевом сервере скрипт не хранится.
2) Reflected
"Reflected attacks are those where the injected script is reflected off the web server, such as in an error message, search result, or any other response that includes some or all of the input sent to the server as part of the request"
Тоже не подходит. Ответ сервера не содержит данных, переданных в запросе.
3) DOM Based
"is an XSS attack wherein the attack payload is executed as a result of modifying the DOM “environment” in the victim’s browser used by the original client side script"
Здесь все очевидно. Скрипт внедрен, для атаки не используются скрипты оригинальной страницы сайта B.
Вопросы:
К какому типу относятся такие XSS (аргументируйте свой ответ)? Или это отдельный тип, который еще не классифицирован?
p.s.:
vk.com в качестве практического примера - /showthread.php?postid=2886741#post2886741 (https://antichat.live/showthread.php/postid/2886741/), пост #3