2. Об авторе
Никита Постолакий
• 8+ лет в IT
• PM проектов по тестированию
в Itera Consulting
• Область интересов: тест
дизайн, управление рисками в
тестировании, time management
• Курирую команду тестирования
безопасности web приложений
19.04.2014 / 2
3. Содержание
1. Задача которую необходимо было решить
2. Определение методологии
3. Получение компетенции в тестировании безопасности
4. Тестировщики Security – кто они? Несколько советов по
построению команды
5. Основные этапы процесса тестирования безопасности
6. Вопросы
19.04.2014 / 3
4. Задача:
1. Построить процесс тестирования безопасности в компании
2. Создать QA команду тестирования безопасности
3. Не привлекая внешних экспертов
4. В срок 6 месяцев
19.04.2014 / 4
5. Задача
Дополнительные параметры проекта:
• Виды тестирования безопасности будут определены точнее в ходе проекта
• Доступна команда из 3 инженеров с частичной загрузкой
• Процесс тестирования должен охватывать полный спектр активностей «под ключ»
• Процесс тестирования должен быть достаточно зрелым для продажи клиентам
• Необходимо определитьразработать методику тестирования и построить процесс
• Необходимо выбрать инструменты и ПО для проведения тестирования
• Необходимо подготовить методические материалы – чек-листы, формы Excel,
форматы отчетов, планов, стратегий и.т.д.
19.04.2014 / 5
7. OWASP
Open Web Application Security Project (OWASP)
Некоммерческое сообщество по обеспечению безопасности веб приложений.
Основные направления деятельности OWASP:
- Создание документации по разработке секьюрного ПО – Development guide
- Разработка методологии тестирования безопасности ПО - Testing guide
- Разработка ПО для тестирования, анализа, мониторинга и разработки
- Материалы для обучения
- TOP 10
https://www.owasp.org
19.04.2014 / 7
8. OWASP
• Более 200 проектов в области обеспечения безопасности ПО
• Сообществом написано15 книг
• Локальные сообщества в многих странах (и в Украине!)
• Регулярные ивенты в области безопасности ПО
• Все проекты доступны бесплатно!
19.04.2014 / 8
12. Уровни тестирования безопасности
19.04.2014 / 12
Безопасность
инфраструктуры
Безопасность
приложения
Безопасность
организации
• Сетевой уровень
• Серверное ПО
• Беспроводные сети
• Firewall
• VPN
• Веб приложения
• Мобильные приложения
• Desktop приложения
• Анализ кода
• Моделирование атаки
• Тренинги по безопасности
• Секьюрити правила
• Управление рисками
• Business Continuity
• Социальная инженерия
13. Тестирование безопасности веб
приложений
Configuration management
• Анализ инфраструктуры
• Работа с поисковыми машинами
• Проверка серверного ПО
Penetration Testing
• Валидация данных / Инъекции (SQL, XSS, XML, XPATH, OS
Commands, File Uploads etc.)
• Тестирование аутентификации
• Тестирование авторизации
• Session management
• DOS атаки
Тестирование безопасности бизнес логики
Тестирование безопасности веб-сервисов
19.04.2014 / 13
15. Учебные материалы
Методологии тестирования безопасности:
– OWASP Testing Guide – Web
– Open Source Security Testing Methodology Manual (OSSTMM)
Интерактивные учебные курсы
– OWASP Web GOAT
Книги о тестировании безопасности
– OWASP Testing Guide
– Web Security Testing Cookbook (Paco Hope, Ben Walther)
– Google Hacking for penetration testers (Johnny Long)
– Hacking and Securing iOS Applications (Jonathan Zdziarski)
– Mobile Application Security (Himanshu Dwivedi)
19.04.2014 / 15
16. Организация тестового окружения для
обучения
Как огранизовать тестовое окружение для обучения команды и практики на
максимально приближенных к реальности примерах.
1. Damn Vulnerable Web Application
http://www.dvwa.co.uk/
2. HACKADEMIC project
https://www.owasp.org/index.php/OWASP_Hackademic_Challenges_Project
3. OWASP Web Goat project
https://www.owasp.org/index.php/Category:OWASP_WebGoat_Project
4. OWASP Live CD
https://www.owasp.org/index.php/GPC_Project_Details/OWASP_Live_CD
19.04.2014 / 16
17. Временные затраты нашего проекта
Обучение:
Построение процесса:
Пилотный проект:
19.04.2014 / 17
3 месяца
1 месяц
1,5 месяца
18. Построение команды
Кто вам нужен что бы провести тестирование безопасности?
– Баланс технических знаний и навыков в тестировании
– Аналитика и навыки менеджера
Наше решение:
• 1 PM
• 1 Senior QA инженер
• 2 технаря (навыки программирования, сетевого администрирования)
19.04.2014 / 18
20. Анализ и сбор информации
Цель этапа
• Определить scope тестирования
• Определить стратегию тестирования
• Спланировать тестирование
Задачи и активности
• Анализ инфраструктуры
• Анализ технологий
• Анализ бизнес процессов
Артефакты
• Тест стратегия
• Fingerprinting приложения
19.04.2014 / 20
21. Проведение тестирования
Цель этапа
• Поиск уязвимостей
• Формирование exploit сценариев
Задачи и активности
• Выполнение тестов
• Фиксирование уязвимостей
• Анализ уязвимостей
Артефакты
• Результаты прохождения тестов
• Список уязвимостей
• Exploit сценарии
19.04.2014 / 21
22. Оценка рисков и подготовка отчета
Цель этапа
• Определение и оценка рисков безопасности
• Подготовка рекомендаций по устранению уязвимости
• Отчетность
Задачи и активности
• Риск анализ
• Разработка рекомендаций по устранению уязвимостей
• Подготовка отчета
Артефакты
• Risk evaluation матрица
• Отчет о проведѐнном тестировании
19.04.2014 / 22
23. Методика оценки рисков безопасности
OWASP
Уязвимость безопасности != риску безопасности
Величина риска = вероятность * последствия
Факторы при оценке риска безопасности по OWASP:
19.04.2014 / 23
Вероятность
- Уровень взломщика
- Мотивация
- Размер группы
- Возможность обнаружения
- Простота обнаружения
- Простота использования
- Обнаружение взлома
-И др.
Вероятность
- Финансовые убытки
- Репутационные убытки
- Личные данные
- Потеря данных
- Потеря конфиденциальности
- И др.