Межсайтовый скриптинг.



В одной из статей я Вас немного знакомил с данной атакой, а в этой статье я хочу подробней рассказать о данной уязвимости. Давайте сперва вспомним что же это такое:

XSS (межсайтовый скриптинг) – одна из разновидностей атак на веб-системы, которая подразумевает внедрение вредоносного кода на определенную страницу сайта и взаимодействие этого кода с удаленным сервером злоумышленников при открытии страницы пользователем.

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

Термин с английского расшифровывается как Cross-Site Scripting, но при этом получил аббревиатуру XSS, чтобы не было путаницы с CSS (каскадные таблицы стилей).

XSS-атаки обычно используются в следующих преступных целях:

  • Кража аккаунта;
  • Получение доступа к защищенным или конфиденциальным данным;
  • Получение бесплатного доступа к платному контенту;
  • Слежение за посещением сайтов пользователем;
  • Изменение настроек браузера;
  • Публичная клевета в адрес отдельного лица или корпорации;
  • Повреждение веб-приложения;
  • DOS-атаки.

Как работает межсайтовый скриптинг?

Основная цель межсайтового скриптинга – кража cookies пользователей при помощи встроенного на сервере скрипта с дальнейшей выборкой необходимых данных и использованием их для последующих атак и взломов.

Злоумышленник осуществляет атаку пользователей не напрямую, а с использованием уязвимостей веб-сайта, который посещают жертвы, и внедряет специальный JavaScript. В браузере у пользователей этот код отображается как единая часть сайта. При этом посещаемый ресурс является соучастником XSS-атаки.

Если сравнивать с SQL-инъекциями, то XSS безопасен для сервера, но несет угрозу для пользователей зараженного ресурса или страницы. Однако, если к злоумышленнику попадут cookies администратора, можно получить доступ к панели управления сайтом и его содержимому.

Виды XSS по способу взаимодействия

Существует два основных типа XSS-атак по способу взаимодействия:

  1. Пассивные. От жертвы требуется определенное действие, чтобы вызвать обработчик событий и запустить вредоносный скрипт в установленной форме. Для этого используется социальная инженерия, например отправка электронного письма с призывом перейти по ссылке и нажать на определенную область на сайте. Как только пользователь наведет на нужный объект и кликнет по нему, запустится вредоносный скрипт. Если же жертва бездействует, код не будет активирован.
  2. Активные. Злоумышленнику не нужно заманивать жертву по специальным ссылкам, так как код встраивается в исполняемом файле на сервере. От пользователя не требуется никакой активности. У форм ввода, как правило, установлен специальный обработчик событий, автоматически активирующийся при попадании на эту страничку. В итоге все пользователи, перешедшие по этой ссылке, станут жертвами злоумышленника.

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

В мире выделено три основных типа классификации:

1. Хранимые XSS (постоянные). Один из самых опасных типов уязвимостей, так как позволяет злоумышленнику получить доступ к серверу и уже с него управлять вредоносным кодом (удалять, модифицировать). Вредоносные скрипты с легкостью могут быть встроены как в текст, так и в картинки, рисунки.

2. Отраженные XSS (непостоянные). В этом случае вредоносная строчка выступает в роли запроса жертвы к зараженному веб-сайту.

3. DOM-модели. В этом варианте возможно использование как хранимых XSS, так и отраженных. Например:

  • Злоумышленник создает URL-адрес, который заранее содержит вредоносный код, и отправляет его любым способом пользователю;
  • Пользователь переходит по этой ссылке, зараженный сайт принимает запрос, исключая вредоносную строку;
  • На странице у пользователя выполняется сценарий, в результате чего загружается вредоносный скрипт и злоумышленник получает cookies.

Проверка и защита своего сайта

Для быстрой проверки сайта на наличие уязвимостей XSS можно воспользоваться специализированными сервисами, которые в автоматическом режиме проведут сканирование страницы. В обязательном порядке нужно проверять все URL, где возможна отправка данных со стороны пользователя (формы комментариев, обратная связь, поиск). В качестве примера можете использовать http://xss-scanner.com, но не стоит ограничиваться лишь одним инструментом.

Несколько советов по предотвращению использования XSS на вашем сайте:

1. Если на вашем сайте включен пользовательский ввод, должно выполняться кодирование.

2. Если кодирование невозможно или неуместно в некоторых ситуациях, заменяйте его или дополняйте валидацией.

3. Безопасная обработка данных должна выполняться в коде не только на стороне вашего web-сервера, но и на стороне пользователя.

1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (1 оценок, среднее: 5,00 из 5)
Загрузка...

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Chinese (Traditional)EnglishJapaneseRussianUkrainian

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам: