SlideShare ist ein Scribd-Unternehmen logo
1 von 20
Software quality assurance days
17 Международная конференция
по вопросам качества ПО
sqadays.com
Минск. 29–30 мая 2015
Катерина Овеченко
Itera. Киев, Украина
Fuzzing – автоматическое тестирование
безопасности
Fuzzing – автоматическое тестирование безопасности
Катерина Овеченко, Itera
О себе
5+ лет в тестировании.
Специалист по ручному тестированию и
построению процесса тестирования на проектах.
2+ года в тестировании безопасности: от
построения компетенции до координации проектов
для внешних заказчиков.
Сейчас занимаю должность QA coordinator в
компании Itera.
Докладчик конференций, один из основателей
сообщества OWASP Украина, организатор
конференции QA Fest.
Fuzz тестирование (aka Fuzzing) – это подход к поиску уязвимостей, обычно полу-
или полностью автоматизированный, при котором невалидные, непредвиденные
или случайные данные подаются на вход в приложение.
Fuzzing – автоматическое тестирование безопасности
Катерина Овеченко, Itera
Fuzzing – что это?
Fuzzing – автоматическое тестирование безопасности
Катерина Овеченко, Itera
Поиск уязвимостей
White-box подход
Fuzzing – автоматическое тестирование безопасности
Катерина Овеченко, Itera
Поиск уязвимостей
Black-box подход
Приложение
Файлы
Протоколы
Fuzzing – автоматическое тестирование безопасности
Катерина Овеченко, Itera
Уровни fuzzing
Память
Драйвера
URL адреса
Импорт-экспорт
UI и Формы
Запросы
Fuzzing – автоматическое тестирование безопасности
Катерина Овеченко, Itera
Какие баги находит
fuzzing?
Ошибки в обработке
входных данных
Переполнение буфера Отказ в обслуживании (DoS)
Атаки по обходу директорий
(directory traversal)
XSS и SQL инъекцииУтечки памяти
Fuzzing – автоматическое тестирование безопасности
Катерина Овеченко, Itera
Fuzzing: Основные шаги
Определяем
цель
Задаем
интерфейсы
ввода данных
Генерируем
тестовые
данные
Посылаем
данные в
приложение
Проверяем на
исключения
Определяем
уязвимость
Fuzzing – автоматическое тестирование безопасности
Катерина Овеченко, Itera
Шаг 1: Определяем цель
Что будем фаззить?
На каком уровне?
Есть ли известные
уязвимости?
Функциональность с
особым риском?
Шаг 2: Определяем интерфейсы
ввода данных
Fuzzing – автоматическое тестирование безопасности
Катерина Овеченко, Itera
На уровне кода приложения
На уровне интерфейса приложения
Fuzzing – автоматическое тестирование безопасности
Катерина Овеченко, Itera
Шаг 3: Генерируем тестовые данные
Fuzzing – автоматическое тестирование безопасности
Катерина Овеченко, Itera
Пример модели
TFTP PACKET STRUCTURE
----------------------------------------------
| x00x01 | Filename | 0 | Mode | 0 |
----------------------------------------------
FUZZ TEMPLATE
<DataModel name="tftprrx">
<Blob name="opcode" valueType="hex" value="00 01" token="true"/>
<String name ="filename" value="filename.txt" nullTerminated="true" />
<String name="mode" value="NETASCII" token="true" nullTerminated="true"/>
</DataModel>
<StateModel name="State1" initialState="Initial">
<State name="Initial">
<Action type="output">
<DataModel ref="tftprrx" />
</Action>
</State>
</StateModel>
…
Автоматизация
Fuzzing – автоматическое тестирование безопасности
Катерина Овеченко, Itera
Генерация данных используя model-based или попарное тестирование
Выбрать набор данных из продуктовой среды, учитывая code coverage
Использование существующей автоматизации
Шаг 4: Посылаем данные
в приложение
Fuzzing – автоматическое тестирование безопасности
Катерина Овеченко, Itera
Fuzzing – автоматическое тестирование безопасности
Катерина Овеченко, Itera
Шаг 5: Проверяем на исключения
Проверяем:
- Логи фаззера - Процессы
- HTML ответы (response) - Регистр
- Сообщения об ошибках - Статус коды
- Память - Системные логи
и т.д.
Fuzzing – автоматическое тестирование безопасности
Катерина Овеченко, Itera
Шаг 6: Определяем уязвимость
Fuzzing – автоматическое тестирование безопасности
Катерина Овеченко, Itera
Fuzzers
vs
Демо
Fuzzing – автоматическое тестирование безопасности
Катерина Овеченко, Itera
Fuzzing – автоматическое тестирование безопасности
Катерина Овеченко, Itera
Pros:
•Легко
автоматизируется
•Выполняет много
проверок
•Множество вариаций
входящих данных
Cons:
•Простые ошибки
•Тяжело оценить
покрытие тестами
•Технические знания
для фаззинга (API,
протоколы и
драйвера)
Контакты
Fuzzing – автоматическое тестирование безопасности
Катерина Овеченко, Itera
Mail
kateryna.ovechenko@iteraconsulting.com
Skype
kateryna.ovechenko
Kateryna Ovechenko

Weitere ähnliche Inhalte

Was ist angesagt?

Анализ защищенности интернет-проектов
Анализ защищенности интернет-проектовАнализ защищенности интернет-проектов
Анализ защищенности интернет-проектовDmitry Evteev
 
Тестирование доступности ПО для людей с ограниченными возможностями
Тестирование доступности ПО для людей с ограниченными возможностямиТестирование доступности ПО для людей с ограниченными возможностями
Тестирование доступности ПО для людей с ограниченными возможностямиSQALab
 
Земсков - Как обеспечить безопасность клиентских сайтов в процессе оказания у...
Земсков - Как обеспечить безопасность клиентских сайтов в процессе оказания у...Земсков - Как обеспечить безопасность клиентских сайтов в процессе оказания у...
Земсков - Как обеспечить безопасность клиентских сайтов в процессе оказания у...SEO Conference
 
Типовые атаки на корпоративную информационную систему (КИС)
Типовые атаки на корпоративную информационную систему (КИС)Типовые атаки на корпоративную информационную систему (КИС)
Типовые атаки на корпоративную информационную систему (КИС)Альбина Минуллина
 
Собираем команду хакеров
Собираем команду хакеровСобираем команду хакеров
Собираем команду хакеровDmitry Evteev
 
Автоматизация построения правил для Approof
Автоматизация построения правил для ApproofАвтоматизация построения правил для Approof
Автоматизация построения правил для ApproofPositive Hack Days
 
Требования по безопасности в архитектуре ПО
Требования по безопасности в архитектуре ПОТребования по безопасности в архитектуре ПО
Требования по безопасности в архитектуре ПОPositive Development User Group
 
PT ESC - кто полечит доктора?
PT ESC - кто полечит доктора?PT ESC - кто полечит доктора?
PT ESC - кто полечит доктора?Alexey Kachalin
 
Оценка защищенности Web-приложений
Оценка защищенности Web-приложенийОценка защищенности Web-приложений
Оценка защищенности Web-приложенийSQALab
 
Sergey Gordeychik SQADays 2008
Sergey Gordeychik SQADays 2008Sergey Gordeychik SQADays 2008
Sergey Gordeychik SQADays 2008guest5b66888
 
Check Point. Сергей Чекрыгин. "На один шаг впереди"
Check Point. Сергей Чекрыгин. "На один шаг впереди"Check Point. Сергей Чекрыгин. "На один шаг впереди"
Check Point. Сергей Чекрыгин. "На один шаг впереди"Expolink
 
Check Point. Сергей Чекрыгин. "На шаг впереди"
Check Point. Сергей Чекрыгин. "На шаг впереди"Check Point. Сергей Чекрыгин. "На шаг впереди"
Check Point. Сергей Чекрыгин. "На шаг впереди"Expolink
 
Пост-эксплуатация веб-приложений в тестах на проникновение
Пост-эксплуатация веб-приложений в тестах на проникновениеПост-эксплуатация веб-приложений в тестах на проникновение
Пост-эксплуатация веб-приложений в тестах на проникновениеbeched
 
20% of investment and 80% of profit. How to implement security requirements a...
20% of investment and 80% of profit. How to implement security requirements a...20% of investment and 80% of profit. How to implement security requirements a...
20% of investment and 80% of profit. How to implement security requirements a...Igor Gots
 
Статистика по результатам тестирований на проникновение и анализа защищенност...
Статистика по результатам тестирований на проникновение и анализа защищенност...Статистика по результатам тестирований на проникновение и анализа защищенност...
Статистика по результатам тестирований на проникновение и анализа защищенност...Dmitry Evteev
 
Search Inform. Попов Алексей. "Как выбрать идеальную DLP-систему?"
Search Inform. Попов Алексей. "Как выбрать идеальную DLP-систему?"Search Inform. Попов Алексей. "Как выбрать идеальную DLP-систему?"
Search Inform. Попов Алексей. "Как выбрать идеальную DLP-систему?"Expolink
 

Was ist angesagt? (20)

Penetration testing
Penetration testingPenetration testing
Penetration testing
 
Анализ защищенности интернет-проектов
Анализ защищенности интернет-проектовАнализ защищенности интернет-проектов
Анализ защищенности интернет-проектов
 
Тестирование доступности ПО для людей с ограниченными возможностями
Тестирование доступности ПО для людей с ограниченными возможностямиТестирование доступности ПО для людей с ограниченными возможностями
Тестирование доступности ПО для людей с ограниченными возможностями
 
Земсков - Как обеспечить безопасность клиентских сайтов в процессе оказания у...
Земсков - Как обеспечить безопасность клиентских сайтов в процессе оказания у...Земсков - Как обеспечить безопасность клиентских сайтов в процессе оказания у...
Земсков - Как обеспечить безопасность клиентских сайтов в процессе оказания у...
 
Barabanov_Markov it-std
Barabanov_Markov it-stdBarabanov_Markov it-std
Barabanov_Markov it-std
 
Типовые атаки на корпоративную информационную систему (КИС)
Типовые атаки на корпоративную информационную систему (КИС)Типовые атаки на корпоративную информационную систему (КИС)
Типовые атаки на корпоративную информационную систему (КИС)
 
Собираем команду хакеров
Собираем команду хакеровСобираем команду хакеров
Собираем команду хакеров
 
Phd 2016_SSDL_GOST
Phd 2016_SSDL_GOSTPhd 2016_SSDL_GOST
Phd 2016_SSDL_GOST
 
Автоматизация построения правил для Approof
Автоматизация построения правил для ApproofАвтоматизация построения правил для Approof
Автоматизация построения правил для Approof
 
Nexthop lab-v4
Nexthop lab-v4Nexthop lab-v4
Nexthop lab-v4
 
Требования по безопасности в архитектуре ПО
Требования по безопасности в архитектуре ПОТребования по безопасности в архитектуре ПО
Требования по безопасности в архитектуре ПО
 
PT ESC - кто полечит доктора?
PT ESC - кто полечит доктора?PT ESC - кто полечит доктора?
PT ESC - кто полечит доктора?
 
Оценка защищенности Web-приложений
Оценка защищенности Web-приложенийОценка защищенности Web-приложений
Оценка защищенности Web-приложений
 
Sergey Gordeychik SQADays 2008
Sergey Gordeychik SQADays 2008Sergey Gordeychik SQADays 2008
Sergey Gordeychik SQADays 2008
 
Check Point. Сергей Чекрыгин. "На один шаг впереди"
Check Point. Сергей Чекрыгин. "На один шаг впереди"Check Point. Сергей Чекрыгин. "На один шаг впереди"
Check Point. Сергей Чекрыгин. "На один шаг впереди"
 
Check Point. Сергей Чекрыгин. "На шаг впереди"
Check Point. Сергей Чекрыгин. "На шаг впереди"Check Point. Сергей Чекрыгин. "На шаг впереди"
Check Point. Сергей Чекрыгин. "На шаг впереди"
 
Пост-эксплуатация веб-приложений в тестах на проникновение
Пост-эксплуатация веб-приложений в тестах на проникновениеПост-эксплуатация веб-приложений в тестах на проникновение
Пост-эксплуатация веб-приложений в тестах на проникновение
 
20% of investment and 80% of profit. How to implement security requirements a...
20% of investment and 80% of profit. How to implement security requirements a...20% of investment and 80% of profit. How to implement security requirements a...
20% of investment and 80% of profit. How to implement security requirements a...
 
Статистика по результатам тестирований на проникновение и анализа защищенност...
Статистика по результатам тестирований на проникновение и анализа защищенност...Статистика по результатам тестирований на проникновение и анализа защищенност...
Статистика по результатам тестирований на проникновение и анализа защищенност...
 
Search Inform. Попов Алексей. "Как выбрать идеальную DLP-систему?"
Search Inform. Попов Алексей. "Как выбрать идеальную DLP-систему?"Search Inform. Попов Алексей. "Как выбрать идеальную DLP-систему?"
Search Inform. Попов Алексей. "Как выбрать идеальную DLP-систему?"
 

Andere mochten auch

Метод тестирования Fuzzing
Метод тестирования FuzzingМетод тестирования Fuzzing
Метод тестирования FuzzingISsoft
 
Автоматический поиск уязвимостей в программах без исходных текстов
Автоматический поиск уязвимостей в программах без исходных текстовАвтоматический поиск уязвимостей в программах без исходных текстов
Автоматический поиск уязвимостей в программах без исходных текстовd_olex
 
Open Source Security Testing Methodology - Открытый фреймворк по тестированию...
Open Source Security Testing Methodology - Открытый фреймворк по тестированию...Open Source Security Testing Methodology - Открытый фреймворк по тестированию...
Open Source Security Testing Methodology - Открытый фреймворк по тестированию...SQALab
 
2015-12-05 Вадим Литвинов - Нагрузочное тестирование с MZBench
2015-12-05 Вадим Литвинов - Нагрузочное тестирование с MZBench2015-12-05 Вадим Литвинов - Нагрузочное тестирование с MZBench
2015-12-05 Вадим Литвинов - Нагрузочное тестирование с MZBenchHappyDev
 
QA Fest 2015. Владимир Примаков. Процесс нагрузочного тестирования и его план...
QA Fest 2015. Владимир Примаков. Процесс нагрузочного тестирования и его план...QA Fest 2015. Владимир Примаков. Процесс нагрузочного тестирования и его план...
QA Fest 2015. Владимир Примаков. Процесс нагрузочного тестирования и его план...QAFest
 
Моделирование угроз для приложений
Моделирование угроз для приложенийМоделирование угроз для приложений
Моделирование угроз для приложенийSQALab
 
Случайное тестирование
Случайное тестированиеСлучайное тестирование
Случайное тестированиеMarat Akhin
 
Безопасность сессий в веб-приложениях
Безопасность сессий в веб-приложенияхБезопасность сессий в веб-приложениях
Безопасность сессий в веб-приложенияхKateryna Ovechenko
 
Управление требованиями и тестирование ПО
Управление требованиями и тестирование ПОУправление требованиями и тестирование ПО
Управление требованиями и тестирование ПОТранслируем.бел
 
Все твои ходы записаны
Все твои ходы записаныВсе твои ходы записаны
Все твои ходы записаныSQALab
 
Нагрузочное тестирования в сжатые сроки (мастер-класс)
Нагрузочное тестирования в сжатые сроки (мастер-класс)Нагрузочное тестирования в сжатые сроки (мастер-класс)
Нагрузочное тестирования в сжатые сроки (мастер-класс)SQALab
 
Эволюция нагрузочного тестирования – от простой автоматизации до BDD
Эволюция нагрузочного тестирования – от простой автоматизации до BDDЭволюция нагрузочного тестирования – от простой автоматизации до BDD
Эволюция нагрузочного тестирования – от простой автоматизации до BDDCEE-SEC(R)
 
Автоматизация тестирования: доступна каждому или удел избранных?
Автоматизация тестирования: доступна каждому или удел избранных?Автоматизация тестирования: доступна каждому или удел избранных?
Автоматизация тестирования: доступна каждому или удел избранных?SQALab
 
Report Portal - эффективность вашей автоматизации
Report Portal - эффективность вашей автоматизацииReport Portal - эффективность вашей автоматизации
Report Portal - эффективность вашей автоматизацииSQALab
 
Беседа о тестовых данных
Беседа о тестовых данныхБеседа о тестовых данных
Беседа о тестовых данныхSQALab
 
JIRA. С добавками. Для тестировщиков
JIRA. С добавками. Для тестировщиковJIRA. С добавками. Для тестировщиков
JIRA. С добавками. Для тестировщиковSQALab
 

Andere mochten auch (16)

Метод тестирования Fuzzing
Метод тестирования FuzzingМетод тестирования Fuzzing
Метод тестирования Fuzzing
 
Автоматический поиск уязвимостей в программах без исходных текстов
Автоматический поиск уязвимостей в программах без исходных текстовАвтоматический поиск уязвимостей в программах без исходных текстов
Автоматический поиск уязвимостей в программах без исходных текстов
 
Open Source Security Testing Methodology - Открытый фреймворк по тестированию...
Open Source Security Testing Methodology - Открытый фреймворк по тестированию...Open Source Security Testing Methodology - Открытый фреймворк по тестированию...
Open Source Security Testing Methodology - Открытый фреймворк по тестированию...
 
2015-12-05 Вадим Литвинов - Нагрузочное тестирование с MZBench
2015-12-05 Вадим Литвинов - Нагрузочное тестирование с MZBench2015-12-05 Вадим Литвинов - Нагрузочное тестирование с MZBench
2015-12-05 Вадим Литвинов - Нагрузочное тестирование с MZBench
 
QA Fest 2015. Владимир Примаков. Процесс нагрузочного тестирования и его план...
QA Fest 2015. Владимир Примаков. Процесс нагрузочного тестирования и его план...QA Fest 2015. Владимир Примаков. Процесс нагрузочного тестирования и его план...
QA Fest 2015. Владимир Примаков. Процесс нагрузочного тестирования и его план...
 
Моделирование угроз для приложений
Моделирование угроз для приложенийМоделирование угроз для приложений
Моделирование угроз для приложений
 
Случайное тестирование
Случайное тестированиеСлучайное тестирование
Случайное тестирование
 
Безопасность сессий в веб-приложениях
Безопасность сессий в веб-приложенияхБезопасность сессий в веб-приложениях
Безопасность сессий в веб-приложениях
 
Управление требованиями и тестирование ПО
Управление требованиями и тестирование ПОУправление требованиями и тестирование ПО
Управление требованиями и тестирование ПО
 
Все твои ходы записаны
Все твои ходы записаныВсе твои ходы записаны
Все твои ходы записаны
 
Нагрузочное тестирования в сжатые сроки (мастер-класс)
Нагрузочное тестирования в сжатые сроки (мастер-класс)Нагрузочное тестирования в сжатые сроки (мастер-класс)
Нагрузочное тестирования в сжатые сроки (мастер-класс)
 
Эволюция нагрузочного тестирования – от простой автоматизации до BDD
Эволюция нагрузочного тестирования – от простой автоматизации до BDDЭволюция нагрузочного тестирования – от простой автоматизации до BDD
Эволюция нагрузочного тестирования – от простой автоматизации до BDD
 
Автоматизация тестирования: доступна каждому или удел избранных?
Автоматизация тестирования: доступна каждому или удел избранных?Автоматизация тестирования: доступна каждому или удел избранных?
Автоматизация тестирования: доступна каждому или удел избранных?
 
Report Portal - эффективность вашей автоматизации
Report Portal - эффективность вашей автоматизацииReport Portal - эффективность вашей автоматизации
Report Portal - эффективность вашей автоматизации
 
Беседа о тестовых данных
Беседа о тестовых данныхБеседа о тестовых данных
Беседа о тестовых данных
 
JIRA. С добавками. Для тестировщиков
JIRA. С добавками. Для тестировщиковJIRA. С добавками. Для тестировщиков
JIRA. С добавками. Для тестировщиков
 

Ähnlich wie Fuzzing - автоматическое тестирование безопасности

ITSF 2014 ICS Security
ITSF 2014 ICS SecurityITSF 2014 ICS Security
ITSF 2014 ICS SecurityIlya Karpov
 
Безопаность SAP-систем
Безопаность SAP-системБезопаность SAP-систем
Безопаность SAP-системAlexey Kachalin
 
Threads & LinkedClone. Как сократить время на развертывание продукта и подгот...
Threads & LinkedClone. Как сократить время на развертывание продукта и подгот...Threads & LinkedClone. Как сократить время на развертывание продукта и подгот...
Threads & LinkedClone. Как сократить время на развертывание продукта и подгот...SQALab
 
Обзор решений по управлению и мониторингу сетей предприятий. Cisco Prime Inf...
 Обзор решений по управлению и мониторингу сетей предприятий. Cisco Prime Inf... Обзор решений по управлению и мониторингу сетей предприятий. Cisco Prime Inf...
Обзор решений по управлению и мониторингу сетей предприятий. Cisco Prime Inf...Cisco Russia
 
Слои тестового фрамеворка. Что? Где? Когда?
Слои тестового фрамеворка. Что? Где? Когда?Слои тестового фрамеворка. Что? Где? Когда?
Слои тестового фрамеворка. Что? Где? Когда?COMAQA.BY
 
О ядре SOC - SOC-Forum Astana 2017
О ядре SOC - SOC-Forum Astana 2017О ядре SOC - SOC-Forum Astana 2017
О ядре SOC - SOC-Forum Astana 2017Alexey Kachalin
 
Обеспечение информационной безопасности в финансовых учреждениях
Обеспечение информационной безопасности в финансовых учрежденияхОбеспечение информационной безопасности в финансовых учреждениях
Обеспечение информационной безопасности в финансовых учрежденияхsmart-soft
 
Развитие систем анализа защищенности. Взгляд в будущее!
Развитие систем анализа защищенности. Взгляд в будущее!Развитие систем анализа защищенности. Взгляд в будущее!
Развитие систем анализа защищенности. Взгляд в будущее!Dmitry Evteev
 
Fuzzing Qa A.Komlev
Fuzzing Qa A.KomlevFuzzing Qa A.Komlev
Fuzzing Qa A.Komlevguest4e4c91
 
Fuzzing Qa A.Komlev
Fuzzing Qa A.KomlevFuzzing Qa A.Komlev
Fuzzing Qa A.Komlevguest4e4c91
 
Fuzzing: ключевая концепция обеспечения безопасности проекта
Fuzzing: ключевая концепция обеспечения безопасности проектаFuzzing: ключевая концепция обеспечения безопасности проекта
Fuzzing: ключевая концепция обеспечения безопасности проектаMedia Gorod
 
ИБ АСУ ТП NON-STOP. Серия 7. Система анализа и мониторинга состояния информац...
ИБ АСУ ТП NON-STOP. Серия 7. Система анализа и мониторинга состояния информац...ИБ АСУ ТП NON-STOP. Серия 7. Система анализа и мониторинга состояния информац...
ИБ АСУ ТП NON-STOP. Серия 7. Система анализа и мониторинга состояния информац...Компания УЦСБ
 
Сканер-ВС. Сертифицированный инструмент для этичного хакера
Сканер-ВС. Сертифицированный инструмент для этичного хакераСканер-ВС. Сертифицированный инструмент для этичного хакера
Сканер-ВС. Сертифицированный инструмент для этичного хакераcnpo
 
Основное содержание профессионального стандарта «Специалист по безопасности и...
Основное содержание профессионального стандарта «Специалист по безопасности и...Основное содержание профессионального стандарта «Специалист по безопасности и...
Основное содержание профессионального стандарта «Специалист по безопасности и...SelectedPresentations
 
Обзор решения по управлению оборудованием корпоративной сети
Обзор решения по управлению оборудованием корпоративной сетиОбзор решения по управлению оборудованием корпоративной сети
Обзор решения по управлению оборудованием корпоративной сетиCisco Russia
 
Анализ ИБ и расследование инцидентов ИБ (учебный семинар)
Анализ ИБ и расследование инцидентов ИБ (учебный семинар)Анализ ИБ и расследование инцидентов ИБ (учебный семинар)
Анализ ИБ и расследование инцидентов ИБ (учебный семинар)Alexey Kachalin
 
Bachelors Diploma Slides Short Version
Bachelors Diploma Slides Short VersionBachelors Diploma Slides Short Version
Bachelors Diploma Slides Short VersionDenis Zakharov
 
Обзор решения Prime Infrastructure 2.0.
Обзор решения Prime Infrastructure 2.0.Обзор решения Prime Infrastructure 2.0.
Обзор решения Prime Infrastructure 2.0.Cisco Russia
 
Лучшие практики исполнения проекта в соответствии с методологией IBM Rational
Лучшие практики исполнения проекта в соответствии с методологией IBM RationalЛучшие практики исполнения проекта в соответствии с методологией IBM Rational
Лучшие практики исполнения проекта в соответствии с методологией IBM RationalLuxoftTraining
 

Ähnlich wie Fuzzing - автоматическое тестирование безопасности (20)

ITSF 2014 ICS Security
ITSF 2014 ICS SecurityITSF 2014 ICS Security
ITSF 2014 ICS Security
 
Безопаность SAP-систем
Безопаность SAP-системБезопаность SAP-систем
Безопаность SAP-систем
 
Threads & LinkedClone. Как сократить время на развертывание продукта и подгот...
Threads & LinkedClone. Как сократить время на развертывание продукта и подгот...Threads & LinkedClone. Как сократить время на развертывание продукта и подгот...
Threads & LinkedClone. Как сократить время на развертывание продукта и подгот...
 
Обзор решений по управлению и мониторингу сетей предприятий. Cisco Prime Inf...
 Обзор решений по управлению и мониторингу сетей предприятий. Cisco Prime Inf... Обзор решений по управлению и мониторингу сетей предприятий. Cisco Prime Inf...
Обзор решений по управлению и мониторингу сетей предприятий. Cisco Prime Inf...
 
Слои тестового фрамеворка. Что? Где? Когда?
Слои тестового фрамеворка. Что? Где? Когда?Слои тестового фрамеворка. Что? Где? Когда?
Слои тестового фрамеворка. Что? Где? Когда?
 
О ядре SOC - SOC-Forum Astana 2017
О ядре SOC - SOC-Forum Astana 2017О ядре SOC - SOC-Forum Astana 2017
О ядре SOC - SOC-Forum Astana 2017
 
Обеспечение информационной безопасности в финансовых учреждениях
Обеспечение информационной безопасности в финансовых учрежденияхОбеспечение информационной безопасности в финансовых учреждениях
Обеспечение информационной безопасности в финансовых учреждениях
 
Развитие систем анализа защищенности. Взгляд в будущее!
Развитие систем анализа защищенности. Взгляд в будущее!Развитие систем анализа защищенности. Взгляд в будущее!
Развитие систем анализа защищенности. Взгляд в будущее!
 
Fuzzing Qa A.Komlev
Fuzzing Qa A.KomlevFuzzing Qa A.Komlev
Fuzzing Qa A.Komlev
 
Fuzzing Qa A.Komlev
Fuzzing Qa A.KomlevFuzzing Qa A.Komlev
Fuzzing Qa A.Komlev
 
Fuzzing: ключевая концепция обеспечения безопасности проекта
Fuzzing: ключевая концепция обеспечения безопасности проектаFuzzing: ключевая концепция обеспечения безопасности проекта
Fuzzing: ключевая концепция обеспечения безопасности проекта
 
ИБ АСУ ТП NON-STOP. Серия 7. Система анализа и мониторинга состояния информац...
ИБ АСУ ТП NON-STOP. Серия 7. Система анализа и мониторинга состояния информац...ИБ АСУ ТП NON-STOP. Серия 7. Система анализа и мониторинга состояния информац...
ИБ АСУ ТП NON-STOP. Серия 7. Система анализа и мониторинга состояния информац...
 
Сканер-ВС. Сертифицированный инструмент для этичного хакера
Сканер-ВС. Сертифицированный инструмент для этичного хакераСканер-ВС. Сертифицированный инструмент для этичного хакера
Сканер-ВС. Сертифицированный инструмент для этичного хакера
 
Основное содержание профессионального стандарта «Специалист по безопасности и...
Основное содержание профессионального стандарта «Специалист по безопасности и...Основное содержание профессионального стандарта «Специалист по безопасности и...
Основное содержание профессионального стандарта «Специалист по безопасности и...
 
Automation testing desktop applications
Automation testing desktop applicationsAutomation testing desktop applications
Automation testing desktop applications
 
Обзор решения по управлению оборудованием корпоративной сети
Обзор решения по управлению оборудованием корпоративной сетиОбзор решения по управлению оборудованием корпоративной сети
Обзор решения по управлению оборудованием корпоративной сети
 
Анализ ИБ и расследование инцидентов ИБ (учебный семинар)
Анализ ИБ и расследование инцидентов ИБ (учебный семинар)Анализ ИБ и расследование инцидентов ИБ (учебный семинар)
Анализ ИБ и расследование инцидентов ИБ (учебный семинар)
 
Bachelors Diploma Slides Short Version
Bachelors Diploma Slides Short VersionBachelors Diploma Slides Short Version
Bachelors Diploma Slides Short Version
 
Обзор решения Prime Infrastructure 2.0.
Обзор решения Prime Infrastructure 2.0.Обзор решения Prime Infrastructure 2.0.
Обзор решения Prime Infrastructure 2.0.
 
Лучшие практики исполнения проекта в соответствии с методологией IBM Rational
Лучшие практики исполнения проекта в соответствии с методологией IBM RationalЛучшие практики исполнения проекта в соответствии с методологией IBM Rational
Лучшие практики исполнения проекта в соответствии с методологией IBM Rational
 

Mehr von SQALab

Готовим стажировку
Готовим стажировкуГотовим стажировку
Готовим стажировкуSQALab
 
Куда приводят мечты? или Искусство развития тестировщика
Куда приводят мечты? или Искусство развития тестировщикаКуда приводят мечты? или Искусство развития тестировщика
Куда приводят мечты? или Искусство развития тестировщикаSQALab
 
Оптимизация Selenium тестов и ускорение их поддержки
Оптимизация Selenium тестов и ускорение их поддержкиОптимизация Selenium тестов и ускорение их поддержки
Оптимизация Selenium тестов и ускорение их поддержкиSQALab
 
Автоматизация 0.0: 0 - бюджет, 0 - опыт программирования
Автоматизация 0.0: 0 - бюджет, 0 - опыт программированияАвтоматизация 0.0: 0 - бюджет, 0 - опыт программирования
Автоматизация 0.0: 0 - бюджет, 0 - опыт программированияSQALab
 
Нагрузочное тестирование нестандартных протоколов с использованием Citrix и J...
Нагрузочное тестирование нестандартных протоколов с использованием Citrix и J...Нагрузочное тестирование нестандартных протоколов с использованием Citrix и J...
Нагрузочное тестирование нестандартных протоколов с использованием Citrix и J...SQALab
 
Continuous performance testing
Continuous performance testingContinuous performance testing
Continuous performance testingSQALab
 
Конфиги вместо костылей. Pytestconfig и зачем он нужен
Конфиги вместо костылей. Pytestconfig и зачем он нуженКонфиги вместо костылей. Pytestconfig и зачем он нужен
Конфиги вместо костылей. Pytestconfig и зачем он нуженSQALab
 
Команда чемпионов в ИТ стихии
Команда чемпионов в ИТ стихииКоманда чемпионов в ИТ стихии
Команда чемпионов в ИТ стихииSQALab
 
API. Серебряная пуля в магазине советов
API. Серебряная пуля в магазине советовAPI. Серебряная пуля в магазине советов
API. Серебряная пуля в магазине советовSQALab
 
Добиваемся эффективности каждого из 9000+ UI-тестов
Добиваемся эффективности каждого из 9000+ UI-тестовДобиваемся эффективности каждого из 9000+ UI-тестов
Добиваемся эффективности каждого из 9000+ UI-тестовSQALab
 
Делаем автоматизацию проектных KPIs
Делаем автоматизацию проектных KPIsДелаем автоматизацию проектных KPIs
Делаем автоматизацию проектных KPIsSQALab
 
Вредные привычки в тест-менеджменте
Вредные привычки в тест-менеджментеВредные привычки в тест-менеджменте
Вредные привычки в тест-менеджментеSQALab
 
Мощь переполняет с JDI 2.0 - новая эра UI автоматизации
Мощь переполняет с JDI 2.0 - новая эра UI автоматизацииМощь переполняет с JDI 2.0 - новая эра UI автоматизации
Мощь переполняет с JDI 2.0 - новая эра UI автоматизацииSQALab
 
Как hh.ru дошли до 500 релизов в квартал без потери в качестве
Как hh.ru дошли до 500 релизов в квартал без потери в качествеКак hh.ru дошли до 500 релизов в квартал без потери в качестве
Как hh.ru дошли до 500 релизов в квартал без потери в качествеSQALab
 
Стили лидерства и тестирование
Стили лидерства и тестированиеСтили лидерства и тестирование
Стили лидерства и тестированиеSQALab
 
"Давайте не будем про качество"
"Давайте не будем про качество""Давайте не будем про качество"
"Давайте не будем про качество"SQALab
 
Apache.JMeter для .NET-проектов
Apache.JMeter для .NET-проектовApache.JMeter для .NET-проектов
Apache.JMeter для .NET-проектовSQALab
 
Тестирование геолокационных систем
Тестирование геолокационных системТестирование геолокационных систем
Тестирование геолокационных системSQALab
 
Лидер или босс? Вот в чем вопрос
Лидер или босс? Вот в чем вопросЛидер или босс? Вот в чем вопрос
Лидер или босс? Вот в чем вопросSQALab
 
От Зефира в коробке к Structure Zephyr или как тест-менеджеру перекроить внут...
От Зефира в коробке к Structure Zephyr или как тест-менеджеру перекроить внут...От Зефира в коробке к Structure Zephyr или как тест-менеджеру перекроить внут...
От Зефира в коробке к Structure Zephyr или как тест-менеджеру перекроить внут...SQALab
 

Mehr von SQALab (20)

Готовим стажировку
Готовим стажировкуГотовим стажировку
Готовим стажировку
 
Куда приводят мечты? или Искусство развития тестировщика
Куда приводят мечты? или Искусство развития тестировщикаКуда приводят мечты? или Искусство развития тестировщика
Куда приводят мечты? или Искусство развития тестировщика
 
Оптимизация Selenium тестов и ускорение их поддержки
Оптимизация Selenium тестов и ускорение их поддержкиОптимизация Selenium тестов и ускорение их поддержки
Оптимизация Selenium тестов и ускорение их поддержки
 
Автоматизация 0.0: 0 - бюджет, 0 - опыт программирования
Автоматизация 0.0: 0 - бюджет, 0 - опыт программированияАвтоматизация 0.0: 0 - бюджет, 0 - опыт программирования
Автоматизация 0.0: 0 - бюджет, 0 - опыт программирования
 
Нагрузочное тестирование нестандартных протоколов с использованием Citrix и J...
Нагрузочное тестирование нестандартных протоколов с использованием Citrix и J...Нагрузочное тестирование нестандартных протоколов с использованием Citrix и J...
Нагрузочное тестирование нестандартных протоколов с использованием Citrix и J...
 
Continuous performance testing
Continuous performance testingContinuous performance testing
Continuous performance testing
 
Конфиги вместо костылей. Pytestconfig и зачем он нужен
Конфиги вместо костылей. Pytestconfig и зачем он нуженКонфиги вместо костылей. Pytestconfig и зачем он нужен
Конфиги вместо костылей. Pytestconfig и зачем он нужен
 
Команда чемпионов в ИТ стихии
Команда чемпионов в ИТ стихииКоманда чемпионов в ИТ стихии
Команда чемпионов в ИТ стихии
 
API. Серебряная пуля в магазине советов
API. Серебряная пуля в магазине советовAPI. Серебряная пуля в магазине советов
API. Серебряная пуля в магазине советов
 
Добиваемся эффективности каждого из 9000+ UI-тестов
Добиваемся эффективности каждого из 9000+ UI-тестовДобиваемся эффективности каждого из 9000+ UI-тестов
Добиваемся эффективности каждого из 9000+ UI-тестов
 
Делаем автоматизацию проектных KPIs
Делаем автоматизацию проектных KPIsДелаем автоматизацию проектных KPIs
Делаем автоматизацию проектных KPIs
 
Вредные привычки в тест-менеджменте
Вредные привычки в тест-менеджментеВредные привычки в тест-менеджменте
Вредные привычки в тест-менеджменте
 
Мощь переполняет с JDI 2.0 - новая эра UI автоматизации
Мощь переполняет с JDI 2.0 - новая эра UI автоматизацииМощь переполняет с JDI 2.0 - новая эра UI автоматизации
Мощь переполняет с JDI 2.0 - новая эра UI автоматизации
 
Как hh.ru дошли до 500 релизов в квартал без потери в качестве
Как hh.ru дошли до 500 релизов в квартал без потери в качествеКак hh.ru дошли до 500 релизов в квартал без потери в качестве
Как hh.ru дошли до 500 релизов в квартал без потери в качестве
 
Стили лидерства и тестирование
Стили лидерства и тестированиеСтили лидерства и тестирование
Стили лидерства и тестирование
 
"Давайте не будем про качество"
"Давайте не будем про качество""Давайте не будем про качество"
"Давайте не будем про качество"
 
Apache.JMeter для .NET-проектов
Apache.JMeter для .NET-проектовApache.JMeter для .NET-проектов
Apache.JMeter для .NET-проектов
 
Тестирование геолокационных систем
Тестирование геолокационных системТестирование геолокационных систем
Тестирование геолокационных систем
 
Лидер или босс? Вот в чем вопрос
Лидер или босс? Вот в чем вопросЛидер или босс? Вот в чем вопрос
Лидер или босс? Вот в чем вопрос
 
От Зефира в коробке к Structure Zephyr или как тест-менеджеру перекроить внут...
От Зефира в коробке к Structure Zephyr или как тест-менеджеру перекроить внут...От Зефира в коробке к Structure Zephyr или как тест-менеджеру перекроить внут...
От Зефира в коробке к Structure Zephyr или как тест-менеджеру перекроить внут...
 

Fuzzing - автоматическое тестирование безопасности

  • 1. Software quality assurance days 17 Международная конференция по вопросам качества ПО sqadays.com Минск. 29–30 мая 2015 Катерина Овеченко Itera. Киев, Украина Fuzzing – автоматическое тестирование безопасности
  • 2. Fuzzing – автоматическое тестирование безопасности Катерина Овеченко, Itera О себе 5+ лет в тестировании. Специалист по ручному тестированию и построению процесса тестирования на проектах. 2+ года в тестировании безопасности: от построения компетенции до координации проектов для внешних заказчиков. Сейчас занимаю должность QA coordinator в компании Itera. Докладчик конференций, один из основателей сообщества OWASP Украина, организатор конференции QA Fest.
  • 3. Fuzz тестирование (aka Fuzzing) – это подход к поиску уязвимостей, обычно полу- или полностью автоматизированный, при котором невалидные, непредвиденные или случайные данные подаются на вход в приложение. Fuzzing – автоматическое тестирование безопасности Катерина Овеченко, Itera Fuzzing – что это?
  • 4. Fuzzing – автоматическое тестирование безопасности Катерина Овеченко, Itera Поиск уязвимостей White-box подход
  • 5. Fuzzing – автоматическое тестирование безопасности Катерина Овеченко, Itera Поиск уязвимостей Black-box подход
  • 6. Приложение Файлы Протоколы Fuzzing – автоматическое тестирование безопасности Катерина Овеченко, Itera Уровни fuzzing Память Драйвера URL адреса Импорт-экспорт UI и Формы Запросы
  • 7. Fuzzing – автоматическое тестирование безопасности Катерина Овеченко, Itera Какие баги находит fuzzing? Ошибки в обработке входных данных Переполнение буфера Отказ в обслуживании (DoS) Атаки по обходу директорий (directory traversal) XSS и SQL инъекцииУтечки памяти
  • 8. Fuzzing – автоматическое тестирование безопасности Катерина Овеченко, Itera Fuzzing: Основные шаги Определяем цель Задаем интерфейсы ввода данных Генерируем тестовые данные Посылаем данные в приложение Проверяем на исключения Определяем уязвимость
  • 9. Fuzzing – автоматическое тестирование безопасности Катерина Овеченко, Itera Шаг 1: Определяем цель Что будем фаззить? На каком уровне? Есть ли известные уязвимости? Функциональность с особым риском?
  • 10. Шаг 2: Определяем интерфейсы ввода данных Fuzzing – автоматическое тестирование безопасности Катерина Овеченко, Itera На уровне кода приложения На уровне интерфейса приложения
  • 11. Fuzzing – автоматическое тестирование безопасности Катерина Овеченко, Itera Шаг 3: Генерируем тестовые данные
  • 12. Fuzzing – автоматическое тестирование безопасности Катерина Овеченко, Itera Пример модели TFTP PACKET STRUCTURE ---------------------------------------------- | x00x01 | Filename | 0 | Mode | 0 | ---------------------------------------------- FUZZ TEMPLATE <DataModel name="tftprrx"> <Blob name="opcode" valueType="hex" value="00 01" token="true"/> <String name ="filename" value="filename.txt" nullTerminated="true" /> <String name="mode" value="NETASCII" token="true" nullTerminated="true"/> </DataModel> <StateModel name="State1" initialState="Initial"> <State name="Initial"> <Action type="output"> <DataModel ref="tftprrx" /> </Action> </State> </StateModel> …
  • 13. Автоматизация Fuzzing – автоматическое тестирование безопасности Катерина Овеченко, Itera Генерация данных используя model-based или попарное тестирование Выбрать набор данных из продуктовой среды, учитывая code coverage Использование существующей автоматизации
  • 14. Шаг 4: Посылаем данные в приложение Fuzzing – автоматическое тестирование безопасности Катерина Овеченко, Itera
  • 15. Fuzzing – автоматическое тестирование безопасности Катерина Овеченко, Itera Шаг 5: Проверяем на исключения Проверяем: - Логи фаззера - Процессы - HTML ответы (response) - Регистр - Сообщения об ошибках - Статус коды - Память - Системные логи и т.д.
  • 16. Fuzzing – автоматическое тестирование безопасности Катерина Овеченко, Itera Шаг 6: Определяем уязвимость
  • 17. Fuzzing – автоматическое тестирование безопасности Катерина Овеченко, Itera Fuzzers vs
  • 18. Демо Fuzzing – автоматическое тестирование безопасности Катерина Овеченко, Itera
  • 19. Fuzzing – автоматическое тестирование безопасности Катерина Овеченко, Itera Pros: •Легко автоматизируется •Выполняет много проверок •Множество вариаций входящих данных Cons: •Простые ошибки •Тяжело оценить покрытие тестами •Технические знания для фаззинга (API, протоколы и драйвера)
  • 20. Контакты Fuzzing – автоматическое тестирование безопасности Катерина Овеченко, Itera Mail kateryna.ovechenko@iteraconsulting.com Skype kateryna.ovechenko Kateryna Ovechenko

Hinweis der Redaktion

  1. Vulnerability is identified, but it’s not enough. Need to analyze the risk of it and define potential impact. We communicate with business with the terms of risk, not vulnerability… Skills Disassembly Debugging Vulnerability types Stack overflows Heap overflows Integer handling Overflows Signedness DoS Out of bounds reads Infinite loops NULL pointer dereferences Logic errors Windows WMF vulnerability (MS06-001) Format strings Race conditions Skills HTTP HTML Client side scripting SQL Vulnerability types Denial of service Cross site scripting (XSS) SQL injection Directory traversal/Weak access control Weak authentication Weak session management (cookies) Buffer overflow Improperly supported HTTP methods Remote Command Execution Remote Code Injection Vulnerable Libraries HTTP Request Splitting Format Strings
  2. FuzzDB — лишь набор текстовых файлов с шаблонами, отсортированных по платформам, типам атак, языкам. Использовать FuzzDB можно где угодно, например в самописном web-сканнере директорий или в профессиональном инструменте для проведения пен-тестов.
  3. Protocols and file formats imply norms, which are sometimes blurry, very complicated or badly implemented : that&amp;apos;s why developers sometimes mess up in the implementation process (because of time/cost constraints). That&amp;apos;s why it can be interesting to take the opposite approach: take a norm, look at all mandatory features and constraints, and try all of them; forbidden/reserved values, linked parameters, field sizes. That would be conformance testing oriented fuzzing.
  4. Фаззинг по своей сути является динамической технологией тестирования безопасности. Под статической технологией я подразумеваю любые программные средства, которые производят тестирование кода по каким-то определенным шаблонам. Средства статического анализа кода позволяют обрабатывать большее количество кода благодаря автоматизации, но результаты строго ограничены и могут быть ложными, что не есть гуд. Фаззинг же динамичен, он не имеет строгих шаблонов и критериев и может быть просто автоматизирован, выполняясь непрерывно, но он работает случайным образом и может иметь проблемы при работе с более глубокими частями кода. Поэтому наилучшим решением проблемы будет сочетание нескольких этапов проверки исходного кода: 1. Проверка на наличие багов человеком 2. Проверка средствами статического анализатора 3. Фаззинг For summary Fuzz testing can be combined with other testing techniques. White-box fuzzing uses symbolic execution and constraint solving.[16] Evolutionary fuzzing leverages feedback from an heuristic (E.g., code coverage in grey-box harnessing,[17] or a modeled attacker behavior in black-box harnessing[18]) effectively automating the approach of exploratory testing. Фаззинг находит ошиьки, которые будут пропущены при обыном тестировании. Несмотря на трудности в настройке и использовании, эта техника очень эффективна для ....
  5. Фаззер – средство (приложение или фреймворк), позволяющее проводить автоматизированный фаззинг исходного кода, файлов, приложений и прочего. tools (standalone tools which were designed to fuzz a single program or protocol) and frameworks (have an api that can be used to easily create broken data and implement specific protocols) http://www.infosecinstitute.com/blog/2005/12/fuzzers-ultimate-list.html Идея: сделать свое фото со знаком live long and prosper