Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Повышаем защищенность приложений от XSS

Sponsored · Your Podcast. Everywhere. Effortlessly. Share. Educate. Inspire. Entertain. You do you. We'll handle the rest. →

Повышаем защищенность приложений от XSS

Веб развивается стремительно, однако не так стремительно закрываются проблемы, присущие веб-приложениям. Одной из таких является XSS (Cross-Site scripting), занимающий 7 строчку в OWASP-10 2017. На этом докладе мы поговорим о том, в чем именно заключается эта уязвимость, как ее эксплуатировать и какими способами можно от нее защищаться.

Avatar for Viacheslav

Viacheslav

June 28, 2018

Other Decks in Programming

Transcript

  1. XSS: cross-site scripting Атака, направленная на пользователя Через исполнение произвольного

    JavaScript кода в браузере Различные векторы атаки: аттрибуты html элементов, script тэг в документе, асихронная загрузка сценариев, ... • • •
  2. А что опасного? Кража пользовательских данных Угон учетной записи Произвольные

    действия от имени пользователя Перенаправление на вредоносный ресурс Шпионаж за пользователем Clickjacking • • • • • •
  3. И крупные игроки тоже под угрозой Google: maps (реверс-инжиниринг формата

    сообщений protocols buffer) Facebook: мобильный сайт (параметр cancel_url в url не был экранирован) Valve: steam • • •
  4. Варианты защиты Использовать шаблонизатор с контекстным экранированием (style, script, content)

    Экранирование выводимых данных, если шаблонизатор недоступен Экранирование разметки при использовании innerHTML Важные данные, хранимые в cookie, должны быть помечены флагом HttpOnly Никогда не доверять пользовательскому вводу • • • • •
  5. В дополнение к ним Строгая настройка политики безопасности контента Хранение

    текстов в виде конвертируемого в html формата (markdown, deltas, и т.д.) Отключение JavaScript, если приемлемо • • •