Как появился багхантинг, при чем тут книги и где искать объявления и программы
В 1968 году на книжных прилавках появилась книга одного из самых известных американских компьютерных специалистов Дональда Кнута «Искусства программирования». Это — фундаментальный труд, ставший основой для последующих работ в области анализа алгоритмов в информатике и, фактически, первый пример прото-багхантинга в истории. За каждую опечатку или ошибку, найденную в книге, он высылал читателям почтой чуть больше двух долларов.
В 1983 году программа по поиску уязвимостей была запущена компанией «Mentor Graphics», работающей над операционной системой VRTX, придуманной для быстрой обработки данных и решения задач в режиме реального времени. Условия были достаточно щедрыми даже по современным меркам: каждому нашедшему ошибку компания дарила автомобиль Фольксваген «Жук», так как уязвимости на профессиональном IT-языке называются багами — от английского bug, или жучок.
Сама же программа багхантинга или «bug bounty» появилась в 1996 году, благодаря сотруднику браузера Netscape Navigator. Джарретт Ридлинхафер заметил, что среди пользователей продуктов компании есть IT-специалисты в разных направлениях, и выдвинул предложение платить им за поиск ошибок и уязвимостей в рамках отдельной программы.
Современный багхантинг стал широко распространяться в США и странах Европы, когда корпорации Microsoft и Meta (признана экстремистской на территории РФ) стали активно спонсировать проект Internet Bug Bounty. Изначально это была краудфандинговая платформа для программистов по поиску багов, появившаяся в 2013 году.
Уязвимости и ошибки, традиционно, делятся на:
- простые;
- средние;
- сложные;
- критические.
Пример простой ошибки — устаревший логотип социальной сети или компании, опубликованный на сайте после ребрендинга. Критические уязвимости практически всегда связаны с возможностью получить доступ к персональным данным пользователей, либо стратегической внутренней инфраструктуре компании.
Большинство программ bug bounty работает по одному и тому же базовому алгоритму с незначительными изменениями. Организации выдвигают условия, ограничивающие поиск уязвимостей отдельными страницами или областями, либо же, наоборот, предоставляющие полную свободу действий багхантерам. После этого исследователями или этичным хакерам остается найти уязвимость или ошибку и отправить отчет о ней через отдельную форму или платформу. Компания проводит мониторинг отчетов, проверяет наличие уязвимости и устраняет ее.
В некоторых случаях багхантерам нужно предложить конкретное решение по устранению ошибки. После того как организация заканчивает валидацию отчетов, исследователь получает награду.
В 2022 году для багхантеров существуют специальные платформы-агрегаторы, собирающие предложения компаний по проверке инфраструктуры и безопасности на прочность. Среди самых известных и проверенных — YesWeHack и уже упомянутая Internet Bug Bounty. Популярная платформа HackerOne, собирающая наибольшее количество багхантеров, прекратила работу на территории РФ и Беларуси. На них можно выбрать предложение конкретной организации, изучить условия и размер выплат. В России, также, действует собственный агрегатор, на котором публикуются объявления от местных корпораций и разработчиков — The Standoff 365, разработанный IT-компанией Positive Technologies.
«Сколько ты зарабатываешь?»: какие гонорары предлагают компании багхантерам
Кирилл Романов, менеджер по развитию бизнеса департамента информационной безопасности «Сиссофт», подчеркивает, что программы bug bounty позволяют организациям находить ошибки и уязвимости, при этом экономно расходовать средства на их поиск. «Такое краудсорсинговое дополнение к службе информационной безопасности позволяет вычислить и обнаружить дополнительные и неочевидные слабые места в программном обеспечении, которые не удалось найти ранее разработчикам и специалистам по безопасности. Такие программы есть у Google, Amazon, VK, “Лаборатории Касперского” и других крупных компаний».
Некоторые корпорации запускают отдельные сайты и сервисы для рекрутинга багхантеров. Microsoft предлагает сразу несколько направлений, по которым можно заниматься поиском ошибок и уязвимостей. До 20 ноября можно было найти баги в системе Microsoft.NET и получить до 15 тысяч долларов за успешно сданный отчет. За найденную уязвимость в последней версии операционной системы компания готова заплатить до ста тысяч долларов.
В 2016 Apple сделала публичным сервис по привлечению багхантеров: максимальные суммы вознаграждения варьируются от ста тысяч долларов до миллиона. На данный момент самую большую награду заплатили программисту, обнаружившему уязвимость в технологии Apple Secure Enclave, — он получил двести тысяч долларов от компании.
В программе Google специалисты могут искать ошибки во всех сервисах корпорации, особенно активно привлекаются багхантеры, способные найти уязвимости в системах хранения и обработки конфиденциальных данных пользователей. На сайте подробно описаны условия поиска багов, типы ошибок и стоимость каждой обнаруженной уязвимости.
В России также можно найти программы, привлекающие внимательных пользователей к фиксированию багов. СКБ Контур предлагает багхантерам от трех до ста тысяч рублей за найденные ошибки. От 10 до 200 тысяч рублей могут заработать те, кто обнаружит уязвимость в системе Центра защиты информации «Конфидент». Программа bug bounty есть и у крупнейшего маркет-плейса Озон, однако выплаты по ней временно приостановлены.
Свои предложения для багхантеров размещает и VK: за неопасные уязвимости корпорация предлагает от 6 до 18 тысяч рублей, за критические — до 1,8 миллиона рублей. На 2021 год компания суммарно выплатила исследователям больше двух миллионов долларов, приняв более пяти тысяч заявок. Bug bounty программа есть у сети супермаркетов «Азбука вкуса». Согласно статистике The Standoff 365, с мая компания уже выплатила наблюдательным специалистам чуть больше трехсот тысяч рублей, средний размер одного вознаграждения составил 38 тысяч рублей.
Кажется, что заработать состояние только на поиске уязвимостей — невозможно, так как процесс занимает много времени, требует внимательного оформления и нет никаких гарантий, что компания действительно выплатит указанную стоимость гонорара. Тем не менее в мире уже есть первый багхантер-миллионер — девятнадцатилетний Сантьяго Лопес. С 2015 по 2019 год хакер-самоучка из Аргентины обнаружил около 1600 уязвимостей и заработал миллион долларов на ошибках разных компаний.
«Программы Bug Bounty устроены так, что компания платит только за найденную ошибку и только тому, кто первым ее обнаружил. Как правило, оплата зависит от характера и серьезности уязвимости», — подчеркивает Кирилл Романов, менеджер по развитию бизнеса департамента информационной безопасности «Сиссофт». Из-за подобных условий многие «этичные хакеры» не раз вступали с компаниями в диспут, однако практически всегда агрегаторы big bounty-программ встают на сторону корпорации и багхантеры остаются без положенных выплат.
Чтобы доказать наличие уязвимости и степень ее критичности, хакеры могут привлекать нотариусов к осмотру исходного кода ошибки. Такая услуга стоит около 10 тысяч рублей и все еще не гарантирует, что эти деньги вернутся багхантеру в качестве гонорара.
Зачем big bounty программы корпорациям и что говорят сами багхантеры
Дмитрий Мельник, архитектор информационной безопасности компании R-Vision, объясняет, что ранее, тестирование и обнаружение уязвимостей в компаниях считалось выкидыванием денег на ветер.
«Аудит в сфере информационной безопасности — дорогостоящее мероприятие, а убыток от выявленных уязвимостей в большинстве случаев был достаточно невелик, по сравнению с самой стоимостью такого аудита. С расширением доступа в Интернет и увеличением количества веб-приложений, проблемы ИБ-компаний и убытки от несвоевременно выявленных уязвимостей стали расти буквально в геометрической прогрессии. Фактически, именно то, что убытки от невыявленных уязвимостей для бизнеса стали намного превышать стоимость аудита в инфобезе, и сыграло основную роль в становлении и развитии Bug Bounty в настоящее время».
При этом, подчеркивает эксперт, возникает определенная дилемма — объем таких работ огромен и увеличивается он ежедневно. Поиск уязвимостей в любой организации связан с допуском к ее тайнам, а разглашение такой информации может обойтись компании очень дорого. Поэтому вырабатывается определенный компромисс в формате программ bug bounty, которые позволяют исследовать безопасность продукта под разными углами.
Помимо снижения издержек в сфере внутренней информационной безопасности, компании получают доступ к базе талантливых программистов, с которыми можно поддерживать постоянное фриланс-сотрудничество, либо нанять их в штат на вакантные позиции. Поиск уязвимостей представляет собой максимально реалистичную симуляцию угроз в режиме реального времени, что также играет на руку корпорациям: проще заплатить вознаграждение багхантеру и устранить уязвимость, чем дожидаться, пока о потенциальной угрозе узнают злоумышленники.
Александр Ватолин, геймдизайнер и преподаватель в Школе программистов МШП, рассказывает, что практика багхантинга стала настолько нормальной, что некоторые компании проводят ее без дополнительного афиширования.
«Однажды у меня был крупный заказ на проверку и систематизацию методик для занятий. В компании проводилась серьезная реорганизация программ обучения: нужно было в срочном порядке привести их к идеальному состоянию. Как это связано с охотой за багами? Выражалось это в оплате труда, которая состояла из базовой ставки и надбавки за каждую найденную, обоснованную и решенную проблему.
Само собой, такой подход стимулирует к поиску большого количества багов. По итогу компания избавляет себя от будущих репутационных расходов и потерянных клиентов. Данная система уже покинула сферу только разработки программ, развиваясь во всех направлениях».
Начинающие багхантеры не всегда знают, как правильно рассказать об обнаруженной уязвимости. В 2006 году студент Санкт-Петербургского государственного университета произвел «дефейс» факультетского сайта — полностью заменил содержание страницы. Администрация не смогла исправить уязвимость, поэтому на следующий день «дефейс» случился снова. Несмотря на то, что хакер всего лишь хотел подчеркнуть уязвимость системы, он был осужден на два года условно за создание и использование вредоносных программ для ЭВМ.
В 2019 году на Хабре появилась статья о том, как, подключившись к WiFi-сети поезда Сапсан, программисту удалось получить доступ ко внутренней сети РЖД. Тогда компания проигнорировала трюк, заявив, что все сервисы поезда надежно защищены, а уязвимостей, которые могли бы привести к критической утечке данных, — нет. В 2021 году еще один пользователь Хабра опубликовал рассказ, как с помощью этой же ошибки он получил доступ в систему камер видеонаблюдения на вокзалах, перронах и внутренних офисах компании. В этот раз сотрудники РЖД отнеслись к ситуации серьезнее, связались с хакером и поспешили устранить ошибку.
Иногда багхантеры остаются недовольны политикой bug bounty и предложенными вознаграждениями и используют найденные уязвимости во вред компании. В сообществе охотников за багами есть «легенда», как несколько лет назад крупная социальная сеть не выплатила вознаграждение целой команде багхантеров, которая сутками работала над фиксированием ошибок.
После этого, команда ушла в «сопротивление» и брала ответственность за все последующие крупные утечки данных, взломы и сбои в работе социальной сети, о которых становилось публично известно.