Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
SlideShare a Scribd company logo
ОПЫТ ОРГАНИЗАЦИИ
ТЕСТИРОВАНИЯ БЕЗОПАСНОСТИ
WEB ПРИЛОЖЕНИЙ
НИКИТА ПОСТОЛАКИЙ
10 АПРЕЛЯ 2014
Об авторе
Никита Постолакий
• 8+ лет в IT
• PM проектов по тестированию
в Itera Consulting
• Область интересов: тест
дизайн, управление рисками в
тестировании, time management
• Курирую команду тестирования
безопасности web приложений
19.04.2014 / 2
Содержание
1. Задача которую необходимо было решить
2. Определение методологии
3. Получение компетенции в тестировании безопасности
4. Тестировщики Security – кто они? Несколько советов по
построению команды
5. Основные этапы процесса тестирования безопасности
6. Вопросы
19.04.2014 / 3
Задача:
1. Построить процесс тестирования безопасности в компании
2. Создать QA команду тестирования безопасности
3. Не привлекая внешних экспертов
4. В срок 6 месяцев
19.04.2014 / 4
Задача
Дополнительные параметры проекта:
• Виды тестирования безопасности будут определены точнее в ходе проекта
• Доступна команда из 3 инженеров с частичной загрузкой
• Процесс тестирования должен охватывать полный спектр активностей «под ключ»
• Процесс тестирования должен быть достаточно зрелым для продажи клиентам
• Необходимо определитьразработать методику тестирования и построить процесс
• Необходимо выбрать инструменты и ПО для проведения тестирования
• Необходимо подготовить методические материалы – чек-листы, формы Excel,
форматы отчетов, планов, стратегий и.т.д.
19.04.2014 / 5
ОПРЕДЕЛЕНИЕ МЕТОДОЛОГИИ
OWASP
Open Web Application Security Project (OWASP)
Некоммерческое сообщество по обеспечению безопасности веб приложений.
Основные направления деятельности OWASP:
- Создание документации по разработке секьюрного ПО – Development guide
- Разработка методологии тестирования безопасности ПО - Testing guide
- Разработка ПО для тестирования, анализа, мониторинга и разработки
- Материалы для обучения
- TOP 10
https://www.owasp.org
19.04.2014 / 7
OWASP
• Более 200 проектов в области обеспечения безопасности ПО
• Сообществом написано15 книг
• Локальные сообщества в многих странах (и в Украине!)
• Регулярные ивенты в области безопасности ПО
• Все проекты доступны бесплатно!
19.04.2014 / 8
19.04.2014 / 9
OWASP – компании поддерживающие
сообщество
Почему мы решили использовать методику
тестирования web приложений OWASP?
19.04.2014 / 10
ПОЛУЧЕНИЕ КОМПЕТЕНЦИИ В
ТЕСТИРОВАНИИ БЕЗОПАСНОСТИ
Уровни тестирования безопасности
19.04.2014 / 12
Безопасность
инфраструктуры
Безопасность
приложения
Безопасность
организации
• Сетевой уровень
• Серверное ПО
• Беспроводные сети
• Firewall
• VPN
• Веб приложения
• Мобильные приложения
• Desktop приложения
• Анализ кода
• Моделирование атаки
• Тренинги по безопасности
• Секьюрити правила
• Управление рисками
• Business Continuity
• Социальная инженерия
Тестирование безопасности веб
приложений
Configuration management
• Анализ инфраструктуры
• Работа с поисковыми машинами
• Проверка серверного ПО
Penetration Testing
• Валидация данных / Инъекции (SQL, XSS, XML, XPATH, OS
Commands, File Uploads etc.)
• Тестирование аутентификации
• Тестирование авторизации
• Session management
• DOS атаки
Тестирование безопасности бизнес логики
Тестирование безопасности веб-сервисов
19.04.2014 / 13
Подходы к тестированию
19.04.2014 / 14
• Social Engineering
Черный ящик
Белый ящик
Серый ящик
Учебные материалы
Методологии тестирования безопасности:
– 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
Организация тестового окружения для
обучения
Как огранизовать тестовое окружение для обучения команды и практики на
максимально приближенных к реальности примерах.
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
Временные затраты нашего проекта
Обучение:
Построение процесса:
Пилотный проект:
19.04.2014 / 17
3 месяца
1 месяц
1,5 месяца
Построение команды
Кто вам нужен что бы провести тестирование безопасности?
– Баланс технических знаний и навыков в тестировании
– Аналитика и навыки менеджера
Наше решение:
• 1 PM
• 1 Senior QA инженер
• 2 технаря (навыки программирования, сетевого администрирования)
19.04.2014 / 18
ОСНОВНЫЕ ЭТАПЫ ТЕСТИРОВАНИЯ
БЕЗОПАСНОСТИ ПРИЛОЖЕНИЯ
Анализ и сбор информации
Цель этапа
• Определить scope тестирования
• Определить стратегию тестирования
• Спланировать тестирование
Задачи и активности
• Анализ инфраструктуры
• Анализ технологий
• Анализ бизнес процессов
Артефакты
• Тест стратегия
• Fingerprinting приложения
19.04.2014 / 20
Проведение тестирования
Цель этапа
• Поиск уязвимостей
• Формирование exploit сценариев
Задачи и активности
• Выполнение тестов
• Фиксирование уязвимостей
• Анализ уязвимостей
Артефакты
• Результаты прохождения тестов
• Список уязвимостей
• Exploit сценарии
19.04.2014 / 21
Оценка рисков и подготовка отчета
Цель этапа
• Определение и оценка рисков безопасности
• Подготовка рекомендаций по устранению уязвимости
• Отчетность
Задачи и активности
• Риск анализ
• Разработка рекомендаций по устранению уязвимостей
• Подготовка отчета
Артефакты
• Risk evaluation матрица
• Отчет о проведѐнном тестировании
19.04.2014 / 22
Методика оценки рисков безопасности
OWASP
Уязвимость безопасности != риску безопасности
Величина риска = вероятность * последствия
Факторы при оценке риска безопасности по OWASP:
19.04.2014 / 23
Вероятность
- Уровень взломщика
- Мотивация
- Размер группы
- Возможность обнаружения
- Простота обнаружения
- Простота использования
- Обнаружение взлома
-И др.
Вероятность
- Финансовые убытки
- Репутационные убытки
- Личные данные
- Потеря данных
- Потеря конфиденциальности
- И др.
Вопросы?
19.04.2014 / 24
Контакты
Буду рад ответить на вопросы, и просто
пообщаться:
nikeeboy
http://www.linkedin.com/in/npostolakiy
nikeeboy@gmail.com
19.04.2014 / 25

More Related Content

Опыт организации тестирования безопасности Web приложений в компании

  • 1. ОПЫТ ОРГАНИЗАЦИИ ТЕСТИРОВАНИЯ БЕЗОПАСНОСТИ WEB ПРИЛОЖЕНИЙ НИКИТА ПОСТОЛАКИЙ 10 АПРЕЛЯ 2014
  • 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
  • 9. 19.04.2014 / 9 OWASP – компании поддерживающие сообщество
  • 10. Почему мы решили использовать методику тестирования web приложений OWASP? 19.04.2014 / 10
  • 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
  • 14. Подходы к тестированию 19.04.2014 / 14 • Social Engineering Черный ящик Белый ящик Серый ящик
  • 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 Вероятность - Уровень взломщика - Мотивация - Размер группы - Возможность обнаружения - Простота обнаружения - Простота использования - Обнаружение взлома -И др. Вероятность - Финансовые убытки - Репутационные убытки - Личные данные - Потеря данных - Потеря конфиденциальности - И др.
  • 25. Контакты Буду рад ответить на вопросы, и просто пообщаться: nikeeboy http://www.linkedin.com/in/npostolakiy nikeeboy@gmail.com 19.04.2014 / 25