В последнее время все чаще появляются новости об атаках хакеров на крупные организации. Согласно исследованию компании Cybersecurity Ventures, международного эксперта по информационной безопасности, в 2019 году кибератаки происходили каждые 14 секунд. Также Cybersecurity Ventures заявляют, что сумма планетарного ущерба от кибератак может вырасти до 6 трлн долларов к 2021 году.
Как обезопасить свой бизнес и не допустить взлом корпоративной сети и кражу данных? Одно из возможных решений проблемы — программа Bug Bounty. Опережай хакеров — обратись к «белым» хакерам!
Bug Bounty («вознаграждение за ошибку») — это программа, которая предусматривает денежное вознаграждение или другие бенефиты за нахождение багов, эксплойтов и уязвимостей в работе ПО. Программы Bug Bounty реализованы многими компаниями, в том числе Facebook, Google, Reddit, Apple, Microsoft и др.
Благодаря Bug Bounty багхантеры могут получить неплохой доход. Например, размер одной из самых крупных наград составил 200 000 долларов: так компания Microsoft поблагодарила «белого» хакера за найденную уязвимость в Hyper-V. Apple готова заплатить 1 млн долларов за сообщения об уязвимостях, с помощью которых злоумышленник может осуществить сетевую атаку без участия пользователя, позволяющую выполнить код на уровне ядра с сохранением персистентности.
Способы запуска программы Bug Bounty
Компания может запустить подобную программу самостоятельно, своими силами организовав все процессы и взаимодействия. Опубликуйте на сайте информацию: приглашение участвовать, форму и размер вознаграждения, контактные данные. Дополнительно можно напоминать о Bug Bounty и клиентам в маркетинговых рассылках. За нахождение некритичного бага компании часто дарят мерч, скидки на свою продукцию или сертификаты.
Альтернативным решением может быть запуск внутренней программы Bug Bounty: в этом случае мы обращаемся к сотрудникам компании, лояльной и заинтересованной аудитории. За найденные баги заранее предусмотрите подарки сотрудникам и/или премии.
Еще один способ — обратиться к специальным платформам. На каждой такой площадке работает целое сообщество «белых» хакеров. Они предоставляют компании репорты (отчеты), в которых описаны найденные уязвимости и иногда необходимые шаги для их устранения.
Если вы решили сотрудничать с Bug Bounty платформой, предлагаем вам пару рекомендаций от экспертов Timeweb. Мы запустили Bug Bounty программу около года назад и продолжаем работать с багхантерами на одной из платформ. За это время мы получили около 70 репортов и исправили несколько критических уязвимостей.
Запускаем Bug Bounty на платформе
Подготовка
- Убедитесь, что вы сделали все, что могли
Перед запуском программы постарайтесь своими силами отыскать все возможные уязвимости. После этого можно обращаться к багхантерам. Конечно, найти самим все баги нереально, поэтому воспринимайте Баг Баунти как дополнительный способ поиска уязвимостей.
- Анализируйте экономическую целесообразность
А стоит ли вообще запускать Bug Bounty программу? Насколько это экономически обосновано? Готовы ли ваши продукты к тому, что сейчас на них накинется толпа голодных багхантеров? Есть и другие способы вытащить максимум уязвимостей.
Например, можно расширить компетенции своего отдела безопасности. Скорее всего, такой вариант будет дешевле, но он позволит найти меньше уязвимостей, чем Bug Bounty программа. Можно обратиться к внешним организациям для проведения аудита. Так вы обнаружите нестандартные, более сложные проблемы.
В случае сотрудничества с Bug Bounty платформами и багхантерами удельная стоимость одной уязвимости будет стоить дороже по сравнению с другими вариантами, но и сложность найденных багов здесь выше.
- Воспользуйтесь услугами внешнего аудита ИБ для одного процесса, продукта или компании в целом
Опционально, но перед запуском программы будет особенно полезно проанализировать все существующие проблемы. Кроме того, внешний аудит сэкономит вам деньги.
Старт Bug Bounty программы
- Выбор платформы
Сейчас, получив опыт работы с Bug Bounty, мы рассматриваем возможность реализовать программу самостоятельно. Однако на момент запуска ни у кого из нас не было понимания, как правильно выстроить процесс, поэтому мы обратились за помощью к Bug Bounty платформам. Проанализировав существующие варианты, мы выбрали наиболее подходящий для нас, оптимальный по количеству багхантеров и стоимости услуг.
Наиболее известные Bug Bounty платформы:
- Hackerone
- Bugcrowd
- Synack
- HackenProof
- Intigriti
- YesWeHack
- Bugbounty Japan
- Отдельно стоит отметить платформу Open Bug Bounty — некоммерческая Bug Bounty платформа, которая объединяет ИБ специалистов-энтузиастов и популяризирует этичный хакинг. Исследователи могут сообщить о найденном баге в работе любого ПО, за что компании предоставляет вознаграждение (денежные выплаты, мерч, скидки или собственную продукцию). Timeweb предоставляет багхантерам бесплатный хостинг.
- Перелопатьте багтрекер
Важно вдоль и поперек знать продукт, который вы планируете отдать на растерзание багхантерам: какие проблемы есть сейчас, какие были, появляются ли систематические ошибки. Эта информация позволит вам сформировать корректный скоуп (scope) — емко, но исчерпывающе дать вводные данные и описать запрос для багхантеров.
В скоупе мы указываем: за какие баги предусмотрена награда, какие уязвимости нам уже известны, как зависит премия от критичности найденного бага и полноты репорта. В скоупе обозначается предметная область, границы тестирования и правила сотрудничества.
- Потратьте достаточно времени на скоуп
Чем больше, тем лучше! Скоуп своего рода публичная оферта с багхантерами. На ее основе решаются, например, все спорные инциденты.
Если все опишем тщательно и подробно — больше шансов получить то, что нам действительно нужно, а нерелевантных репортов, наоборот, будет меньше. Если сформировать скоуп невнимательно, придется платить награду за каждый мелкий и неинтересный баг.
- Не бойтесь устанавливать собственный уровень вознаграждения
Сразу отметим, что политики или лучших практик, как формировать размер награды, просто не существует. Да, можно обратиться к менеджерам Bug Bounty платформы, которые помогут и описать скоуп, и определить уровень вознаграждения. Однако нужно понимать, что это заинтересованные лица, и они опираются на опыт других компаний. При этом у вас могут быть совершенно другие проблемы, процессы и потребности.
Нам кажется, при определении размера вознаграждения стоит опираться на рекомендации, связанные с менеджментом рисков: оцените сложность поиска уязвимости в текущем продукте. Если продукт еще сырой, то и предлагать большую награду странно. При условии, что продукт на рынке давно и многие успели его изучить, можно назначить достойное вознаграждение.
- Установите прозрачную зависимость между критичностью ошибки и размером награды
Чем прозрачнее, тем меньше вопросов к вам! Хорошая практика — привязать размер награды к шкале CVSS (открытый стандарт для оценки критичности уязвимости). В Timeweb мы самостоятельно оцениваем критичность ситуации в зависимости от влияния на бизнес.
- Выработайте регламент работы с репортами
Заранее обсудите, кто за что отвечает: какой отдел проверяет репорт на валидность и релевантность; как быстро разработчики берут в работу репорты; как зависит эта скорость от критичности бага. Если не выработать регламент работы внутри компании, можно нарушить соглашение с платформой, провалить сроки и не успевать вовремя обрабатывать репорты от багхантеров.
Work in progress
- Будьте лояльны к хантерам
Здесь они ваши партнеры и помощники.
- Не жадничайте
Соблюдайте соглашение с платформой, вовремя реагируйте на репорты и награждайте багхантеров за хорошую работу.
- Но оставайтесь начеку
Да, мы все люди, и хантеры тоже могут хитрить и лукавить, выдавая одну проблему за разные уязвимости. Будьте внимательны! Важно оговорить, что является одной уязвимостью, а что разными, и подробно описать скоуп, чтобы избежать подобных конфликтов.
Если вы пока не готовы запускать большую кампанию и выделять большой бюджет на работу с Bug Bounty платформами, попробуйте начать с малого: например, эффективно обрабатывать обратную связь от клиентов и использовать ее на благо компании. Подарки или другие вознаграждения в таком случае будут приятным бонусом для пользователей.
Комментарии
Жаль не наткнулся на что-то подобное раньше, когда делали Bug Bounty для blockchain проекта, очень бы помогло.