Есть два подхода к тестированию софта. Классический — когда тестировщики проверяют программу до её выхода. И есть второй, необычный — баг-баунти. Это конкурс, где хакерам и программистам предлагают на спор сломать нашу программу во имя будущей безопасности. Вот об этом и расскажем
Перед этой статьёй полезно пролистать наш цикл про тестирование.
Что такое баг-баунти
Баг-баунти (от англ. bug bounty) — открытый конкурс по поиску уязвимостей в продукте. Работает это примерно так:
- Компания делает анонс конкурса, мол, вот наш продукт — найдите в нём проблемы.
- Часто объявляют призы: деньги или приём на работу.
- В назначенное время начинается конкурс — сообщают, что именно нужно проверить и как.
- Айтишники пытаются найти уязвимости и сломать продукт. Найденные проблемы отправляют компании.
- Компания награждает победителей и исправляет ошибки.
У Яндекса подобные штуки называются «Охота за ошибками». В 2023 году за серьёзную уязвимость платят полтора миллиона рублей.
50+ Сканнеров уязвимостей. Баг Баунти для начинающих.
То же самое делает Тинькофф — у них другие критерии, но суть такая же: можно найти ошибку или уязвимость и получить деньги:
На что смотрят во время баг-баунти
Пока проходит баг-баунти, в компании смотрят за продуктом:
- как он справляется с нагрузкой;
- все ли системы работают штатно;
- нет ли сообщений системы о несанкционированном доступе;
- насколько продукт доступен для других пользователей.
Может оказаться так, что до конкурса сайт работал нормально, но первая же попытка найти ошибку уронила все сервисы — а всё потому, что разработчики не предусмотрели такие сценарии.
Зачем это компаниям
Баг-баунти для компаний — это возможность протестировать свой продукт или показать всем, что он надёжный. Иногда компании настолько уверена в своём сервисе, что объявляет баг-баунти для того, чтобы похвастаться своей надёжностью.
С другой стороны, такое часто делают до публичного запуска, когда хотят проверить всё на прочность. В этом случае у компании есть возможность исправить ошибки до публичного релиза.
Сколько платят
Надёргали для вас ещё публичных кейсов, чтобы показать серьёзность намерений:
- Сейчас Microsoft и Apple обещают выплаты до 1 млн долларов за критические уязвимости.
- Intel платит до 100 тысяч долларов за баг, если его найдут в железе, прошивке или софте.
- У Google сейчас можно получить до 30 тысяч долларов. В год компания тратит 3–5 млн на эту программу.
- У LinkedIn есть программа по поиску уязвимости сайта, в прошлом году премии доходили до 18 тысяч долларов.
- Максимальная выплата в программе баг-баунти у Uber — 15 тысяч долларов.
- В прошлом году канадском Квебеке местное Минцифры предлагало до 1500 долларов за баг.
Видно, что разброс большой: от полутора тысяч до миллиона долларов. Понятно, что миллион дадут за самую страшную ошибку, которая может стоить компании миллиардных убытков. Но для тех, кто профессионально тестирует софт, это может быть хорошим дополнительным заработком.
Баг Баунти для новичков или как начать в bug bounty? Техники и моя методика.
Хочу участвовать в баг-баунти — с чего начать?
Особых требований к участникам баг-баунти нет — попробовать свои силы может кто угодно. Но совсем с нуля, без опыта тестирования или разработки там будет очень сложно. Если хотите подготовиться — вот курсы для старта:
Источник: thecode.media
Bug bounty для бизнеса: как сделать программу максимально эффективной
С точки зрения пентестера, и стартапы, и огромные корпорации объединяет одно: рано или поздно их попробуют взломать. Этому есть немало подтверждений — от утечек данных о заказах клиентов логистических и фудтех‑компаний до нарушения поставок топлива из‑за атак шифровальщиков. Даже если кажется, что в компании налажены процессы безопасной разработки, в системах все равно могут оставаться незамеченные уязвимости. Чтобы своевременно находить и устранять их, классический пентест имеет смысл дополнять новыми инструментами анализа защищенности вне зависимости от уровня зрелости кибербезопасности (КБ).
Bug Bounty: заработай на чужих ошибках
В этой статье я расскажу о Bug Bounty программах, их плюсах и минусах, а также как на этом зарабатывают.
В первую очередь давайте определим что такое Bug Bounty: программа выплата награды за обнаружение проблем в безопасности сервисов и приложений компании. На русский язык уместнее всего это переводится как «Охота за ошибками».
Т.е. это некий свод правил «взаимодействия» с информационными ресурсами компании. Обычно в него входит регламент проведения программы, перечень ресурсов, описание принимаемых уязвимостей, размеры вознаграждения. В классическом исполнении это описание того, что можно «ломать» и сколько багхантер получит за ту или иную уязвимость.
Так выглядит Bug Bounty снаружи. Что это дает компании? В первую очередь непрерывный процесс «проверки на прочность»: специалисты с различным уровнем знаний, инструментарием и часовыми поясами в режиме нон-стоп атакуют ресурсы компании. Со стороны компании задействованы ресурсы на:
- мониторинг систем;
- реагирование и обработка репортов;
- баг-фиксинг (быстры или не очень).
Bug Bounty плюсы и минусы
Теперь остановимся на плюсах и минусах Bug Bounty программ.
Очевидными плюсами будет:
- непрерывность процесса тестирования;
- стоимость (выплаты вознаграждений будут меньше стоимости наемных специалистов);
- большое покрытие.
Очевидными минусами будет:
- большое количество дублей;
- огромное количество отчетов сканеров (фолсов);
- узкая направленность;
- оспаривание и «доказательства» уязвимостей.
Зачастую многие багхантеры, участвующие в программах Bug Bounty ограничиваются своими «коронными» фишками, и не исследуют что-то другое, либо наоборот, ставят под сканеры все подряд в надежде уловить хоть что-то. Это дает разноплановый, но не полный подход к тестированию. Также, огромное количество фолс срабатываний сканеров может завалить команду разработчиков ненужной работой (это и дополнительные проверки и отклики по каждому репорту — которых может быть очень много).
Открытые программы
Большинство компаний представлено на площадках — агрегаторах, таких как HackerOne или BugCrowd.
Многие российские компании открыли как собственные программы, так и профили на HackerOne. Среди них такие компании, как: Яндекс, Майл.ру, QiWi, Вконтакте и многие другие. Да что говорить, если даже у Пентагона есть своя программа Bug Bounty. (Взломать Пентагон, получить деньги и остаться на свободе — похоже на мечту хакера, но уже суровая реальность).
Средняя сумма выплат составляет от $200 до $1000, в зависимости от уязвимости и места ее нахождения.
Вот, например, оценка стоимости обнаруженных уязвимостей в программе «Охота за ошибками» — Яндекс:
- A01. Инъекции 170000 руб. (критичные сервисы); 43000 руб. (прочие сервисы).
- A02. Межсайтовый скриптинг – A05. Межсайтовая подделка запросов 17000 руб. (критичные сервисы); 8500 руб. (прочие сервисы).
- A06. Ошибки конфигурации веб-окружения – A10. Открытое перенаправление 8500 руб.(критичные сервисы); 5500 руб. (прочие сервисы).
Наиболее «дорогие ошибки»
За время проведения Bug Bounty программ многие компании суммарно выплатили суммы в $ с 5 и более нулями (только Фейсбук выплатил более $5.000.000 вознаграждений), однако были и вознаграждения, которые сами по себе были довольно внушительными. Что самое интересное — баги были космического масштаба, но находились они иногда чуть-ли не методом тыка:
На баг, принесший ему $10 000, уругвайский школьник Иезекииль Перейра, наткнулся «со скуки». Студент, мечтающий сделать карьеру в области информационной безопасности, возился с сервисами Google, используя Burp Suite для подмены заголовка хоста в запросе к серверу App Engine (*.appspot.com). Большая часть попыток вернула «404», но на одном из внутренних сайтов — yaqs.googleplex.com, — внезапно обнаружилось отсутствие верификации по логину/паролю и отсутствие каких-либо намеков на защиту.
Выявление известной уязвимости:
Россиянин обнаружил в программном обеспечении соцсети ошибку, которая с помощью специальной картинки позволяла запускать на ее серверах произвольный код. Для этого необходимо было воспользоваться уязвимостью в сервисе ImageMagick, предназначенном для быстрого масштабирования и конвертации изображений в новостной ленте Facebook, сообщает Лента.ру. Леонов случайно наткнулся на ошибку во время тестирования стороннего сервиса, изучил ее и представил всю необходимую информацию техническим службам Facebook, которые устранили уязвимость в ноябре 2016 года. В итоге соцсеть выплатила хакеру вознаграждение в 40 тысяч долларов. В 2014 году рекордную сумму в 33,5 тысяч долларов получил от Facebook специалист по кибербезопасности Реджинальдо Сильва.
Или эпохальный взлом Facebook и обнаружение бэкдора в системе, которые принесли исследователю $10.000: Как я взломал Facebook и обнаружил чужой бэкдор.
Хочу участвовать, что надо делать?
Для тех, кто решил попробовать свои силы и возможности в поиске ошибок могу посоветовать несколько основных этапов, которые приведут к победе:
Следите за новостями. Обновился скоп программы — бегом проверять новые сервисы. Производитель добавил новый функционал, расширил старый или интегрировал сторонний сервис? — большая возможность, особенно в сложной инфраструктуре допустить ошибку.
Упорство. Скрупулезное исследование, не упускать никаких деталей. Хорошая практика будет периодически сравнивать результаты прошлых проверок с текущем состоянием системы.
Поиск. Ищите и обрящете. Большинство крупных багов находят на «не публичных» поддоменах и директориях. Здесь вам пригодятся инструменты по выявлению поддоменов и хорошие листы словарей для брута директорий и поддоменов.
Исследование. Отложите автоматические сканеры, просеивайте веб-приложение (а большинство Bug Bounty связано именно с вебом) как песок сквозь сито для поиска крупинок золота. Здесь я рекомендую использовать Burp Suite или Owasp Zap — лучше инструментов нет. Почти все крупные победы в баутни — результат работы с этими инструментами (практически на любом публичном репорте можно это увидеть).
Исследуйте. Скачайте приложение для локального исследования, если это возможно. Читайте отчеты других участников — это может дать пищу для ума. Тот же взлом фейсбука — многие российские багхантеры видели этот поддомен, даже пытались с ним что-то делать — но «не докрутили». Хорошим подспорьем для этого будет ресурс: The unofficial HackerOne disclosure Timeline
- Блог компании OWASP
- Информационная безопасность
Источник: habr.com