SlideShare a Scribd company logo
1 of 12
ОТ ПРОСТОГО
К СЛОЖНОМУ
- 82% web-приложений
уязвимы к XSS (2013)
Коротенько о фактах
- 7 из 10 web-приложений
уязвимы к XSS (2014)
- 60% web-приложений
уязвимы к XSS (2013)
- №3 в OWASP TOP-10
(2013)
• Что такое XSS
• XSS – Cross-Site Scripting
• Атака на пользователя уязвимого web-приложения
Поприветствуйте – XSS!
• Цель
• Выполнить код (JavaScript) в браузере «жертвы» в контексте уязвимого
приложения
Так как же оно работает?
Ссылка со скрытым кодом
WWW.SUPERBANK.ORG
• По вектору
- Отраженные либо пассивные XSS (Type 1)
- Сохраненные или активные XSS (Type 2)
- DOM XSS (Type 0)
Типы XSS
• По каналам внедрения
- Ошибки в браузерах
- Отсутствие проверки вводимых данных
- Подмена кодировки страницы
WWW.SUPERBANK.ORG
Пассивная XSS
Login
*******
www.malicious.com
Жертва загружает
скрипт с сайта
WWW.SUPERBANK.ORG
Активная XSS
Login
*******
www.malicious.com
Открывает страницу на
которой отображается
контент уязвимого поля
Сохраняет «активный
контент»
В уязвимом поле
• Web-страницы изменяющие DOM (Document Object Model)
• Тяжело обнаружить
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- приложению
- Потеря репутации
Как XSS может быть использована
• Кража данных из форм
- Кража персональных данных
- Неавторизированный доступ к web-приложению
- Потеря репутации
• DDoS-атаки
- Потеря репутации
• XSS-черви
- Кража персональных данных
- Неавторизированный доступ к web- приложению
- Потеря репутации
XENOTIX
- Проект OWASP
- Активно разрабатывается
- Много-браузерное тестирование
- Много-много всего...
- Freeware
Чем искать?
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)
Как предотвратить?
• Проверка на стороне клиента
– Использование различных модулей для браузеров (NoScript для FireFox and NotScripts
Opera для Chrome)
Спасибо за внимание 

More Related Content

What's hot

Выбор CMS для вашего сайта
Выбор CMS для вашего сайтаВыбор CMS для вашего сайта
Выбор CMS для вашего сайтаAstra Media Group, Russia
 
Бекэнд для push-уведомлений своими руками
Бекэнд для push-уведомлений своими рукамиБекэнд для push-уведомлений своими руками
Бекэнд для push-уведомлений своими рукамиAlexandr Mikhaylenko
 
Грабли в продвижении сайтов - КИМ, 22 сентября 2012
Грабли в продвижении сайтов - КИМ, 22 сентября 2012Грабли в продвижении сайтов - КИМ, 22 сентября 2012
Грабли в продвижении сайтов - КИМ, 22 сентября 2012Сергей Кокшаров
 
Chrome push notifications. Анатомия и разработка
Chrome push notifications. Анатомия и разработкаChrome push notifications. Анатомия и разработка
Chrome push notifications. Анатомия и разработкаAlexandr Mikhaylenko
 
Отказоустойчивость веб-проекта: мониторинг, резервирование, обслуживание
Отказоустойчивость веб-проекта: мониторинг, резервирование, обслуживаниеОтказоустойчивость веб-проекта: мониторинг, резервирование, обслуживание
Отказоустойчивость веб-проекта: мониторинг, резервирование, обслуживание1С-Битрикс
 
Оптимизация скорости сайта без использования AMP | Odessa Frontend Meetup #10
Оптимизация скорости сайта без использования AMP | Odessa Frontend Meetup #10Оптимизация скорости сайта без использования AMP | Odessa Frontend Meetup #10
Оптимизация скорости сайта без использования AMP | Odessa Frontend Meetup #10OdessaFrontend
 
Подготовка интернет-магазина к боевым условиям
Подготовка интернет-магазина к боевым условиямПодготовка интернет-магазина к боевым условиям
Подготовка интернет-магазина к боевым условиямAnton Baranov
 
Урок 7. Сайты отзывов
Урок 7. Сайты отзывовУрок 7. Сайты отзывов
Урок 7. Сайты отзывовLink-Stream
 
Безопасность WordPress
Безопасность WordPress Безопасность WordPress
Безопасность WordPress Dmitry Kondryuk
 
Инструменты видео-рекламы
Инструменты  видео-рекламыИнструменты  видео-рекламы
Инструменты видео-рекламыweb2win
 
Kazoomeetup 2015 - Building your very own Kazoo UI
Kazoomeetup 2015 - Building your very own Kazoo UIKazoomeetup 2015 - Building your very own Kazoo UI
Kazoomeetup 2015 - Building your very own Kazoo UIKirill Sysoev
 
Drupal и мобильные устройства комелин константин
Drupal и мобильные устройства комелин константинDrupal и мобильные устройства комелин константин
Drupal и мобильные устройства комелин константинdrupalconf
 
Drupal и мобильные устройства
Drupal и мобильные устройстваDrupal и мобильные устройства
Drupal и мобильные устройстваKonstantin Komelin
 
ярослав рабоволюк
ярослав рабоволюкярослав рабоволюк
ярослав рабоволюкkuchinskaya
 

What's hot (19)

Выбор CMS для вашего сайта
Выбор CMS для вашего сайтаВыбор CMS для вашего сайта
Выбор CMS для вашего сайта
 
Coding for iPhone
Coding for iPhoneCoding for iPhone
Coding for iPhone
 
Бекэнд для push-уведомлений своими руками
Бекэнд для push-уведомлений своими рукамиБекэнд для push-уведомлений своими руками
Бекэнд для push-уведомлений своими руками
 
Сколько стоят хорошие сайты
Сколько стоят хорошие сайтыСколько стоят хорошие сайты
Сколько стоят хорошие сайты
 
Грабли в продвижении сайтов - КИМ, 22 сентября 2012
Грабли в продвижении сайтов - КИМ, 22 сентября 2012Грабли в продвижении сайтов - КИМ, 22 сентября 2012
Грабли в продвижении сайтов - КИМ, 22 сентября 2012
 
Chrome push notifications. Анатомия и разработка
Chrome push notifications. Анатомия и разработкаChrome push notifications. Анатомия и разработка
Chrome push notifications. Анатомия и разработка
 
Отказоустойчивость веб-проекта: мониторинг, резервирование, обслуживание
Отказоустойчивость веб-проекта: мониторинг, резервирование, обслуживаниеОтказоустойчивость веб-проекта: мониторинг, резервирование, обслуживание
Отказоустойчивость веб-проекта: мониторинг, резервирование, обслуживание
 
Оптимизация скорости сайта без использования AMP | Odessa Frontend Meetup #10
Оптимизация скорости сайта без использования AMP | Odessa Frontend Meetup #10Оптимизация скорости сайта без использования AMP | Odessa Frontend Meetup #10
Оптимизация скорости сайта без использования AMP | Odessa Frontend Meetup #10
 
Coding monday
Coding mondayCoding monday
Coding monday
 
Подготовка интернет-магазина к боевым условиям
Подготовка интернет-магазина к боевым условиямПодготовка интернет-магазина к боевым условиям
Подготовка интернет-магазина к боевым условиям
 
Защита
ЗащитаЗащита
Защита
 
Урок 7. Сайты отзывов
Урок 7. Сайты отзывовУрок 7. Сайты отзывов
Урок 7. Сайты отзывов
 
Безопасность WordPress
Безопасность WordPress Безопасность WordPress
Безопасность WordPress
 
Инструменты видео-рекламы
Инструменты  видео-рекламыИнструменты  видео-рекламы
Инструменты видео-рекламы
 
Безопасный сайт
Безопасный сайтБезопасный сайт
Безопасный сайт
 
Kazoomeetup 2015 - Building your very own Kazoo UI
Kazoomeetup 2015 - Building your very own Kazoo UIKazoomeetup 2015 - Building your very own Kazoo UI
Kazoomeetup 2015 - Building your very own Kazoo UI
 
Drupal и мобильные устройства комелин константин
Drupal и мобильные устройства комелин константинDrupal и мобильные устройства комелин константин
Drupal и мобильные устройства комелин константин
 
Drupal и мобильные устройства
Drupal и мобильные устройстваDrupal и мобильные устройства
Drupal и мобильные устройства
 
ярослав рабоволюк
ярослав рабоволюкярослав рабоволюк
ярослав рабоволюк
 

Similar to QA Fest 2015. Юрий Федько. XSS - от простого к сложному!

А не поговорить ли нам о XSS!
А не поговорить ли нам о XSS!А не поговорить ли нам о XSS!
А не поговорить ли нам о XSS!SQALab
 
Risspa domxss
Risspa domxssRisspa domxss
Risspa domxssyaevents
 
Почему хакеры выбирают WordPress. WordCamp 2017, Moscow.
Почему хакеры выбирают WordPress. WordCamp 2017, Moscow.Почему хакеры выбирают WordPress. WordCamp 2017, Moscow.
Почему хакеры выбирают WordPress. WordCamp 2017, Moscow.revisium
 
Безопасность Joomla: мифы и реальность
Безопасность Joomla: мифы и реальностьБезопасность Joomla: мифы и реальность
Безопасность Joomla: мифы и реальностьrevisium
 
Максим Кочкин (Wamba)
Максим Кочкин (Wamba)Максим Кочкин (Wamba)
Максим Кочкин (Wamba)Ontico
 
Web application security (RIT 2014, rus)
Web application security (RIT 2014, rus)Web application security (RIT 2014, rus)
Web application security (RIT 2014, rus)Maksim Kochkin
 
Svyatoslav Login
Svyatoslav LoginSvyatoslav Login
Svyatoslav LoginDakiry
 
Информационная безопасность в аспекте веб-разработки
Информационная безопасность в аспекте веб-разработкиИнформационная безопасность в аспекте веб-разработки
Информационная безопасность в аспекте веб-разработкиE-Journal ICT4D
 
Эшелонированная оборона 2012
Эшелонированная оборона 2012Эшелонированная оборона 2012
Эшелонированная оборона 2012Alexander Dorofeev
 
Анализ защищенности интернет-проектов
Анализ защищенности интернет-проектовАнализ защищенности интернет-проектов
Анализ защищенности интернет-проектовDmitry Evteev
 
Александр Сидоров "Как защитить пользователей от вирусов и фишинга"
Александр Сидоров "Как защитить пользователей от вирусов и фишинга"Александр Сидоров "Как защитить пользователей от вирусов и фишинга"
Александр Сидоров "Как защитить пользователей от вирусов и фишинга"Yandex
 
Node.js Меньше сложности, больше надежности Holy.js 2021
Node.js Меньше сложности, больше надежности Holy.js 2021Node.js Меньше сложности, больше надежности Holy.js 2021
Node.js Меньше сложности, больше надежности Holy.js 2021Timur Shemsedinov
 
как не заразить посетителей своего сайта All а.сидоров, п.волков
как не заразить посетителей своего сайта All   а.сидоров, п.волковкак не заразить посетителей своего сайта All   а.сидоров, п.волков
как не заразить посетителей своего сайта All а.сидоров, п.волковOntico
 
CSRF-уязвимости все еще актуальны: как атакующие обходят CSRF-защиту в вашем ...
CSRF-уязвимости все еще актуальны: как атакующие обходят CSRF-защиту в вашем ...CSRF-уязвимости все еще актуальны: как атакующие обходят CSRF-защиту в вашем ...
CSRF-уязвимости все еще актуальны: как атакующие обходят CSRF-защиту в вашем ...Mikhail Egorov
 
CSRF-уязвимости все еще актуальны: как атакующие обходят CSRF-защиту в вашем ...
CSRF-уязвимости все еще актуальны: как атакующие обходят CSRF-защиту в вашем ...CSRF-уязвимости все еще актуальны: как атакующие обходят CSRF-защиту в вашем ...
CSRF-уязвимости все еще актуальны: как атакующие обходят CSRF-защиту в вашем ...Ontico
 
Эволюция атак на веб приложения (Evolution of web applications attacks)
Эволюция атак на веб приложения (Evolution of web applications attacks)Эволюция атак на веб приложения (Evolution of web applications attacks)
Эволюция атак на веб приложения (Evolution of web applications attacks)c3retc3
 
Современный агрессивный интернет
Современный агрессивный интернетСовременный агрессивный интернет
Современный агрессивный интернетrevisium
 
Sergey Gordeychik SQADays 2008
Sergey Gordeychik SQADays 2008Sergey Gordeychik SQADays 2008
Sergey Gordeychik SQADays 2008guest5b66888
 
Оценка защищенности Web-приложений
Оценка защищенности Web-приложенийОценка защищенности Web-приложений
Оценка защищенности Web-приложенийSQALab
 
Популярні способи зломів та шахрайські схеми
Популярні способи зломів та шахрайські схемиПопулярні способи зломів та шахрайські схеми
Популярні способи зломів та шахрайські схемиAvivi Academy
 

Similar to QA Fest 2015. Юрий Федько. XSS - от простого к сложному! (20)

А не поговорить ли нам о XSS!
А не поговорить ли нам о XSS!А не поговорить ли нам о XSS!
А не поговорить ли нам о XSS!
 
Risspa domxss
Risspa domxssRisspa domxss
Risspa domxss
 
Почему хакеры выбирают WordPress. WordCamp 2017, Moscow.
Почему хакеры выбирают WordPress. WordCamp 2017, Moscow.Почему хакеры выбирают WordPress. WordCamp 2017, Moscow.
Почему хакеры выбирают WordPress. WordCamp 2017, Moscow.
 
Безопасность Joomla: мифы и реальность
Безопасность Joomla: мифы и реальностьБезопасность Joomla: мифы и реальность
Безопасность Joomla: мифы и реальность
 
Максим Кочкин (Wamba)
Максим Кочкин (Wamba)Максим Кочкин (Wamba)
Максим Кочкин (Wamba)
 
Web application security (RIT 2014, rus)
Web application security (RIT 2014, rus)Web application security (RIT 2014, rus)
Web application security (RIT 2014, rus)
 
Svyatoslav Login
Svyatoslav LoginSvyatoslav Login
Svyatoslav Login
 
Информационная безопасность в аспекте веб-разработки
Информационная безопасность в аспекте веб-разработкиИнформационная безопасность в аспекте веб-разработки
Информационная безопасность в аспекте веб-разработки
 
Эшелонированная оборона 2012
Эшелонированная оборона 2012Эшелонированная оборона 2012
Эшелонированная оборона 2012
 
Анализ защищенности интернет-проектов
Анализ защищенности интернет-проектовАнализ защищенности интернет-проектов
Анализ защищенности интернет-проектов
 
Александр Сидоров "Как защитить пользователей от вирусов и фишинга"
Александр Сидоров "Как защитить пользователей от вирусов и фишинга"Александр Сидоров "Как защитить пользователей от вирусов и фишинга"
Александр Сидоров "Как защитить пользователей от вирусов и фишинга"
 
Node.js Меньше сложности, больше надежности Holy.js 2021
Node.js Меньше сложности, больше надежности Holy.js 2021Node.js Меньше сложности, больше надежности Holy.js 2021
Node.js Меньше сложности, больше надежности Holy.js 2021
 
как не заразить посетителей своего сайта All а.сидоров, п.волков
как не заразить посетителей своего сайта All   а.сидоров, п.волковкак не заразить посетителей своего сайта All   а.сидоров, п.волков
как не заразить посетителей своего сайта All а.сидоров, п.волков
 
CSRF-уязвимости все еще актуальны: как атакующие обходят CSRF-защиту в вашем ...
CSRF-уязвимости все еще актуальны: как атакующие обходят CSRF-защиту в вашем ...CSRF-уязвимости все еще актуальны: как атакующие обходят CSRF-защиту в вашем ...
CSRF-уязвимости все еще актуальны: как атакующие обходят CSRF-защиту в вашем ...
 
CSRF-уязвимости все еще актуальны: как атакующие обходят CSRF-защиту в вашем ...
CSRF-уязвимости все еще актуальны: как атакующие обходят CSRF-защиту в вашем ...CSRF-уязвимости все еще актуальны: как атакующие обходят CSRF-защиту в вашем ...
CSRF-уязвимости все еще актуальны: как атакующие обходят CSRF-защиту в вашем ...
 
Эволюция атак на веб приложения (Evolution of web applications attacks)
Эволюция атак на веб приложения (Evolution of web applications attacks)Эволюция атак на веб приложения (Evolution of web applications attacks)
Эволюция атак на веб приложения (Evolution of web applications attacks)
 
Современный агрессивный интернет
Современный агрессивный интернетСовременный агрессивный интернет
Современный агрессивный интернет
 
Sergey Gordeychik SQADays 2008
Sergey Gordeychik SQADays 2008Sergey Gordeychik SQADays 2008
Sergey Gordeychik SQADays 2008
 
Оценка защищенности Web-приложений
Оценка защищенности Web-приложенийОценка защищенности Web-приложений
Оценка защищенности Web-приложений
 
Популярні способи зломів та шахрайські схеми
Популярні способи зломів та шахрайські схемиПопулярні способи зломів та шахрайські схеми
Популярні способи зломів та шахрайські схеми
 

More from QAFest

QA Fest 2019. Сергій Короленко. Топ веб вразливостей за 40 хвилин
QA Fest 2019. Сергій Короленко. Топ веб вразливостей за 40 хвилинQA Fest 2019. Сергій Короленко. Топ веб вразливостей за 40 хвилин
QA Fest 2019. Сергій Короленко. Топ веб вразливостей за 40 хвилинQAFest
 
QA Fest 2019. Анна Чернышова. Self-healing test automation 2.0. The Future
QA Fest 2019. Анна Чернышова. Self-healing test automation 2.0. The FutureQA Fest 2019. Анна Чернышова. Self-healing test automation 2.0. The Future
QA Fest 2019. Анна Чернышова. Self-healing test automation 2.0. The FutureQAFest
 
QA Fest 2019. Doug Sillars. It's just too Slow: Testing Mobile application pe...
QA Fest 2019. Doug Sillars. It's just too Slow: Testing Mobile application pe...QA Fest 2019. Doug Sillars. It's just too Slow: Testing Mobile application pe...
QA Fest 2019. Doug Sillars. It's just too Slow: Testing Mobile application pe...QAFest
 
QA Fest 2019. Катерина Спринсян. Параллельное покрытие автотестами и другие и...
QA Fest 2019. Катерина Спринсян. Параллельное покрытие автотестами и другие и...QA Fest 2019. Катерина Спринсян. Параллельное покрытие автотестами и другие и...
QA Fest 2019. Катерина Спринсян. Параллельное покрытие автотестами и другие и...QAFest
 
QA Fest 2019. Никита Галкин. Как зарабатывать больше
QA Fest 2019. Никита Галкин. Как зарабатывать большеQA Fest 2019. Никита Галкин. Как зарабатывать больше
QA Fest 2019. Никита Галкин. Как зарабатывать большеQAFest
 
QA Fest 2019. Сергей Пирогов. Why everything is spoiled
QA Fest 2019. Сергей Пирогов. Why everything is spoiledQA Fest 2019. Сергей Пирогов. Why everything is spoiled
QA Fest 2019. Сергей Пирогов. Why everything is spoiledQAFest
 
QA Fest 2019. Сергей Новик. Между мотивацией и выгоранием
QA Fest 2019. Сергей Новик. Между мотивацией и выгораниемQA Fest 2019. Сергей Новик. Между мотивацией и выгоранием
QA Fest 2019. Сергей Новик. Между мотивацией и выгораниемQAFest
 
QA Fest 2019. Владимир Никонов. Код Шредингера или зачем и как мы тестируем н...
QA Fest 2019. Владимир Никонов. Код Шредингера или зачем и как мы тестируем н...QA Fest 2019. Владимир Никонов. Код Шредингера или зачем и как мы тестируем н...
QA Fest 2019. Владимир Никонов. Код Шредингера или зачем и как мы тестируем н...QAFest
 
QA Fest 2019. Владимир Трандафилов. GUI automation of WEB application with SV...
QA Fest 2019. Владимир Трандафилов. GUI automation of WEB application with SV...QA Fest 2019. Владимир Трандафилов. GUI automation of WEB application with SV...
QA Fest 2019. Владимир Трандафилов. GUI automation of WEB application with SV...QAFest
 
QA Fest 2019. Иван Крутов. Bulletproof Selenium Cluster
QA Fest 2019. Иван Крутов. Bulletproof Selenium ClusterQA Fest 2019. Иван Крутов. Bulletproof Selenium Cluster
QA Fest 2019. Иван Крутов. Bulletproof Selenium ClusterQAFest
 
QA Fest 2019. Николай Мижигурский. Миссия /*не*/выполнима: гуманитарий собесе...
QA Fest 2019. Николай Мижигурский. Миссия /*не*/выполнима: гуманитарий собесе...QA Fest 2019. Николай Мижигурский. Миссия /*не*/выполнима: гуманитарий собесе...
QA Fest 2019. Николай Мижигурский. Миссия /*не*/выполнима: гуманитарий собесе...QAFest
 
QA Fest 2019. Володимир Стиран. Чим раніше – тим вигідніше, але ніколи не піз...
QA Fest 2019. Володимир Стиран. Чим раніше – тим вигідніше, але ніколи не піз...QA Fest 2019. Володимир Стиран. Чим раніше – тим вигідніше, але ніколи не піз...
QA Fest 2019. Володимир Стиран. Чим раніше – тим вигідніше, але ніколи не піз...QAFest
 
QA Fest 2019. Дмитрий Прокопук. Mocks and network tricks in UI automation
QA Fest 2019. Дмитрий Прокопук. Mocks and network tricks in UI automationQA Fest 2019. Дмитрий Прокопук. Mocks and network tricks in UI automation
QA Fest 2019. Дмитрий Прокопук. Mocks and network tricks in UI automationQAFest
 
QA Fest 2019. Екатерина Дядечко. Тестирование медицинского софта — вызовы и в...
QA Fest 2019. Екатерина Дядечко. Тестирование медицинского софта — вызовы и в...QA Fest 2019. Екатерина Дядечко. Тестирование медицинского софта — вызовы и в...
QA Fest 2019. Екатерина Дядечко. Тестирование медицинского софта — вызовы и в...QAFest
 
QA Fest 2019. Катерина Черникова. Tune your P’s: the pop-art of keeping testa...
QA Fest 2019. Катерина Черникова. Tune your P’s: the pop-art of keeping testa...QA Fest 2019. Катерина Черникова. Tune your P’s: the pop-art of keeping testa...
QA Fest 2019. Катерина Черникова. Tune your P’s: the pop-art of keeping testa...QAFest
 
QA Fest 2019. Алиса Бойко. Какнезапутаться в коммуникативных сетях IT
QA Fest 2019. Алиса Бойко. Какнезапутаться в коммуникативных сетях ITQA Fest 2019. Алиса Бойко. Какнезапутаться в коммуникативных сетях IT
QA Fest 2019. Алиса Бойко. Какнезапутаться в коммуникативных сетях ITQAFest
 
QA Fest 2019. Святослав Логин. Как найти уязвимости в мобильном приложении
QA Fest 2019. Святослав Логин. Как найти уязвимости в мобильном приложенииQA Fest 2019. Святослав Логин. Как найти уязвимости в мобильном приложении
QA Fest 2019. Святослав Логин. Как найти уязвимости в мобильном приложенииQAFest
 
QA Fest 2019. Катерина Шепелєва та Інна Оснач. Що українцям потрібно знати пр...
QA Fest 2019. Катерина Шепелєва та Інна Оснач. Що українцям потрібно знати пр...QA Fest 2019. Катерина Шепелєва та Інна Оснач. Що українцям потрібно знати пр...
QA Fest 2019. Катерина Шепелєва та Інна Оснач. Що українцям потрібно знати пр...QAFest
 
QA Fest 2019. Антон Серпутько. Нагрузочное тестирование распределенных асинхр...
QA Fest 2019. Антон Серпутько. Нагрузочное тестирование распределенных асинхр...QA Fest 2019. Антон Серпутько. Нагрузочное тестирование распределенных асинхр...
QA Fest 2019. Антон Серпутько. Нагрузочное тестирование распределенных асинхр...QAFest
 
QA Fest 2019. Петр Тарасенко. QA Hackathon - The Cookbook 22
QA Fest 2019. Петр Тарасенко. QA Hackathon - The Cookbook 22QA Fest 2019. Петр Тарасенко. QA Hackathon - The Cookbook 22
QA Fest 2019. Петр Тарасенко. QA Hackathon - The Cookbook 22QAFest
 

More from QAFest (20)

QA Fest 2019. Сергій Короленко. Топ веб вразливостей за 40 хвилин
QA Fest 2019. Сергій Короленко. Топ веб вразливостей за 40 хвилинQA Fest 2019. Сергій Короленко. Топ веб вразливостей за 40 хвилин
QA Fest 2019. Сергій Короленко. Топ веб вразливостей за 40 хвилин
 
QA Fest 2019. Анна Чернышова. Self-healing test automation 2.0. The Future
QA Fest 2019. Анна Чернышова. Self-healing test automation 2.0. The FutureQA Fest 2019. Анна Чернышова. Self-healing test automation 2.0. The Future
QA Fest 2019. Анна Чернышова. Self-healing test automation 2.0. The Future
 
QA Fest 2019. Doug Sillars. It's just too Slow: Testing Mobile application pe...
QA Fest 2019. Doug Sillars. It's just too Slow: Testing Mobile application pe...QA Fest 2019. Doug Sillars. It's just too Slow: Testing Mobile application pe...
QA Fest 2019. Doug Sillars. It's just too Slow: Testing Mobile application pe...
 
QA Fest 2019. Катерина Спринсян. Параллельное покрытие автотестами и другие и...
QA Fest 2019. Катерина Спринсян. Параллельное покрытие автотестами и другие и...QA Fest 2019. Катерина Спринсян. Параллельное покрытие автотестами и другие и...
QA Fest 2019. Катерина Спринсян. Параллельное покрытие автотестами и другие и...
 
QA Fest 2019. Никита Галкин. Как зарабатывать больше
QA Fest 2019. Никита Галкин. Как зарабатывать большеQA Fest 2019. Никита Галкин. Как зарабатывать больше
QA Fest 2019. Никита Галкин. Как зарабатывать больше
 
QA Fest 2019. Сергей Пирогов. Why everything is spoiled
QA Fest 2019. Сергей Пирогов. Why everything is spoiledQA Fest 2019. Сергей Пирогов. Why everything is spoiled
QA Fest 2019. Сергей Пирогов. Why everything is spoiled
 
QA Fest 2019. Сергей Новик. Между мотивацией и выгоранием
QA Fest 2019. Сергей Новик. Между мотивацией и выгораниемQA Fest 2019. Сергей Новик. Между мотивацией и выгоранием
QA Fest 2019. Сергей Новик. Между мотивацией и выгоранием
 
QA Fest 2019. Владимир Никонов. Код Шредингера или зачем и как мы тестируем н...
QA Fest 2019. Владимир Никонов. Код Шредингера или зачем и как мы тестируем н...QA Fest 2019. Владимир Никонов. Код Шредингера или зачем и как мы тестируем н...
QA Fest 2019. Владимир Никонов. Код Шредингера или зачем и как мы тестируем н...
 
QA Fest 2019. Владимир Трандафилов. GUI automation of WEB application with SV...
QA Fest 2019. Владимир Трандафилов. GUI automation of WEB application with SV...QA Fest 2019. Владимир Трандафилов. GUI automation of WEB application with SV...
QA Fest 2019. Владимир Трандафилов. GUI automation of WEB application with SV...
 
QA Fest 2019. Иван Крутов. Bulletproof Selenium Cluster
QA Fest 2019. Иван Крутов. Bulletproof Selenium ClusterQA Fest 2019. Иван Крутов. Bulletproof Selenium Cluster
QA Fest 2019. Иван Крутов. Bulletproof Selenium Cluster
 
QA Fest 2019. Николай Мижигурский. Миссия /*не*/выполнима: гуманитарий собесе...
QA Fest 2019. Николай Мижигурский. Миссия /*не*/выполнима: гуманитарий собесе...QA Fest 2019. Николай Мижигурский. Миссия /*не*/выполнима: гуманитарий собесе...
QA Fest 2019. Николай Мижигурский. Миссия /*не*/выполнима: гуманитарий собесе...
 
QA Fest 2019. Володимир Стиран. Чим раніше – тим вигідніше, але ніколи не піз...
QA Fest 2019. Володимир Стиран. Чим раніше – тим вигідніше, але ніколи не піз...QA Fest 2019. Володимир Стиран. Чим раніше – тим вигідніше, але ніколи не піз...
QA Fest 2019. Володимир Стиран. Чим раніше – тим вигідніше, але ніколи не піз...
 
QA Fest 2019. Дмитрий Прокопук. Mocks and network tricks in UI automation
QA Fest 2019. Дмитрий Прокопук. Mocks and network tricks in UI automationQA Fest 2019. Дмитрий Прокопук. Mocks and network tricks in UI automation
QA Fest 2019. Дмитрий Прокопук. Mocks and network tricks in UI automation
 
QA Fest 2019. Екатерина Дядечко. Тестирование медицинского софта — вызовы и в...
QA Fest 2019. Екатерина Дядечко. Тестирование медицинского софта — вызовы и в...QA Fest 2019. Екатерина Дядечко. Тестирование медицинского софта — вызовы и в...
QA Fest 2019. Екатерина Дядечко. Тестирование медицинского софта — вызовы и в...
 
QA Fest 2019. Катерина Черникова. Tune your P’s: the pop-art of keeping testa...
QA Fest 2019. Катерина Черникова. Tune your P’s: the pop-art of keeping testa...QA Fest 2019. Катерина Черникова. Tune your P’s: the pop-art of keeping testa...
QA Fest 2019. Катерина Черникова. Tune your P’s: the pop-art of keeping testa...
 
QA Fest 2019. Алиса Бойко. Какнезапутаться в коммуникативных сетях IT
QA Fest 2019. Алиса Бойко. Какнезапутаться в коммуникативных сетях ITQA Fest 2019. Алиса Бойко. Какнезапутаться в коммуникативных сетях IT
QA Fest 2019. Алиса Бойко. Какнезапутаться в коммуникативных сетях IT
 
QA Fest 2019. Святослав Логин. Как найти уязвимости в мобильном приложении
QA Fest 2019. Святослав Логин. Как найти уязвимости в мобильном приложенииQA Fest 2019. Святослав Логин. Как найти уязвимости в мобильном приложении
QA Fest 2019. Святослав Логин. Как найти уязвимости в мобильном приложении
 
QA Fest 2019. Катерина Шепелєва та Інна Оснач. Що українцям потрібно знати пр...
QA Fest 2019. Катерина Шепелєва та Інна Оснач. Що українцям потрібно знати пр...QA Fest 2019. Катерина Шепелєва та Інна Оснач. Що українцям потрібно знати пр...
QA Fest 2019. Катерина Шепелєва та Інна Оснач. Що українцям потрібно знати пр...
 
QA Fest 2019. Антон Серпутько. Нагрузочное тестирование распределенных асинхр...
QA Fest 2019. Антон Серпутько. Нагрузочное тестирование распределенных асинхр...QA Fest 2019. Антон Серпутько. Нагрузочное тестирование распределенных асинхр...
QA Fest 2019. Антон Серпутько. Нагрузочное тестирование распределенных асинхр...
 
QA Fest 2019. Петр Тарасенко. QA Hackathon - The Cookbook 22
QA Fest 2019. Петр Тарасенко. QA Hackathon - The Cookbook 22QA Fest 2019. Петр Тарасенко. QA Hackathon - The Cookbook 22
QA Fest 2019. Петр Тарасенко. QA Hackathon - The Cookbook 22
 

QA Fest 2015. Юрий Федько. XSS - от простого к сложному!

  • 2. - 82% web-приложений уязвимы к XSS (2013) Коротенько о фактах - 7 из 10 web-приложений уязвимы к XSS (2014) - 60% web-приложений уязвимы к XSS (2013) - №3 в OWASP TOP-10 (2013)
  • 3. • Что такое XSS • XSS – Cross-Site Scripting • Атака на пользователя уязвимого web-приложения Поприветствуйте – XSS! • Цель • Выполнить код (JavaScript) в браузере «жертвы» в контексте уязвимого приложения
  • 4. Так как же оно работает? Ссылка со скрытым кодом WWW.SUPERBANK.ORG
  • 5. • По вектору - Отраженные либо пассивные XSS (Type 1) - Сохраненные или активные XSS (Type 2) - DOM XSS (Type 0) Типы XSS • По каналам внедрения - Ошибки в браузерах - Отсутствие проверки вводимых данных - Подмена кодировки страницы
  • 7. WWW.SUPERBANK.ORG Активная XSS Login ******* www.malicious.com Открывает страницу на которой отображается контент уязвимого поля Сохраняет «активный контент» В уязвимом поле
  • 8. • Web-страницы изменяющие DOM (Document Object Model) • Тяжело обнаружить 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- приложению - Потеря репутации Как XSS может быть использована • Кража данных из форм - Кража персональных данных - Неавторизированный доступ к web-приложению - Потеря репутации • DDoS-атаки - Потеря репутации • XSS-черви - Кража персональных данных - Неавторизированный доступ к web- приложению - Потеря репутации
  • 10. XENOTIX - Проект OWASP - Активно разрабатывается - Много-браузерное тестирование - Много-много всего... - Freeware Чем искать? 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) Как предотвратить? • Проверка на стороне клиента – Использование различных модулей для браузеров (NoScript для FireFox and NotScripts Opera для Chrome)

Editor's Notes

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