А знаете ли вы что такое XSS?

для раздела Блоги


Количество web  ресурсов и облачных приложений неугомонно растет с каждым днем.

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

Есть множество разнообразных векторов атаки, которые могут использовать злоумышленники, но в этот раз я хочу вам рассказать о таком типе атаки как XSS.
XSS (англ. Сross Site Sсriрting) это такой вид атаки, когда в код страницы встраиваются специальные скрипты, которые выполняются в браузере и в результате могут выполнять разнообразные действия как кража cookies, удаления или модификация аккаунта или выполнение действий от авторизованного пользователя.

 
В основном XSS можно разделить на 2 типа:


  1. Активные. Это когда в результате не достаточной фильтрации входных данных (не убираются символы < > ’ ” &) возможно встраивание в страницу произвольного HTML кода. При загрузке такой страницы код выполняется браузером автоматически.


  2. Пассивные. Код встраивается в ссылку например:

    http://foo.bar/search.php?q= При переходе по такой ссылке в следствии недостаточной фильтрации будет встроен и выполнен скрипт

    Другим видом атаки данного типа является самодостаточный XSS. Он основывается на поддержке браузерами протокола data: который позволяет AJAX приложениям генерировать DOC, PDF и другие форматы без использования серверной части.

    перейдя по ссылке вида:

    data:text/html;base64,PHNjcmlwdD4gYWxlcnQoIlNlbGYtY29udGFpbmVkIFhTUyIpOyA8L3NjcmlwdD4=

    выполнится  скрипт:

    Примеры для пассивного XSS:

    Пример со ссылкой

    Пример с data

    Как же противостоять атакам подобного рода? Против активного XSS может помочь только блокировка исполнения javascript, но это не выход поскольку современные web ресурсы в своем большинстве без включенного javascript работать не будут.

    Против пассивных XSS есть простое правило -  не переходить по подозрительным ссылкам, даже если они находятся на том же домене что и сам сайт.


ЗЫ: Примеры уязвимостей уже пофиксили  и они уже не работают.
Telegram-канал @overclockers_news - это удобный способ следить за новыми материалами на сайте. С картинками, расширенными описаниями и без рекламы.
Оценитe материал
рейтинг: 1.0 из 5
голосов: 3

Возможно вас заинтересует

Популярные новости

Сейчас обсуждают