SlideShare a Scribd company logo
А НЕ ПОГОВОРИТЬ ЛИ НАМ
О
- 82% web-приложений
уязвимы к XSS (2013)
Page 2
Коротенько о фактах
- 7 из 10 web-приложений
уязвимы к XSS (2014)
- 60% web-приложений
уязвимы к XSS (2013)
- №3 в OWASP TOP-10
(2013)
• Что такое XSS
• XSS – Cross-Site Scripting
• Атака на пользователя уязвимого web-приложения
Page 3
Поприветствуйте – XSS!
• Цель
• Выполнить код (JavaScript) в браузере «жертвы» в контексте уязвимого
приложения
Page 4
Так как же оно работает?
Ссылка со скрытым кодом
WWW.SUPERBANK.ORG
• По вектору
- Отраженные либо пассивные XSS (Type 1)
- Сохраненные или активные XSS (Type 2)
- DOM XSS (Type 0)
Page 5
Типы XSS
• По каналам внедрения
- Ошибки в браузерах
- Отсутствие проверки вводимых данных
- Подмена кодировки страницы
WWW.SUPERBANK.ORG
Пассивная XSS
Login
*******
www.malicious.com
Жертва загружает
скрипт с сайта
Page 6
WWW.SUPERBANK.ORG
Page 7
Активная XSS
Login
*******
www.malicious.com
Открывает страницу на
которой отображается
контент уязвимого поля
Сохраняет «активный
контент»
В уязвимом поле
• Web-страницы изменяющие DOM (Document Object Model)
• Тяжело обнаружить
Page 8
DOM XSS
<body>
<script>document.write(location.href);</script>
</body>
Простейшее HTML DOM-дерево Пример простейшей уязвимой HTML
Как использовать?
http://site.com/test.html#<script>alert(‘xss’);</script>
DOM XSS WiKi
• Кража COOKIES
- Кража сессий
- Кража персональных данных
- Неавторизированный доступ к web- приложению
- Потеря репутации
Page 9
Как XSS может быть использована
• Кража данных из форм
- Кража персональных данных
- Неавторизированный доступ к web-приложению
- Потеря репутации
• DDoS-атаки
- Потеря репутации
• XSS-черви
- Кража персональных данных
- Неавторизированный доступ к web- приложению
- Потеря репутации
XENOTIX
- Проект OWASP
- Активно разрабатывается
- Много-браузерное тестирование
- Много-много всего...
- Freeware
Page 10
Чем искать?
XSSF
- Metasploit модуль
- Консольная утилита
- Присутствует web-интерфейс
- Создает коммуникационный канал с тестируемым приложением
- Freeware
BeEF
- Мощная среда для тестирования безопасности
- Консольная утилита
- Присутствует web-интерфейс
- Простое иширокое API
- Freeware
DOMinatorPro
- Автоматизация сканирования
- Автоматическая проверка на возможность
использования найденных уязвимостей
- Shareware
• Проверка на стороне сервера:
• Проверять входящие данные – НЕ ДОВЕРЯТЬ ни чему, что пришло от пользователя (даже Cookies)
• Использовать HttpOnly флаг
• Использовать SSL
• Не хранить конфиденциальные данные в Cookies
• Кодировать HTML-символы, JavaScript, CSS и ссылки.
• Использовать функции фильтрации ( filter_sanitize_encoded, htmlentities,
filter_sanitize_magic_quotes, и др.) для фильтрации входящих данных
• Использовать различные библиотеки для кодирования входящих данных (HTML Purifier or Htmlawed,
PHP Anti-XSS Class, AntiSamy API, XSS-HTML-Filter)
Page 11
Как предотвратить?
• Проверка на стороне клиента
– Использование различных модулей для браузеров (NoScript для FireFox and NotScripts
Opera для Chrome)
Page 12
Спасибо за внимание 

More Related Content

PPTX
Тестирование уязвимостей веб приложений
PPTX
Sql инъекции в тестировании
PDF
Максим Кочкин (Wamba)
PPTX
тестирование защищенности веб приложений
PPTX
Атаки на web-приложения. Основы
PDF
Как мануальный тестировщик может базово протестировать безопасность, Евгений ...
PDF
ЄВГЕНІЙ ТОЛЧИНСКИЙ «Як manual QA може протестувати проект з боку security» QA...
PPT
Анализ защищенности Web-приложений, выявление уязвимостей в реальных условиях
Тестирование уязвимостей веб приложений
Sql инъекции в тестировании
Максим Кочкин (Wamba)
тестирование защищенности веб приложений
Атаки на web-приложения. Основы
Как мануальный тестировщик может базово протестировать безопасность, Евгений ...
ЄВГЕНІЙ ТОЛЧИНСКИЙ «Як manual QA може протестувати проект з боку security» QA...
Анализ защищенности Web-приложений, выявление уязвимостей в реальных условиях

What's hot (19)

PDF
Risspa domxss
PPTX
Тестирование на проникновение в сетях Microsoft
KEY
Безопасность веб-приложений: starter edition
PPTX
Alexei Sintsov - "Between error and vulerability - one step"
PPTX
Security testing
PPTX
Информационная безопасность в аспекте веб-разработки
PPT
PPTX
Стажировка-2014, занятие 6. Информационная безопасность и атаки на сервер.
PPT
Введение в тему безопасности веб-приложений
PPTX
XSS. Обходы фильтров и защит.
PPTX
СВЯТ ЛОГИН «OWASP TOP 10 2021» Online QADay 2021
PPT
Безопасность веб-приложений. Так ли опасна виртуальная угроза?
PPTX
KazHackStan - "><script>alert()</script>
PPTX
Application security? Firewall it!
PDF
Ihor Bliumental – Is There Life Outside OWASP Top-10
PPTX
CSRF-уязвимости все еще актуальны: как атакующие обходят CSRF-защиту в вашем ...
PPTX
Тестирование на проникновение в сетях Microsoft (v.2)
PDF
Безопасность Drupal сайтов
PDF
Sql injection
Risspa domxss
Тестирование на проникновение в сетях Microsoft
Безопасность веб-приложений: starter edition
Alexei Sintsov - "Between error and vulerability - one step"
Security testing
Информационная безопасность в аспекте веб-разработки
Стажировка-2014, занятие 6. Информационная безопасность и атаки на сервер.
Введение в тему безопасности веб-приложений
XSS. Обходы фильтров и защит.
СВЯТ ЛОГИН «OWASP TOP 10 2021» Online QADay 2021
Безопасность веб-приложений. Так ли опасна виртуальная угроза?
KazHackStan - "><script>alert()</script>
Application security? Firewall it!
Ihor Bliumental – Is There Life Outside OWASP Top-10
CSRF-уязвимости все еще актуальны: как атакующие обходят CSRF-защиту в вашем ...
Тестирование на проникновение в сетях Microsoft (v.2)
Безопасность Drupal сайтов
Sql injection
Ad

Viewers also liked (19)

PPT
Как заслужить доверие заказчика при передаче проекта новой команде тестирования?
PPT
Истина где-то рядом или как правильно писать код
PPTX
Тестирование Сетевой Безопасности
PPTX
Вам не нужен Автоматизатор!
PPTX
Дополнительные материалы от Егора Васильва
PPT
Тестирование производительности для специалистов по автоматизации - зачем и как?
PPTX
Как автоматизировать рутинные задачи или учимся разговаривать на змеином языке
PDF
PDF
For sponsors 2017_en
PDF
Nastachku for sponsors 2017
PPTX
Оценка качества автотестов
PPTX
Docker + Selenium Webdriver в рамках Continuous Integration
PDF
Winium — это как Selenium, только под Windows
PPTX
Архитектура автоматизированных тестов: представление предметной области
PDF
Как 3 тестировщика играючи тестируют приложение для 10млн пользователей
PPTX
Грабли тестировщика
PPTX
Качественное тестовое задание? Без проблем!
PDF
Беседа о тестовых данных
PDF
Автоматизация функционального тестирования REST API: секреты, тонкости и подв...
Как заслужить доверие заказчика при передаче проекта новой команде тестирования?
Истина где-то рядом или как правильно писать код
Тестирование Сетевой Безопасности
Вам не нужен Автоматизатор!
Дополнительные материалы от Егора Васильва
Тестирование производительности для специалистов по автоматизации - зачем и как?
Как автоматизировать рутинные задачи или учимся разговаривать на змеином языке
For sponsors 2017_en
Nastachku for sponsors 2017
Оценка качества автотестов
Docker + Selenium Webdriver в рамках Continuous Integration
Winium — это как Selenium, только под Windows
Архитектура автоматизированных тестов: представление предметной области
Как 3 тестировщика играючи тестируют приложение для 10млн пользователей
Грабли тестировщика
Качественное тестовое задание? Без проблем!
Беседа о тестовых данных
Автоматизация функционального тестирования REST API: секреты, тонкости и подв...
Ad

Similar to А не поговорить ли нам о XSS! (20)

PPTX
QA Fest 2015. Юрий Федько. XSS - от простого к сложному!
PPTX
Безопасность Joomla: мифы и реальность
PDF
Почему хакеры выбирают WordPress. WordCamp 2017, Moscow.
PDF
Web application security (RIT 2014, rus)
PPTX
Svyatoslav Login
PDF
Александр Сидоров "Как защитить пользователей от вирусов и фишинга"
PPTX
Эшелонированная оборона 2012
PPTX
Современный агрессивный интернет
PDF
как не заразить посетителей своего сайта All а.сидоров, п.волков
PPTX
Dmytro Snopchenko - Zahyst saitiv vid DDoS i lyudskyi faktor
PDF
Основные угрозы безопасности веб-сайтов
PPT
Анализ защищенности интернет-проектов
PDF
Node.js Меньше сложности, больше надежности Holy.js 2021
PPT
Защита сайта от взлома и вирусов
PDF
«Взломать за 60 секунд», Артем Кулаков, Redmadrobot
PPTX
Безопасность Node.js / Илья Вербицкий (Независимый консультант)
PPTX
CSRF-уязвимости все еще актуальны: как атакующие обходят CSRF-защиту в вашем ...
PDF
Безопасность сайта: мифы и реальность — Петр Волков
PPTX
Waf.js: как защищать веб-приложения с использованием JavaScript
PPTX
Эволюция атак на веб приложения (Evolution of web applications attacks)
QA Fest 2015. Юрий Федько. XSS - от простого к сложному!
Безопасность Joomla: мифы и реальность
Почему хакеры выбирают WordPress. WordCamp 2017, Moscow.
Web application security (RIT 2014, rus)
Svyatoslav Login
Александр Сидоров "Как защитить пользователей от вирусов и фишинга"
Эшелонированная оборона 2012
Современный агрессивный интернет
как не заразить посетителей своего сайта All а.сидоров, п.волков
Dmytro Snopchenko - Zahyst saitiv vid DDoS i lyudskyi faktor
Основные угрозы безопасности веб-сайтов
Анализ защищенности интернет-проектов
Node.js Меньше сложности, больше надежности Holy.js 2021
Защита сайта от взлома и вирусов
«Взломать за 60 секунд», Артем Кулаков, Redmadrobot
Безопасность Node.js / Илья Вербицкий (Независимый консультант)
CSRF-уязвимости все еще актуальны: как атакующие обходят CSRF-защиту в вашем ...
Безопасность сайта: мифы и реальность — Петр Волков
Waf.js: как защищать веб-приложения с использованием JavaScript
Эволюция атак на веб приложения (Evolution of web applications attacks)

More from SQALab (20)

PDF
Готовим стажировку
PPTX
Куда приводят мечты? или Искусство развития тестировщика
PPT
Оптимизация Selenium тестов и ускорение их поддержки
PPT
Автоматизация 0.0: 0 - бюджет, 0 - опыт программирования
PPTX
Нагрузочное тестирование нестандартных протоколов с использованием Citrix и J...
PPTX
Continuous performance testing
PDF
Конфиги вместо костылей. Pytestconfig и зачем он нужен
PPT
Команда чемпионов в ИТ стихии
PPTX
API. Серебряная пуля в магазине советов
PPTX
Добиваемся эффективности каждого из 9000+ UI-тестов
PPT
Делаем автоматизацию проектных KPIs
PDF
Вредные привычки в тест-менеджменте
PPTX
Мощь переполняет с JDI 2.0 - новая эра UI автоматизации
PPT
Как hh.ru дошли до 500 релизов в квартал без потери в качестве
PPTX
Стили лидерства и тестирование
PPT
"Давайте не будем про качество"
PDF
Apache.JMeter для .NET-проектов
PPTX
Тестирование геолокационных систем
PPTX
Лидер или босс? Вот в чем вопрос
PPTX
От Зефира в коробке к Structure Zephyr или как тест-менеджеру перекроить внут...
Готовим стажировку
Куда приводят мечты? или Искусство развития тестировщика
Оптимизация Selenium тестов и ускорение их поддержки
Автоматизация 0.0: 0 - бюджет, 0 - опыт программирования
Нагрузочное тестирование нестандартных протоколов с использованием Citrix и J...
Continuous performance testing
Конфиги вместо костылей. Pytestconfig и зачем он нужен
Команда чемпионов в ИТ стихии
API. Серебряная пуля в магазине советов
Добиваемся эффективности каждого из 9000+ UI-тестов
Делаем автоматизацию проектных KPIs
Вредные привычки в тест-менеджменте
Мощь переполняет с JDI 2.0 - новая эра UI автоматизации
Как hh.ru дошли до 500 релизов в квартал без потери в качестве
Стили лидерства и тестирование
"Давайте не будем про качество"
Apache.JMeter для .NET-проектов
Тестирование геолокационных систем
Лидер или босс? Вот в чем вопрос
От Зефира в коробке к Structure Zephyr или как тест-менеджеру перекроить внут...

А не поговорить ли нам о XSS!

  • 2. - 82% web-приложений уязвимы к XSS (2013) Page 2 Коротенько о фактах - 7 из 10 web-приложений уязвимы к XSS (2014) - 60% web-приложений уязвимы к XSS (2013) - №3 в OWASP TOP-10 (2013)
  • 3. • Что такое XSS • XSS – Cross-Site Scripting • Атака на пользователя уязвимого web-приложения Page 3 Поприветствуйте – XSS! • Цель • Выполнить код (JavaScript) в браузере «жертвы» в контексте уязвимого приложения
  • 4. Page 4 Так как же оно работает? Ссылка со скрытым кодом WWW.SUPERBANK.ORG
  • 5. • По вектору - Отраженные либо пассивные XSS (Type 1) - Сохраненные или активные XSS (Type 2) - DOM XSS (Type 0) Page 5 Типы XSS • По каналам внедрения - Ошибки в браузерах - Отсутствие проверки вводимых данных - Подмена кодировки страницы
  • 7. WWW.SUPERBANK.ORG Page 7 Активная XSS Login ******* www.malicious.com Открывает страницу на которой отображается контент уязвимого поля Сохраняет «активный контент» В уязвимом поле
  • 8. • Web-страницы изменяющие DOM (Document Object Model) • Тяжело обнаружить Page 8 DOM XSS <body> <script>document.write(location.href);</script> </body> Простейшее HTML DOM-дерево Пример простейшей уязвимой HTML Как использовать? http://site.com/test.html#<script>alert(‘xss’);</script> DOM XSS WiKi
  • 9. • Кража COOKIES - Кража сессий - Кража персональных данных - Неавторизированный доступ к web- приложению - Потеря репутации Page 9 Как XSS может быть использована • Кража данных из форм - Кража персональных данных - Неавторизированный доступ к web-приложению - Потеря репутации • DDoS-атаки - Потеря репутации • XSS-черви - Кража персональных данных - Неавторизированный доступ к web- приложению - Потеря репутации
  • 10. XENOTIX - Проект OWASP - Активно разрабатывается - Много-браузерное тестирование - Много-много всего... - Freeware Page 10 Чем искать? XSSF - Metasploit модуль - Консольная утилита - Присутствует web-интерфейс - Создает коммуникационный канал с тестируемым приложением - Freeware BeEF - Мощная среда для тестирования безопасности - Консольная утилита - Присутствует web-интерфейс - Простое иширокое API - Freeware DOMinatorPro - Автоматизация сканирования - Автоматическая проверка на возможность использования найденных уязвимостей - Shareware
  • 11. • Проверка на стороне сервера: • Проверять входящие данные – НЕ ДОВЕРЯТЬ ни чему, что пришло от пользователя (даже Cookies) • Использовать HttpOnly флаг • Использовать SSL • Не хранить конфиденциальные данные в Cookies • Кодировать HTML-символы, JavaScript, CSS и ссылки. • Использовать функции фильтрации ( filter_sanitize_encoded, htmlentities, filter_sanitize_magic_quotes, и др.) для фильтрации входящих данных • Использовать различные библиотеки для кодирования входящих данных (HTML Purifier or Htmlawed, PHP Anti-XSS Class, AntiSamy API, XSS-HTML-Filter) Page 11 Как предотвратить? • Проверка на стороне клиента – Использование различных модулей для браузеров (NoScript для FireFox and NotScripts Opera для Chrome)
  • 12. Page 12 Спасибо за внимание 

Editor's Notes

  • #2: Спасибо, что присоединились… Как раз отличное время поспать после обеденного перерыва (регламентированное время около часа – как раз выспитесь… ) Почему именно об ХСС 1) атака, которая помогла нам провернуть взлом в нашем первом проекте 2) на первый взгляд она кажется плевой задачкой, однако копнув глубже, понимаешь – не все так просто…. 3) XSS – весьма специфическая атака требующая выполнения определенных условий 3) ну и количество веб-приложений (сайтов), уязвимых к этой атаке пугающе велико…
  • #3: Trustware – одна из компаний-лидеров на рынке безопасности ИТ. Имеет громадное количество клиентов, как в гос секторах, военных организациях, так и в коммерческом секторе. Только за прошлый год – около 9 млн проверенных вэб приложений и 2 млн. сетей. WhiteHat Secotury – Калифорнийская компания, организована в 2001м, около 600 клиентов в США (финансовый сектор, банки страхование) Сenzic – секурити компания, которая обслуживает практически все компании из списка Fortune 1000 companies (AT&T, Apple, Wal-Mart Stores, General Motors…) C 2014 – часть Trustware OWASP – международное сообщество
  • #4: Х поставили, чтобы не путать название атаки с технологией CSS Почему атака – потому что один и тот же код уязвим к разным типам атак
  • #9: В чем суть? 1) из далека - HTML в браузере представляется как раз в виде ДОМ 2) из JavaScript есть возможность манипулирования структурой и данными 3) А раз так, то иногда, когда не ведется фильтрация данных, мы, модифицируя ДОМ сайта можем добиться выполнение JavaScripta в контексте уязвимого сайта