Вопрос безопасности цифровых продуктов важен для многих IT-компаний. Настолько важен, что организации не только нанимают специалистов по информационной безопасности в штат, но и объявляют Bug Bounty.
Bug Bounty — это программа, в рамках которой компании платят людям за обнаружение проблем в их программном обеспечении, продукте или инфраструктуре.
Участников баг баунти называют белыми хакерами или охотниками за ошибками. В обмен на поиск уязвимостей они получают денежные вознаграждения, признание или другие виды вознаграждений в зависимости от серьезности найденных багов. Выплаты за обнаруженные ошибки могут составлять от нескольких тысяч до миллионов долларов в зависимости от компании.
Программы Bug Bounty часто дополняют регулярное тестирование на проникновение и предоставляют организациям возможность тестировать безопасность своих приложений на протяжении всего жизненного цикла разработки.
История Bug Bounty
В конце XVIII века в витрине компании Bramah and Co. в Лондоне был размещен замок с небольшой табличкой: «Мастер, который сможет создать инструмент для вскрытия этого замка, получит 200 гиней».
Это первый известный пример программы вознаграждений за обнаружение уязвимостей в безопасности: производители замка стимулировали экспертов найти слабые места в своем продукте, а компания получала уверенность в том, что они первыми узнают о возможных слабостях своего продукта.
Программы Bug Bounty эволюционировали, и в 1995 году, компания Netscape внедрила первую современную программу Bug Bounty. Netscape предложила денежные вознаграждения разработчикам, которые найдут и представят ошибки безопасности в браузере Netscape Navigator 2.0. Этот подход переняли с годами крупные ИТ-компании, среди которых Mozilla, Google, Microsoft, Facebook*, Yahoo и другие.
Разумеется, у больших компаний есть собственная команда по безопасности, но крупные корпорации постоянно разрабатывают и запускают множество продуктов. При таком количестве задач возможностей штатной команды по кибербезопасности перестает хватать — здесь на помощь приходит Bug Bounty.
Как работает Bug Bounty
Организации используют две основные модели для своих программ вознаграждения за обнаруженные ошибки: внутреннюю и платформенную.
Внутренние программы
Это программы, которые объявляют сами компании у себя на сайте. В таком случае работа строится следующим образом:
- Компания объявляет о запуске программы Bug Bounty с деталями: области, подлежащие тестированию, типы уязвимостей, которые их интересуют, и вознаграждения за каждый найденный баг.
- Исследователи безопасности регистрируются и начинают тестировать программное обеспечение или веб-сайт на наличие уязвимостей, соблюдая правила программы.
- Когда хакер обнаруживает ошибку, он заполняет отчет о раскрытии информации, в котором подробно описывается, что это за ошибка, как она влияет на приложение и какой уровень серьезности она имеет. Хакер включает ключевые шаги и детали, которые помогут разработчикам воспроизвести и проверить ошибку.
- Компания проверяет сообщение, оценивает серьезность уязвимости и работает над исправлением ошибки.
- Затем разработчики компании проводят повторное тестирование, чтобы подтвердить устранение проблемы.
- После этого исследователь получает вознаграждение. Сумма может варьироваться в зависимости от серьезности уязвимости и политики компании.
Собственные программы Bug Bounty обычно запускают крупные корпорации. С момента своего запуска в 2011 году компания Meta* выплатила более 16 миллионов долларов за обнаружение ошибок. За эти годы Meta* расширила и усовершенствовала свои программы, внесла значительный вклад в усилия по кибербезопасности.
В 2016 году Министерство обороны США решило задействовать этичных хакеров в своей программе «Взломать Пентагон». Программа привлекла сотни исследователей со всего мира. Они обнаружили около 7000 уязвимостей, и правительство выдало 15 вознаграждений. С тех пор программа запускалась несколько раз, чтобы найти и устранить многочисленные уязвимости системы, что повысило общую безопасность правительства.
Платформенные программы
Платформенные программы управляются сторонними платформами Bug Bounty, которые являются посредниками между охотниками за ошибками и организациями. Платформы предлагают необходимую инфраструктуру, политики и процессы для запуска эффективной программы.
Эти опции помогают компаниям оптимизировать процессы подачи, проверки и распределения вознаграждений, чтобы сделать их более эффективными и результативными. Такой вариант больше подходит небольшим компаниям, у которых нет достаточных ресурсов и популярности среди исследователей для самостоятельного проведения программы.
Работа программы Bug Bounty через платформу строится по следующему алгоритму:
- Регистрация компании и программы:
- Компания регистрируется на платформе Bug Bounty (например, Bugcrowd, HackerOne, Synack).
- Определяет и описывает параметры своей программы, включая цели, правила, условия и вознаграждения за обнаруженные уязвимости.
- Программа публикуется на платформе, становясь доступной для зарегистрированных участников.
- Исследователи безопасности регистрируются в программе и проходят верификацию.
- Охотники за ошибками тестируют систему компании на наличие уязвимостей, следуя правилам программы.
- Исследователи отправляет отчет через платформу, описывая уязвимость и предлагая методы ее воспроизведения и исправления.
- Платформа автоматически уведомляет компанию о новом отчете.
- Команда безопасности компании проверяет полученный отчет и подтверждает существование уязвимости. В случае необходимости исследователь и команда безопасности могут взаимодействовать через платформу для уточнения деталей.
- Компания исправляет уязвимость и тестирует исправление для обеспечения его эффективности.
- После подтверждения исправления уязвимости и ее критичности компания устанавливает размер вознаграждения в соответствии с правилами программы.
- Платформа обрабатывает выплату вознаграждения исследователю.
- Платформа предоставляет компании статистику и аналитику по обнаруженным уязвимостям, эффективности программы и затраченным средствам.
- На основе полученной информации компания может корректировать условия и правила программы, улучшать свои системы безопасности и продолжать взаимодействие с платформой для дальнейшего поиска уязвимостей.
Платформы Bug Bounty
Сейчас в мире белых хакеров существует множество платформ для запуска программ Bug Bounty, и их количество постоянно растет, так как спрос на такие услуги увеличивается. Компании выбирают платформу в зависимости от своих потребностей, бюджета и специфики работы.
Наиболее популярные из них:
- HackerOne
Самая известная платформа, на которой размещают свои программы и крупные компании — IBM, LinkedIn, Uber, — и другие. Кроме денежной мотивации, для хакерского сообщества платформа составляет таблицу лидеров, что помогает им добиться признания среди коллег. - Bugcrowd
Связывает компании и их приложения с десятками тысяч исследователей безопасности для выявления критических уязвимостей программного обеспечения. Благодаря платформе компании любого размера могут запускать как частные, так и публичные программы вознаграждений для эффективного тестирования своих приложений и вознаграждения за выявление действительных уязвимостей. - Intigriti
Европейская платформа с акцентом на гибкость и адаптивность программ Bug Bounty. Intigriti предлагает широкий выбор тестов и сильную поддержку клиентов. - Synack
Частная внештатная исследовательская группа по безопасности, охватывающая 6 континентов из более 80 стран. В ее состав входят некоторые из самых востребованных исследователей безопасности в мире. Команда Synack выполняет тестирование на проникновение веб- и мобильных приложений и хост-инфраструктуры. - YesWeHack
Платформа вознаграждения за ошибки с персонализированной поддержкой и инструментами автоматизации для облегчения масштабирования и повышения гибкости. YesWeHack предоставляет обучение для расширения возможностей персонала, связывая их с экспертами мирового класса. Кроме того, у них есть система рангов для охотников за ошибками, которая повышает конкурентоспособность исследователей безопасности за счет этичного использования их навыков взлома. - HackenProof
Одна из самых молодых платформ по вознаграждению за обнаруженные ошибки в этом списке. Часть экосистемы Hacken предлагает продукты, расширяющие возможности индустрии кибербезопасности со всех сторон: платформа по вознаграждению за обнаруженные ошибки, аналитическая рейтинговая платформа криптовалютной биржи, конференция по кибербезопасности HackIT и кибершкола.
Я начал участвовать в программе Bug Bounty давно, еще до становления самого термина. Первую уязвимость я «продал», то есть рассказал администраторам системы — самому крупному на тот момент платежному решению WebMoney — про уязвимость и получил за это вознаграждение; это было более 15 лет назад. Участвовал в Bug Bounty от Рамблера (на тот момент это был неоспоримый лидер в отрасли).
Из запоминающегося — был случай, когда искал уязвимости в поисковом продукте, и удалось совершить полную компрометацию системы через поисковый запрос: можно было попросить робота проиндексировать системные файлы, затем показать результат, где содержались учетные данные. Люблю нестандартный подход и решения за пределами «взять инструмент и применить», видимо, потому и запомнился.
Но есть и обратная сторона медали. За последний год я разослал более сотни отчетов в компании разных размеров, от мастодонтов до мелких онлайн-магазинов. И, в это сложно поверить, получил меньше 1% откликов. Хотя речь идет об информации, которая может спасти порой сотни миллионов долларов для компании.
Как стать белым хакером в Bug Bounty
Охотники за ошибками — это люди, которые знают основы кибербезопасности и хорошо разбираются в поиске недостатков и уязвимостей.
Прежде чем искать ошибки в каких-либо платформах, необходимо разобраться, как работают веб-приложения, и понять архитектуру этих приложений.
Глубокое понимание некоторых основ сетей, базы данных SQL и веб-компонентов, таких как HTML, CSS, PHP и JavaScript, увеличит возможность анализа некоторых уязвимостей. Также поможет уверенное владение хотя бы одним из этих языков программирования: Python, Bash или Go. Это значительно повысит ценность создания собственных инструментов, с помощью которых можно достичь определенной цели, которую не смогут выполнить другие инструменты.
Книги, которые помогут глубже понять работу исследователей Bug Bounty:
The Web Application Hacker’s Handbook: Finding and Exploiting Security Flaws
Издание является важным ресурсом для тех, кто хочет узнать о новейших методах защиты и атак на веб-приложения, обеспечивая практическое руководство и актуальную информацию по этой важной теме. В книге исследуются различные новые технологии, используемые в веб-приложениях, и рассматриваются новые техники атак, разработанные в основном в отношении клиентской стороны.
Bug Bounty Bootcamp: The Guide to Finding and Reporting Web Vulnerabilities
Книга учит взламывать веб-приложения. В издании рассказывается, как проводить разведку цели, выявлять уязвимости и эксплуатировать их. Читатель научится взламывать мобильные приложения, проверять исходный код приложения на наличие проблем с безопасностью, находить уязвимости в API и автоматизировать процесс взлома. К концу книги он освоит инструменты и техники, необходимые для того, чтобы стать компетентным веб-хакером и находить баги в рамках программ Bug Bounty.
WEB HACKING 101: Books for White Hat Hackers
Книга обещает помочь понять, как взламывать системы от базового до продвинутого уровня. Издание предлагает глубокое погружение в тему и обещает дать все необходимые знания для того, чтобы стать опытным хакером. Основные акценты: изучение основ сетей и веб-взлома, защита системы от компрометации, ознакомление с продвинутыми протоколами безопасности.
Mastering Modern Web Penetration Testing
Эта книга описывает современные атаки на веб-приложения и использует передовые техники взлома с расширенным знанием безопасности веб-приложений. Она содержит методы взлома веб-приложений, чтобы исследователи могли исследовать векторы атак во время тестов на проникновение. Издание охватывает новейшие технологии: OAuth 2.0, методологии тестирования веб-API и XML-векторы, используемые хакерами. И объясняет старые методы, такие как XSS, CSRF, SQL-инъекции с использованием проверенного инструмента SQLMap и разведку.
Bug Bounty в России
Программы Bug Bounty активно запускают и российские компании, чтобы повысить безопасность соцсетей, онлайн-банкинга, телекоммуникационных и интернет-сервисов. Среди таких компаний — Яндекс, VK, Тинькофф, Сбербанк, Ростелеком и другие.
Найти программы Bug Bounty российских компаний можно на их сайтах или на платформах, среди которых — рассмотренные выше платформы (HackerOne, Bugcrowd и т.д.), а также отечественные сервисы.
Например, у Яндекса есть собственная платформа Yandex Security Bug Bounty. На ней охотники за ошибками могут исследовать инфраструктуру, веб-сервисы и мобильные приложения компании. Скоро Яндекс откроет программы по взлому умной колонки и собственного браузера.
На отечественной платформе BI.ZONE Bug Bounty можно найти программы компаний Авито, VK, Ozon, Минцифры России, Тинькофф, Хоум Банк и других. Суммы вознаграждений варьируются от нескольких тысяч до нескольких миллионов рублей. В 2023 году общая сумма выплат за найденные баги на платформе составила более 15 млн рублей.
Преимущества участия в программах Bug Bounty
Хотя денежные вознаграждения играют важную роль для охотников за ошибками, у них есть и другие мотивы. Например, возможность создать себе репутацию в сообществе кибербезопасности, получить интересный офер на работу или доступ к Bug Bounty с более высокими вознаграждениями.
Компаниям запуск эффективных программ Bug Bounty помогает укреплять репутацию и демонстрировать ответственное отношение к кибербезопасности.
*Деятельность компании Meta признана экстремистской в России.