BugBounty: заработай на чужих ошибках +32


image

 
В этой статье я расскажу о BugBounty программах, их плюсах и минусах, а также как на этом зарабатывают.


В первую очередь давайте определим что такое BugBounty: программа выплата награды за обнаружение проблем в безопасности сервисов и приложений компании. На русский язык уместнее всего это переводится как "Охота за ошибками".


Т.е. это некий свод правил "взаимодействия" с информационными ресурсами компании. Обычно в него входит регламент проведения программы, перечень ресурсов, описание принимаемых уязвимостей, размеры вознаграждения. В классическом исполнении это описание того, что можно "ломать" и сколько багхантер получит за ту или иную уязвимость.


Так выглядит BugBounty снаружи. Что это дает компании? В первую очередь непрерывный процесс "проверки на прочность": специалисты с различным уровнем знаний, инструментарием и часовыми поясами в режиме нон-стоп атакуют ресурсы компании. Со стороны компании задействованы ресурсы на:


  • мониторинг систем;
  • реагирование и обработка репортов;
  • баг-фиксинг (быстры или не очень).

BugBounty плюсы и минусы


Теперь остановимся на плюсах и минусах BugBounty программ.


Очевидными плюсами будет:


  • непрерывность процесса тестирования;
  • стоимость (выплаты вознаграждений будут меньше стоимости наемных специалистов);
  • большое покрытие.

Очевидными минусами будет:


  • большое количество дублей;
  • огромное количество отчетов сканеров (фолсов);
  • узкая направленность;
  • оспаривание и «доказательства» уязвимостей.

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


Открытые программы


Большинство компаний представлено на площадках — агрегаторах, таких как HackerOne или BugCrowd.


Многие российские компании открыли как собственные программы, так и профили на HackerOne. Среди них такие компании, как: Яндекс, Майл.ру, QiWi, Вконтакте и многие другие. Да что говорить, если даже у Пентагона есть своя программа BugBounty. (Взломать Пентагон, получить деньги и остаться на свободе — похоже на мечту хакера, но уже суровая реальность).


Средняя сумма выплат составляет от $200 до $1000, в зависимости от уязвимости и места ее нахождения.


Вот, например, оценка стоимости обнаруженных уязвимостей в программе "Охота за ошибками" — Яндекс:


  • A01. Инъекции 170000 руб. (критичные сервисы); 43000 руб. (прочие сервисы).
  • A02. Межсайтовый скриптинг – A05. Межсайтовая подделка запросов 17000 руб. (критичные сервисы); 8500 руб. (прочие сервисы).
  • A06. Ошибки конфигурации веб-окружения – A10. Открытое перенаправление 8500 руб.(критичные сервисы); 5500 руб. (прочие сервисы).

Наиболее «дорогие ошибки»


За время проведения BugBounty программ многие компании суммарно выплатили суммы в $ с 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 и обнаружил чужой бэкдор.


Хочу участвовать, что надо делать?


Для тех, кто решил попробовать свои силы и возможности в поиске ошибок могу посоветовать несколько основных этапов, которые приведут к победе:


Следите за новостями. Обновился скоп программы — бегом проверять новые сервисы. Производитель добавил новый функционал, расширил старый или интегрировал сторонний сервис? — большая возможность, особенно в сложной инфраструктуре допустить ошибку.


Упорство. Скрупулезное исследование, не упускать никаких деталей. Хорошая практика будет периодически сравнивать результаты прошлых проверок с текущем состоянием системы.


Поиск. Ищите и обрящете. Большинство крупных багов находят на "не публичных" поддоменах и директориях. Здесь вам пригодятся инструменты по выявлению поддоменов и хорошие листы словарей для брута директорий и поддоменов.


Исследование. Отложите автоматические сканеры, просеивайте веб-приложение (а большинство BugBounty связано именно с вебом) как песок сквозь сито для поиска крупинок золота. Здесь я рекомендую использовать Burp Suite или Owasp Zap — лучше инструментов нет. Почти все крупные победы в баутни — результат работы с этими инструментами (практически на любом публичном репорте можно это увидеть).


Исследуйте. Скачайте приложение для локального исследования, если это возможно. Читайте отчеты других участников — это может дать пищу для ума. Тот же взлом фейсбука — многие российские багхантеры видели этот поддомен, даже пытались с ним что-то делать — но "не докрутили". Хорошим подспорьем для этого будет ресурс: The unofficial HackerOne disclosure Timeline


Наша компания


Наши специалисты принимали успешное участие в BugBounty программах от Яндекс, AT&T и других и понимают важность непрерывного процесса тестирования для улучшения продукта или сервиса.


Нашей компанией запущена собственная BugBounty программа, в которой может принять участие любой (совершеннолетний) желающий. Мы выплатим ? 50.000 тому, кто первый выполнит эксплуатацию уязвимости в обход WAF на уязвимом веб-приложении.




К сожалению, не доступен сервер mySQL