Плюсы

advertisement
БЕЗОПАСНОСТЬ ВЕБ-ПРИЛОЖЕНИЙ 101
ИЛИ ВВЕДЕНИЕ ДЛЯ НЕ ИБ-СПЕЦИАЛИСТОВ
ДЕНИС БЕЗКОРОВАЙНЫЙ, CISSP, CISA, CCSK
О ЧЕМ ПОЙДЕТ РЕЧЬ
От чего стоит защищаться
Аудит безопасности веб-приложения — что выбрать?
Системы активной защиты веб-приложений
Мониторинг безопасности и выявление атак
DISCLAIMER
Сканирование ВСЕХ
IPv4-адресов занимает 5
минут
ОТ ЧЕГО СТОИТ ЗАЩИЩАТЬСЯ
Массовые взломы
Автоматизированные сканеры
Уязвимые конфигурации
Бот-трафик
Цель – заражение пользователей
или захват площадок
Точечные целевые атаки
Выбор цели и ручное управление атакой
Цель – кража данных или финансовая выгода
DDOS
Прямое вымогательство
Конкурентные преимущества
АТАКИ ПРИКЛАДНОГО
УРОВНЯ
XSS
SQLi
CSRF
RFI и др. OWASP Top-10
Атаки на SSL
Переборы паролей пользователей
Атаки на администраторов
1.
2.
3.
WhiteHat Security Website Security Statistics Report 2015
Accunetix Web Application Vulnerability Report 2015
HPE Security Research Cyber Risk Report 2016
АТАКИ НА ДОСТУПНОСТЬ
Канальные и сетевые атаки (L2-L3)
– забивают канал до оборудования
Атаки на протоколы и оборудование (L4)
– выводят из строя роутеры, серверы, балансировщики
Атаки прикладного уровня
– парализуют веб-приложение
Атаки на DNS-инфраструктуру
АУДИТ БЕЗОПАСНОСТИ ВЕБ-ПРИЛОЖЕНИЙ
Hack yourself first
Даже если вы используете коробочные
продукты
Статический
(SAST)
Как проводить
Своя команда – нужны экспертиза, навыки,
время (+конфликт интересов)
Аудит
безопасности
Динамический
(DAST)
Аутсорсеры, проектная или постоянная работа
Совмещение – внутренний и внешний аудит
Bug Bounty
IAST
СТАТИЧЕСКИЙ АНАЛИЗ БЕЗОПАСНОСТИ
ПРИЛОЖЕНИЯ (SAST)
Тестирование «изнутри наружу» - анализ исходных кодов приложения с
помощью паттернов и алгоритмов, детектирующих потенциальные
уязвимости.
Плюсы
Возможность встроить безопасность в SDLC на раннем этапе
Нет необходимости наличия работающей системы (тестирование модулей)
Позволяет находить сложные уязвимости (non-reflected) и бэкдоры разработчиков
Минусы
Большое количество ложных срабатываний (при автоматическом
тестировании)
Сложность внедрения и
эксплуатации
***
Стоимость
$$$$
Тип
Предотвращение
Разные инструменты часто дают разные результаты
Зависимость от языков и фреймворков
ДИНАМИЧЕСКИЙ АНАЛИЗ БЕЗОПАСНОСТИ (DAST)
Тестирование «снаружи внутрь» – тестирование безопасности открытых
интерфейсов веб-приложения
Плюсы
Паритет со злоумышленником – те же возможности и тот же процесс
Наглядность результатов
Относительная простота и масштабируемость
Независимость от разработчиков
Минусы
Сложно встраивать в SDLC
Сложность внедрения и
эксплуатации
**
Неполный охват уязвимостей
Стоимость
$$
Необходимость в тестовой среде
Тип
Обнаружение
ЧТО ВЫБРАТЬ?
SAST
Если есть возможность влиять на разработчиков приложения и устранять
найденные уязвимости на уровне кода
Если есть возможность генерации и применения виртуальных патчей для
WAF
DAST
Реализует базовый уровень безопасности, высокая вероятность обнаружить
легко доступные злоумышленникам уязвимости
SAST + DAST
Для любых критичных приложений
СИСТЕМЫ АКТИВНОЙ ЗАЩИТЫ ВЕБ-ПРИЛОЖЕНИЙ
Web Application Firewall
Защита от атак прикладного уровня
Обнаружение и блокирование бот-трафика
Парсеры контента
Сканеры уязвимостей
Рекламный фрод
Защита от DDOS-атак
ВАРИАНТЫ РАЗМЕЩЕНИЯ WAF
Надстройка над существующим
приложением/сервером
Отдельное аппаратное/виртуальное устройство
Облачный сервис
НАДСТРОЙКА НАД СУЩЕСТВУЮЩИМ
ПРИЛОЖЕНИЕМ/СЕРВЕРОМ
Плюсы
Легко подключить с базовыми правилами
Бесплатно или очень дешево
Минусы
Ограниченный функционал (наборы правил)
Часто использует мощности защищаемого
приложения
Сложность внедрения и
эксплуатации
*
Стоимость
$
Тип
Предотвращение
WAF КАК ОТДЕЛЬНОЕ АППАРАТНОЕ/ВИРТУАЛЬНОЕ
УСТРОЙСТВО
Плюсы
Более обширный функционал
Отдельное устройство (мощности)
Минусы
Сложно масштабировать и использовать в динамических
веб-инфраструктурах
Стоимость
Сложность внедрения и
эксплуатации
****
Стоимость
$$$$
Тип
Предотвращение
WAF КАК ОБЛАЧНЫЙ СЕРВИС
Плюсы
Просто подключается, подходит для всех типов
размещения веб-приложений
Все плюсы облачного сервиса
Минусы
Все минусы облачного сервиса
Ограниченный функционал (часто нет
возможности расширения правил)
Зависимость от внешнего сервиса (требования
к SLA поставщика)
Сложность внедрения и
эксплуатации
**
Стоимость
$$
Тип
Предотвращение
ВАРИАНТЫ ОРГАНИЗАЦИИ ЗАЩИТЫ ЗАКАЗЧИКОМ
Защита от DDOS
«Сделай сам»
Защита от провайдера
связи или хостера
Специализированные
аппаратные
комплексы
Специализированный
облачный сервис
ЗАЩИТА ОТ DDOS-АТАК – ОТВЕТСТВЕННОСТЬ И
ВОЗМОЖНОСТИ
Сеть/каналы
Оборудование
(серверы/балансиров
щики)
Веб-приложения
Провайдер доступа к
площадке заказчика
Ответственен, может
защитить (доп.услуга,
SLA)
Зависит от возможностей
провайдера
Провайдер почти всегда
«не понимает» L7
Заказчик (используя
«железо»)
«Железо» не поможет
Anti-DDOS решения
защищают остальное
оборудование
Обычно на апплаенсе
присутствует WAF и
защита от L7 атак
Заказчик (используя
внешний сервис)
Облачный сервис
абсорбирует атаку
Облачный сервис закрывает
оборудование
Зависит от провайдера,
но большинство
защищают
DNS
Только внешний
отказоустойчивый
DNS-сервис (или
прокси)
МОНИТОРИНГ И ВЫЯВЛЕНИЕ АТАК
НА ВЕБ-ПРИЛОЖЕНИЯ (L7)
Log Management, SIEM
Логи веб-серверов, балансировщиков
Логи приложения (аутентификация, действия
пользователей в приложении)
События атак от Web Application Firewall
Правила и сигнатуры vs Анализ нормы и аномалий
МОНИТОРИНГ И ВЫЯВЛЕНИЕ АТАК
НА ВЕБ-ПРИЛОЖЕНИЯ (L7)
Ошибки аутентификации (атаки перебора паролей)
Ошибки приложения, падения производительности
Подозрительные клиенты (идентификация, геолокация, возможности
клиента)
Подозрительное поведение
тайминг действий, скорость запросов
длина сессии или кол-во хитов в сессии
нестандартные точки входа в приложение
ПЛАНЫ РЕАГИРОВАНИЯ И КОММУНИКАЦИЙ
Телефоны ИТ-персонала, хостера, датацентра
Каналы общения с клиентами и медиа
Информирование клиентов
Резервные площадки (автоматическое переключение), резервные
провайдеры
Восстановление
ПРАКТИЧЕСКИЕ ШАГИ К БЕЗОПАСНОСТИ ВЕБПРИЛОЖЕНИЙ
Мониторинг событий безопасности
Динамический анализ веб-приложения
Защита от вредоносного трафика
Статический анализ приложения (кода)
Secure Software Development Lifecycle
ВМЕСТО ЗАКЛЮЧЕНИЯ
Plan
Еще одна инфраструктура –
инфраструктура безопасности
Безопасность – часть жизненного цикла
приложения
Безопасность – это процесс, а не
продукт
Act
Do
Check
Download