Міжсайтовий скриптинг

XSS (англ. Cross Site Scripting — «міжсайтовий скриптинг») — тип вразливості інтерактивних інформаційних систем у вебі. XSS виникає, коли на сторінки, які були згенеровані сервером, з якоїсь причини потрапляють користувацькі скрипти. Специфіка подібних атак полягає в тому, що замість безпосередньої атаки сервера зловмисники використовують вразливий сервер для атаки на користувача.

Для терміну використовують скорочення «XSS», щоб не було плутанини з каскадними таблицями стилів (абревіатура «CSS»).

Довгий час програмісти не приділяли їм належної уваги, вважаючи їх безпечними. Однак ця думка помилкова: на сторінці або в HTTP-Cookie можуть бути досить вразливі дані (наприклад, ідентифікатор сесії адміністратора). На популярному сайті скрипт може влаштувати DoS-атаку.

Класифікація

Пасивні

Пасивні XSS — скрипт не зберігається на сервері уразливого сайту, або він не може автоматично виконатися в браузері жертви. Для спрацьовування пасивної XSS потрібна якась додаткова дія (клік по лінку, вставка певного коду в текстове поле на сайті, тощо), яку повинна виконати жертва. Їх також називають першим типом XSS.

Активні

При активних XSS шкідливий скрипт зберігається на сервері, і спрацьовує в браузері жертви при відкритті сайту, що містить активну XSS. Їх також називають другим типом XSS.

Вразливість

Еван Джонсон, інженер компанії «CloudFlare» дослідив вебсайти з переліку «Топ мільйон» сайтів за відвідуваністю, обчислений компанією Alexa. Він виявив близько тисячі сайтів з цього переліку, налаштування веб-сервера яких надають зловмисникові можливість атакувати користувача із допомогою міжсайтового скриптингу. Він помітив, що веб-сервери вразливих сайтів повертають такий саме HTTP-заголовок Access-Control-Allow-Origin, як вказано в HTTP-заголовку Origin в запиті клієнта.

На думку інженера, це створює умови, завдяки яким зловмисник може обійти обмеження правила «Єдиного походження» (англ. Same Origin Policy)[1][2].

Примітки

  1. Evan Johnson (Feb 2016). Breaking Same Origin Policy On The Alexa 1 million.[недоступне посилання з липня 2019]
  2. Martin Anderson (23 Feb 2016). Cross-site scripting enabled on 1000 major sites – including financial sites. The Stack. Архів оригіналу за 24 лютого 2016. Процитовано 24 лютого 2016.

Див. також

This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.