Оффтоп Mark Savchuk
589

Что такое баг-баунти платформы и как они работают?

Все чаще и чаще мы слышим из новостей о “хакерских атаках” и “взломах”. И это не случайно: согласно отчету организации Center for Strategic and International Studies, мировая экономика из-за киберпреступности теряет около $600 млрд ежегодно.

В закладки

Спрос на услуги кибербезопасности также растет и в 2018 году составит около $96 млрд. На фоне возникновения все новых угроз, рождаются и новые инновационные решения и методы борьбы с хакерскими атаками. Одним из таких решений являются Баг-Баунти Платформы. В этой статье мы вам расскажем о том что такое баг-баунти платформы и как они помогают компаниям защититься от современных киберугроз.

Что такое баг-баунти платформа?

Перед тем как мы расскажем об этом, необходимо объяснить что такое баг-баунти программа.

Баг-баунти программа - это процесс, в котором компания привлекает сторонних специалистов по кибербезопасности (в индустрии мы называем их “белые хакеры” или “рисерчеры”) для тестирования своего программного обеспечения на уязвимости за монетарное вознаграждение. За каждую найденную уязвимость (баг) рисерчер получает вознаграждение (баунти).

Компания публично оглашает скоуп (от англ. “Scope” - “объем”) работ, уровень вознаграждения за уязвимости и любой желающий может зарегистрироваться и принимать участие в баг-баунти программе.

Однако, на практике, далеко не каждая компания может позволить себе провести баг-баунти программу самостоятельно.

Почему? Потому что большинство компаний к этому не готовы:

  • Если вы не Apple, Google или Пентагон, про вас мало кто знает. Соответственно когда вы скажите всему миру “ура, мы запустили баг-баунти программу, налетая” - к вам никто не придет. Кто вы такие? Почему рисерчеру стоит тратить на вас время? Будете ли вы выплачивать баунти или начнете “пропадать”? Никто вас не знает, никто не знает насколько профессионально вы подходите к делу. Для белых хакеров это большой риск.
  • Часто у компаний нет должной инфраструктуры и ресурсов для того чтобы принимать и обрабатывать репорты рисерчеров. Кто будет верифицировать уязвимости, скоуп работ, кто будет каждый день общаться с рисерчерами?

Большинство компаний не обладает достаточным опытом и квалификацией для того, чтобы качественно провести собственную баг-баунти программу.

Поэтому, компании прибегают к помощи так называемых баг-баунти платформ, таких как HackenProof. Это компании, которые специализируются на проведении баг-баунти программ.

Что из себя представляет баг-баунти платформа?

Любая баг-баунти платформа имеет три составляющие:

  • Сообщество белых хакеров. Чем больше сообщество, тем сильнее баг-баунти платформа. Это одна из самых важных частей баг-баунти платформы. Компании нарабатывают сообщество белых хакеров годами, тратя большие усилия и ресурсы на комьюнити, чтобы оно постоянно росло.
  • Собственная CRM-система, для обработки уязвимостей, которые присылают рисерчеры.
  • Помимо CRM-системы и комьюнити белых хакеров, компания располагает своей “In-house” командой специалистов по кибербезопасности, которая занимается проверкой багов которые присылают рисерчеры (таких сотрудников называют - триажерами, а сам процесс - “триаж”). Триажеры также общаются с клиентами.

Как проходит процесс баг баунти программы?

  • К баг-баунти платформе обращается клиент, который хочет провести баг-баунти программу для того чтобы протестировать свои продукты.
  • Баг баунти платформа вместе с клиентом составляют так называемый “скоуп” работ. Это документ который детально описывает какие именно уязвимости ищет клиент, на каких ресурсах нужно их искать, какова ценовая политика, и как именно ресерчерам присылать уязвимости на платформу.
  • Баг-баунти платформа публикует программу на своем сайте и запускает маркетинговые активности, привлекая белых хакеров принять участие в программе. С этого момента баг-баунти программа считается открытой.
  • Начинается сама баг-баунти программа. Ресерчеры находят уязвимости в тестируемом продукте и присылают на сайт баг-баунти платформы через специализированную CRM систему.
  • Внутренняя команда триажеров верифицирует каждую присланную уязвимость: проверяет является ли уязвимость уникальной (или была уже найдена другим рисерчером), является ли уязвимость валидной (можно ли ее повторить), находится в пределах скоупа.
  • После того как баг был верифицирован командой триажеров, формируется отчет, который направляется клиенту. Это готовый отчет о баге, где детально расписано о том как его воспроизвести и что нужно сделать чтобы “закрыть дыру”.

Шаги 4-5-6 повторяются по кругу. Большие компании могут проводить баг-баунти программы месяцами, а иногда даже годами. Количество багов найденных в одной баг баунти программе может варьироваться от единиц до сотен.

Ну ок, хорошо, баг-баунти программы это инновационный подход, а баг-баунти платформы помогают компаниям эффективно проводить баг-баунти программы.

В чем тогда преимущество баг-баунти платформы над обычной компанией, которая предоставляет услуги по кибербезопасности, и “где тут гешефт”?

Баг-баунти платформы имеют несколько ключевых преимуществ:

  • Доступ к человеческому капиталу

Стандартная компания по предоставлению услуг по кибербезопасности, имеет в своем распоряжении в среднем 5-20 сотрудников которые будут тестировать ваш софт. В то время как на баг-баунти платформе зарегистрированы сотни или даже тысячи специалистов, которые специализируются на разных сферах (веб, мобайл, блокчейн протоколы, платежные системы, смарт контракты и т.д.). Баг-баунти платформы имеют доступ к гораздо большему человеческому капиталу чем стандартные компании по предоставлению услуг по кибербезопасности. Это своего рода “аутсорс” услуг по кибербезопасности на весь мир.

  • Время тестирования

Тест на проникновение обычно длится около месяца или двух, в то время как баг-баунти программа длится месяцами или даже годами (и все это время ресерчеры будут активно пытаться найти уязвимости в вашем продукте). При таком длительном тестировании, вероятность того что уязвимость не заметят значительно снижается.

  • Система вознаграждения

Стандартная компания по предоставлению услуг по кибербезопасности, получает вознаграждение за процесс (проведению теста на проникновение). Клиент заплатит вне зависимости от того сколько багов найдет компания. В то время как баг-баунти программа вознаграждает белых хакеров за подтвержденные баги. То есть система вознаграждения делает акцент именно на количество уязвимостей, а не на сам процесс.

Наш мир становится все более и более “диджитализированным”, продукты более сложными. Компании все больше и больше используют онлайн сервисы для своей работы. Каждый из них обновляясь, может содержать в себе уязвимости, которые хакеры могут использовать и нанести большой вред компаниям.

Мы должны поменять свое мировоззрение и принять тот факт, что защита от кибер угроз больше не может быть дискретной (проверка софта на уязвимости время от времени), она должна стать постоянной (постоянная проверка софта на уязвимости). Только так компании могут эффективно защититься от хакеров.

#кибербезопасность

Материал опубликован пользователем. Нажмите кнопку «Написать», чтобы поделиться мнением или рассказать о своём проекте.

Написать
{ "author_name": "Mark Savchuk", "author_type": "self", "tags": ["\u043a\u0438\u0431\u0435\u0440\u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u044c"], "comments": 3, "likes": 39, "favorites": 10, "is_advertisement": false, "subsite_label": "flood", "id": 44459, "is_wide": false }
00
дни
00
часы
00
мин
00
сек
(function(){ var banner = document.querySelector('.teaserSberbank'); var isAdsDisabled = document.querySelector('noad'); if (!isAdsDisabled){ var countdownTimer = null; var timerItem = document.querySelectorAll('[data-sber-timer]'); var seconds = parseInt('15388' + '59599') - now(); function now(){ return Math.round(new Date().getTime()/1000.0); } function timer() { var days = Math.floor(seconds / 24 / 60 / 60); var hoursLeft = Math.floor((seconds) - (days * 86400)); var hours = Math.floor(hoursLeft / 3600); var minutesLeft = Math.floor((hoursLeft) - (hours * 3600)); var minutes = Math.floor(minutesLeft / 60); var remainingSeconds = seconds % 60; if (days < 10) days = '0' + days; if (hours < 10) hours = '0' + hours; if (minutes < 10) minutes = '0' + minutes; if (remainingSeconds < 10) remainingSeconds = '0' + remainingSeconds; if (seconds <= 0) { clearInterval(countdownTimer); } else { timerItem[0].textContent = days; timerItem[1].textContent = hours; timerItem[2].textContent = minutes; timerItem[3].textContent = remainingSeconds; seconds -= 1; } } timer(); countdownTimer = setInterval(timer, 1000); } else { banner.style.display = 'none'; } })();
{ "id": 44459, "author_id": 196856, "diff_limit": 1000, "urls": {"diff":"\/comments\/44459\/get","add":"\/comments\/44459\/add","edit":"\/comments\/edit","remove":"\/admin\/comments\/remove","pin":"\/admin\/comments\/pin","get4edit":"\/comments\/get4edit","complain":"\/comments\/complain","load_more":"\/comments\/loading\/44459"}, "attach_limit": 2, "max_comment_text_length": 5000, "subsite_id": 199791 }

3 комментария 3 комм.

Популярные

По порядку

1

Какая-то хитро скрытая реклама аналога h1/bugcrowd :)
Bug Bounty - это не замена пентестам / аудитам, на что есть отсылка в статье. Bug Bounty - это способ узнавать, где проблемы у проекта (хоть и с точки зрения продажи и проще продавать уязвимости, но не стоит). Уязвимости, конечно, важны, но багхантеры ищут их тогда, когда хотят (способы мотивации к активному участию - отдельная тема). Также, в багбаунти, вы не можете потребовать отчет "А что проверено? А что сделано?", как в случае работы с консалтинговыми компаниями (хотя мы и пробовали такое, раздавая по $500 активным багхантерам в качестве гранта, т.е. безусловные деньги, за которые просили посмотреть "вот это и это", а также просили (не требовали!) заполнить кратенький отчет).
По поводу триаджинга сотрудниками платформы - это очень спорно. Наверное, это работает, если уж совсем некому обслуживать ББ программу, но:
- сотрудники компании-заказчика могут не узнать о множестве проблем, которые есть в проекте (а ведь это чуть ли не самое важное). Проблем - не уязвимостей даже, а что просто у нас есть какой-то сервис с таким-то функционалом
- теряется прямая связь с ресерчерами и комьюнити в целом
- языковые проблемы (у нас очень много репортов на русском)

Ответить
1

Да, вы правы, баг баунти программы не заменяют, а дополняют пентесты/аудиты. Я не хотел дать понять, что баг-баунти могут полностью заменить пентесты, хотя некоторые компании следуют такой моделе. Конечно, вы правы, что хакеры должны быть адекватно мотивированы, чтобы искать баги и это действительно тема для отдельной дискуссии. Спасибо, что поделились вашим опытом!

Ответить
0

Может будет интересно, мы как раз одни из тех, кто проводят кампанию по поиску багов)
Вкратце, мы - everiToken, децентрализованная система обращения токенов в реальном мире. Мы верим, что в будущем токены станут частью повседневной жизни.
Наша команда уверена в безопасности блокчейна everiToken. Но мы также верим и в то, что безопасность продукта должна постоянно проверяться третьей стороной. Посему, мы готовы выплачивать до 5000$ за найденные критические уязвимости в нашем блокчейне.

Не знаю, насколько уместно здесь оставлять ссылки, но если кто-то заинтересуется, вэлком ту телеграм @everitokenru

Ответить
0

Прямой эфир

[ { "id": 1, "label": "100%×150_Branding_desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox_method": "createAdaptive", "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "ezfl" } } }, { "id": 2, "label": "1200х400", "provider": "adfox", "adaptive": [ "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "ezfn" } } }, { "id": 3, "label": "240х200 _ТГБ_desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "fizc" } } }, { "id": 4, "label": "240х200_mobile", "provider": "adfox", "adaptive": [ "phone" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "flbq" } } }, { "id": 5, "label": "300x500_desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "ezfk" } } }, { "id": 6, "label": "1180х250_Interpool_баннер над комментариями_Desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "pp": "h", "ps": "bugf", "p2": "ffyh" } } }, { "id": 7, "label": "Article Footer 100%_desktop_mobile", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "fjxb" } } }, { "id": 8, "label": "Fullscreen Desktop", "provider": "adfox", "adaptive": [ "desktop", "tablet" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "fjoh" } } }, { "id": 9, "label": "Fullscreen Mobile", "provider": "adfox", "adaptive": [ "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "fjog" } } }, { "id": 10, "disable": true, "label": "Native Partner Desktop", "provider": "adfox", "adaptive": [ "desktop", "tablet" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fmyb" } } }, { "id": 11, "disable": true, "label": "Native Partner Mobile", "provider": "adfox", "adaptive": [ "phone" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fmyc" } } }, { "id": 12, "label": "Кнопка в шапке", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "p1": "bscsh", "p2": "fdhx" } } }, { "id": 13, "label": "DM InPage Video PartnerCode", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "adfox_method": "createAdaptive", "adfox": { "ownerId": 228129, "params": { "pp": "h", "ps": "bugf", "p2": "flvn" } } }, { "id": 14, "label": "Yandex context video banner", "provider": "yandex", "yandex": { "block_id": "VI-223676-0", "render_to": "inpage_VI-223676-0-1104503429", "adfox_url": "//ads.adfox.ru/228129/getCode?pp=h&ps=bugf&p2=fpjw&puid1=&puid2=&puid3=&puid4=&puid8=&puid9=&puid10=&puid21=&puid22=&puid31=&puid32=&puid33=&fmt=1&dl={REFERER}&pr=" } }, { "id": 15, "label": "Плашка на главной", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "adfox": { "ownerId": 228129, "params": { "p1": "byudx", "p2": "ftjf" } } }, { "id": 16, "label": "Кнопка в шапке мобайл", "provider": "adfox", "adaptive": [ "tablet", "phone" ], "adfox": { "ownerId": 228129, "params": { "p1": "byzqf", "p2": "ftwx" } } }, { "id": 17, "label": "Stratum Desktop", "provider": "adfox", "adaptive": [ "desktop" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "fzvb" } } }, { "id": 18, "label": "Stratum Mobile", "provider": "adfox", "adaptive": [ "tablet", "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "fzvc" } } }, { "id": 19, "label": "Тизер на главной", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "p1": "cbltd", "p2": "gazs" } } } ]
Команда калифорнийского проекта
оказалась нейронной сетью
Подписаться на push-уведомления