Upgrade to Pro — share decks privately, control downloads, hide ads and more …

"SDLC, Bug Bounty и разбор фильтров", Сергей Бе...

"SDLC, Bug Bounty и разбор фильтров", Сергей Белов, Mail.Ru Group

OWASP Russia MeetUp #7

OWASP Moscow

March 05, 2018
Tweet

More Decks by OWASP Moscow

Other Decks in Technology

Transcript

  1. ПЛАН • Разработка новых фич • Поэтапные выкатки и bug

    bounty • Разбор фильтров и работа с уязвимостями
  2. И ЕЕ ЖИЗНЕННЫЙ ЦИКЛ НОВАЯ ФИЧА Её можно делать? ✦

    Нет - закрываем разработку ✦ Да - оцениваем, проговариваем риски и думаем, кого она задевает (другие продукты и отделы) Фичу нужно тестировать отделом безопасности? ✦ Нет - добавляем тесткейсы в тикет, заберет и сделает отдел QA ✦ Да - ставим метку "Тестирование безопасности". Фича не выкатывается без аппрува безопасности
  3. СТОРОНА ОТДЕЛА БЕЗОПАСНОСТИ • Новый аудит на фичу? Заводим таск

    в проекте Information Security • Назначается ответственный, связывается с таском фичи в проекте Mail • Все уязвимости заводятся в проекте разработки, с обратной связкой с таском в проекте Information Security Это позволяет найти все аудиты и неисправленные уязвимости, если такие есть
  4. СТОРОНА РАЗРАБОТКИ И QA Тестирование принесет замечательные баги, особенно при

    упоре на «негативные» тесты (QA MeetUp от 06 июля 2017, Нижний Новгород) • Нужны XSS? Возьмите автотесты https://github.com/cure53/ DOMPurify • Нужны IDOR? Пропишите в таске нужные сценарии • Тайминги, экспайры? Пишите все в таск
  5. СТОРОНА РАЗРАБОТКИ И QA Разработка может сама поискать у себя

    баги. Передать AFL - мегаудобно, разработчики сами подменят stdin, не надо тратить время на развертывание окружения и т.п. Можно посмотреть доклад - “Расширяем инструментарий — тулзы пентестеров в разработке и тестировании” на CodeFest 2016
  6. ПОЭТАПНЫЕ ВЫКАТКИ • Выкатка на определенные почтовые ящики • Выкатка

    на % • Выкатка на пользователей нужного домена (@mail.ru, @bk.ru, @example.com) • Выкатка на бета-юзеров
  7. BUG BOUNTY • Баг хантеры вступают в бета-тестирование • Присылают

    баги и мы за них платим :-) Следующий этап - выкатка фич на баг-хантеров до бета юзеров
  8. РАЗБОР ФИЛЬТРОВ ТИКЕТ НА HACKERONE ТИКЕТ В HKRN (JIRA) ТИКЕТ

    В PROJECT_NAME (JIRA) Triaged New New ТИКЕТ НА HACKERONE ТИКЕТ В HKRN (JIRA) ТИКЕТ В PROJECT_NAME (JIRA) Triaged New Fixed ТИКЕТ НА HACKERONE ТИКЕТ В HKRN (JIRA) ТИКЕТ В PROJECT_NAME (JIRA) Triaged Fixed Fixed ТИКЕТ НА HACKERONE ТИКЕТ В HKRN (JIRA) ТИКЕТ В PROJECT_NAME (JIRA) Closed Fixed Fixed
  9. РАЗБОР ФИЛЬТРОВ Пример запроса на поиск открытых тикетов: project in

    (MAIL) AND issueFunction in linkedIssuesOf("project in (HKRN,’IS',scan) AND status in (work,new,confirmed, ready) ", "depends on”) AND status not in (closed, done, released)
  10. РАЗБОР ФИЛЬТРОВ Двойная (или тройная) линковка тикетов позволяет “не забыть”

    про таски и отхендлить их до победного в любом процессе (bug bounty, аудиты, сканирования, улучшения)