Your SlideShare is downloading. ×
0
очир абушинов
очир абушинов
очир абушинов
очир абушинов
очир абушинов
очир абушинов
очир абушинов
очир абушинов
очир абушинов
очир абушинов
очир абушинов
очир абушинов
очир абушинов
очир абушинов
очир абушинов
очир абушинов
очир абушинов
очир абушинов
очир абушинов
очир абушинов
очир абушинов
очир абушинов
очир абушинов
очир абушинов
очир абушинов
очир абушинов
очир абушинов
очир абушинов
очир абушинов
очир абушинов
очир абушинов
очир абушинов
очир абушинов
очир абушинов
очир абушинов
очир абушинов
очир абушинов
очир абушинов
очир абушинов
очир абушинов
очир абушинов
очир абушинов
очир абушинов
очир абушинов
очир абушинов
очир абушинов
очир абушинов
очир абушинов
очир абушинов
очир абушинов
очир абушинов
очир абушинов
очир абушинов
очир абушинов
очир абушинов
очир абушинов
очир абушинов
очир абушинов
очир абушинов
очир абушинов
очир абушинов
очир абушинов
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

очир абушинов

4,980

Published on

0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
4,980
On Slideshare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
49
Comments
0
Likes
1
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Очир Абушинов Особенности тестирования безопасности ПО
  • 2. Содержание Что такое тестирование безопасности и зачем оно нужно Особенности Стандарты Типичные уязвимости Методы Сложности
  • 3. Что такое тестирование безопасности?
  • 4. Конфиденциальность Целостность Аутентификация Авторизация Доступность Неотказуемость
  • 5. Почему важно?
  • 6. Информация и контроль доступа
  • 7. Информация и контроль доступа Стабильность системы
  • 8. Информация и контроль доступа Стабильность системы Целостность системы
  • 9. Информация и контроль доступа Стабильность системы Целостность системы Экономическая эффективность
  • 10. Где может быть нужно тестирование безопасности?
  • 11. Веб-приложения
  • 12. Приложения с важной коммерческой или персональной информацией
  • 13. Платежные системы
  • 14. Приложения, требующие целостности информации
  • 15. Социальные приложения
  • 16. Приложения с коммерческим лицензированием
  • 17. Особенности тестирования безопасности ПО
  • 18. Важность «негативного» тестирования
  • 19. Думать как хакер
  • 20. Качество тестирования безопасности ПО сложно измерить
  • 21. Важность нефункциональных требований
  • 22. Тестирование на основе рисков (Risk-based)
  • 23. Уязвимости это такие же баги
  • 24. Необходимость тестирования методом «белого» ящика
  • 25. Стандарты для тестирования безопасности ПО
  • 26. OSSTMM (http://www.isecom.org/osstmm/)
  • 27. OSSTMM (http://www.isecom.org/osstmm/) ISACA (http://www.isaca.org)
  • 28. OSSTMM (http://www.isecom.org/osstmm/) ISACA (http://www.isaca.org) ISSAF (http://www.oissg.org/issaf)
  • 29. OSSTMM (http://www.isecom.org/osstmm/) ISACA (http://www.isaca.org) ISSAF (http://www.oissg.org/issaf) NIST Guideline (http://csrc.nist.gov/publications/nistpubs/800-115/SP800-115.pdf)
  • 30. OSSTMM (http://www.isecom.org/osstmm/) ISACA (http://www.isaca.org) ISSAF (http://www.oissg.org/issaf) NIST Guideline (http://csrc.nist.gov/publications/nistpubs/800-115/SP800-115.pdf) OWASP Guide (http://www.owasp.org)
  • 31. OSSTMM (http://www.isecom.org/osstmm/) ISACA (http://www.isaca.org) ISSAF (http://www.oissg.org/issaf) NIST Guideline (http://csrc.nist.gov/publications/nistpubs/800-115/SP800-115.pdf) OWASP Guide (http://www.owasp.org) CHECK (http://cesg.gov.uk/find_a/check/index.cfm)
  • 32. OSSTMM (http://www.isecom.org/osstmm/) ISACA (http://www.isaca.org) ISSAF (http://www.oissg.org/issaf) NIST Guideline (http://csrc.nist.gov/publications/nistpubs/800-115/SP800-115.pdf) OWASP Guide (http://www.owasp.org) CHECK (http://cesg.gov.uk/find_a/check/index.cfm) PROTOS (https://www.ee.oulu.fi/research/ouspg/Protos)
  • 33. Типичные уязвимости
  • 34. Неверная валидация входных данных
  • 35. Неверная валидация входных данных Внедрение параметров (XSS, CSRF)
  • 36. Неверная валидация входных данных Внедрение параметров (XSS, CSRF) Переполнение буфера
  • 37. Неверная валидация входных данных Внедрение параметров (XSS, CSRF) Переполнение буфера Инъекции
  • 38. Неверная валидация входных данных Внедрение параметров (XSS, CSRF) Переполнение буфера Инъекции Неверное завершение сессий
  • 39. Неверная валидация входных данных Внедрение параметров (XSS, CSRF) Переполнение буфера Инъекции Неверное завершение сессий Аутентификация или авторизация
  • 40. Методы тестирования безопасности ПО
  • 41. Анализ архитектуры и построение модели угроз и рисков
  • 42. Угроза Вероятность (от 1 до 10) Ущерб (от 1 до 10) Подверженность (от 1 до 10) Приоритет Отказ в обслуживании (DDOS) 4 8 1 2 Вредоносный код 1 6 1 4 Инсайдеры 2 9 2 3 Физическое повреждение аппаратуры 1 9 1 5 Отказ БД 2 10 1 1 Потери при передаче данных 3 2 3 7 Сетевой взлом 1 9 1 6
  • 43. Поиск уязвимостей в исходном коде Ревью кода разработчиками Анализ кода при помощи утилит статического и динамического анализа
  • 44. Fuzz тестирование Тестовые скрипты, генерирующие случайные данные Open-source утилиты для фаззинга
  • 45. Тестирование на проникновение Веб-сканнеры(skipfish, wapiti, etc.) Анализ сети, используя OpenVAS, nmap и другие утилиты Ручное тестирование на проникновение
  • 46. Тестирование, основанное на рисках (Risk-based) Основано на матрице угроз и рисков Тестирование «негативных» сценариев Концентрация на том, что нельзя сделать Думать, как злоумышленник
  • 47. Нефункциональное тестирование Нагрузочное тестирование Стресс тестирование Объемное тестирование Тестирование масштабируемости Юзабилити тестирование
  • 48. Инструменты тестирования Сканирование исходного кода (RATS, cppcheck, FindBugs) Тестирование на проникновение (OpenVAS, Nmap, w3af) Сканирование веб-сайтов (Nikto, Pixy, Acutenix) Снифферы (NetCat, Wireshark) Модифицированные нагрузочные тесты
  • 49. Сложности в тестировании безопасности
  • 50. Кроссплатформенное ПО Приложение может вести себя по разному Много конфигураций Разное «железо» Разные драйверы
  • 51. Эмуляция аппатуры для защиты ПО
  • 52. Уязвимости в используемом ПО
  • 53. Требования к безопасности ПО Приложение не должно взламываться Приложение не должно «падать» Доступ по сети должен быть безопасным Как это протестировать?
  • 54. Этапы тестирования безопасности Анализ угроз Анализ уявимостей Матрица угроз и рисков Определение критериев защищенности Простые тесты Анализ исходного кода Сбор информации Нагрузочные тесты Тесты на проникнов ние Внешняя экспертиза Решение проблем Fuzz тестирование Нефункциональное тестирование Тестирование, основанное на рисках Подготовка Тестирование Планирование Проектирование Разработка Внедрение
  • 55. Выводы Тестирование безопасности - это необходимый этап для компаний, которым важен безопасный “софт”
  • 56. Выводы Тестирование безопасности - это необходимый этап для компаний, которым важен безопасный “софт” Невозможно измерить качество тестирования безопасности
  • 57. Выводы Тестирование безопасности - это необходимый этап для компаний, которым важен безопасный “софт” Невозможно измерить качество тестирования безопасности Не стоит думать, что функционального тестирования достаточно
  • 58. Выводы Тестирование безопасности - это необходимый этап для компаний, которым важен безопасный “софт” Невозможно измерить качество тестирования безопасности Не стоит думать, что функционального тестирования достаточно Можно и необходимо постоянно изучать новые технологии
  • 59. Выводы Тестирование безопасности - это необходимый этап для компаний, которым важен безопасный “софт” Невозможно измерить качество тестирования безопасности Не стоит думать, что функционального тестирования достаточно Можно и необходимо постоянно изучать новые технологии Тестирование безопасности похоже на исследовательское
  • 60. Выводы Тестирование безопасности - это необходимый этап для компаний, которым важен безопасный “софт” Невозможно измерить качество тестирования безопасности Не стоит думать, что функционального тестирования достаточно Можно и необходимо постоянно изучать новые технологии Тестирование безопасности похоже на исследовательское Необходимо проводить экспертизу
  • 61. Выводы Тестирование безопасности - это необходимый этап для компаний, которым важен безопасный “софт” Невозможно измерить качество тестирования безопасности Не стоит думать, что функционального тестирования достаточно Можно и необходимо постоянно изучать новые технологии Тестирование безопасности похоже на исследовательское Необходимо проводить экспертизу Особое внимание архитектуре и компонентам
  • 62. Спасибо за внимание Вопросы? Очир Абушинов o.abushinov@wwpass.com

×