...

воскресенье, 27 мая 2018 г.

Как зарабатывать на чужих ошибках: История Bug Bounty

Создатель Ruby on Rails Давид Хейнемейер Ханссон (David Heinemeier Hansson) однажды написал статью под заголовком «В программах встречаются баги. Это нормально». За всю историю работы человека с ПО (и не только с ним) баги были неизбежным и порой дорогостоящим спутником новых и интересных решений.

В прошлом году только сбои программного обеспечения, зафиксированные в отчете Software Fail Watch, обошлись компаниям по всему миру в $1,7 трлн. Такие потери побуждают бизнес наращивать расходы на тестирование ПО. Компании нанимают штатных тестировщиков и все больше денег вкладывают в автоматизированные системы.

Есть и еще одно направление, на которое компании также не жалеют денег, — программы Bug Bounty. Крупные технологические корпорации — Apple, Facebook, Google — и даже правительственные организации выплачивают вознаграждения «белым хакерам» за поиск уязвимостей в ПО. Разберемся в истории этого явления.


/ Wikimedia / Alexandre Dulaunoy / CC

Краткая история Bug Bounty


Идея поиска уязвимостей в системах безопасности появилась задолго до написания первых программ. В XIX веке английская компания, разрабатывающая дверные замки, предлагала 200 золотых гиней (около $20 тыс. по нынешнему курсу) за взлом одного из своих товаров. Тогда американский изобретатель Альфред Чарльз Хоббс (Alfred Charles Hobbs) принял вызов и справился с задачей за 25 минут, получив награду.

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

Предположительно, первой программой поощрения за поиск уязвимостей в ИТ стало объявление от Hunter & Ready, датируемое 1983 годом. Компания разрабатывала операционную систему реального времени VRTX и предлагала в качестве награды за найденный в ней баг Volkswagen Beetle («Жук»). Однако победитель мог забрать свой приз и деньгами — давали тысячу долларов.


/ Flickr / Greg Gjerdingen / CC

К середине 90-х в мире уже произошло несколько крупных хакерских атак и начала формироваться современная индустрия ИТ-безопасности. Тогда же набирали популярность первые веб-браузеры — в этой нише шло противостояние между продуктами Netscape и Microsoft. 1995-й был особенно успешным для первой — компания, пользуясь своим лидирующим положением на рынке, удачно провела IPO. В том же году инженер технической поддержки Netscape Джарретт Ридлинхафер (Jarrett Ridlinghafer), обнаружил, что многие пользователи-энтузиасты самостоятельно искали баги в браузере и выкладывали для них фиксы в сеть. Поэтому Джарретт предложил руководству поощрить подобную деятельность и начать выплачивать денежные вознаграждения.

И 10 октября 1995 года Netscape запустили первую программу Bug Bounty. Они платили пользователям бета-версии браузера Netscape Navigator 2.0, которые находили в нем уязвимости и сообщали об этом компании. По некоторым данным, Ридлинхаферу выделили первоначальный бюджет в $50 тыс. Наградами для участников программы служили не только деньги, но и товары из магазина Netscape.

Первым последователем Netscape в привлечении пользователей к поиску багов стала компания iDefense, занимающаяся вопросами безопасности. В 2002 году она запустила свою программу Bug Bounty. Сумма вознаграждения варьировалась в зависимости от типа уязвимости, объема предоставленной информации о ней и согласия пользователя не разглашать сведения о баге в будущем. Заработать на одном баге таким образом можно было до $500.

В 2004 году сообщество Mozilla, которое сформировали выходцы из Netscape, тоже запустило программу Bug Bounty для браузера Firefox. Ее профинансировали известный предприниматель Марк Шаттлворт (Mark Shuttleworth) и компания-разработчик ПО Linspire. За найденные критические уязвимости участники могли получить до $500. И эта программа действует до сих пор, однако максимальное вознаграждение за годы выросло в 10 раз. За 14 лет ее участникам было выплачено около $3 млн.

В один год с Mozilla на рынке ИТ-безопасности появилась программа Zero Day Initiative (ZDI), которая работает до сих пор. Её создатели выступили посредником между сообществом «белых хакеров» и компаниями, которым нужно найти баги в своем ПО. Три года спустя ZDI профинансировали конкурс PWN2OWN. Тогда хакерам нужно было попытаться взломать два ноутбука MacBook Pro, так как система OS X считалась более безопасной, чем продукты конкурентов. В ZDI согласились приобрести все обнаруженные уязвимости в Mac OS X по единой цене — $10 тыс.

Кстати, компания Apple на тот момент не имела своей программы по поиску багов. Она отказывалась идти на это почти 10 лет. Apple запустила Bug Bounty только в 2016 году и стала одной из последних крупных технологических корпораций, предложивших вознаграждение за поиск багов. Зато сумма поощрения оказалась одной из самых высоких на рынке — она доходит до $200 тыс.

Bug Bounty сегодня


Другие крупные технологические компании стали запускать свои инициативы поощрения «белых хакеров» в начале 2010-х. С 2010-го по 2017-й Google «раздала» участникам Bug Bounty $3 млн — большая часть средств была выплачена за эксплойты в Chrome и Android. Facebook в период с 2011 по 2016 год выплатила $5 млн. Аналогичные инициативы имеют Microsoft, GitHub, Uber, Sony и другие. Этот список продолжает пополняться, например, в этом месяце компания Valve анонсировала, что тоже будет платить за найденные уязвимости.

«Белые хакеры» сегодня, по данным платформы для поиска багов HackerOne, зарабатывают почти вдвое больше своих коллег-разработчиков ПО. Хотя для многих охотников за уязвимостями эта деятельность — хобби, 12% из них получают $20 тыс. в год, а 3% — больше $100 тыс. На их выбор представлены программы от самых разных организаций: от уже перечисленных Microsoft и Apple до MIT и Пентагона. В основном компании расплачиваются деньгами, но некоторые — бартером, например, United Airlines награждает ИБ-исследователей милями.

Поиск уязвимостей перестал быть «чисто программным». После найденных уязвимостей в Tesla Model S в 2015 году компания Илона Маска увеличила вознаграждение за аппаратные баги. Microsoft на тот же шаг толкнула недавняя ситуация с процессорными уязвимостями Meltdown и Spectre. Корпорация готова платить большие, по меркам этой индустрии, деньги за найденные баги — $250 тыс. Intel также ищет помощи у охотников за багами.

При этом распространенность и доступность хакерских программ сформировала отдельное направление — Bug Bounty как услуга. Компании могут обратиться на специализированные платформы вроде уже упомянутой HackerOne, а также Bugcrowd, Synack и Cobalt. Эти платформы объединяют хакеров и направляют их усилия на санкционированную атаку чьего-то сайта, приложения, сервиса в обмен на вознаграждение. Только HackerOne за 5 лет существования смогла обеспечить своих участников $20 млн.

Проблемы и победы Bug Bounty


Опыт рынка безопасности говорит, что Bug Bounty помогают компаниям экономить время и средства при поиске уязвимостей. В прошлом году команда корпоративного мессенджера Slack подвела итоги своей трехлетней работы с хакерами. Она рассказала, что за это время было выплачено $210 тыс. тем участникам, которые помогли сделать Slack более безопасным.

При этом показательным был один момент — за месяц до публикации отчёта компании один из ИБ-исследователей выложил в сеть информацию о найденном им баге в мессенджере. Специалисты отреагировали на сообщение об уязвимости через 33 минуты, а уже через 5 часов избавились от бага. Участник программы получил за свою находку $3 тыс.

Другой пример — Министерство обороны США. HackerOne устраивает для него тесты на уязвимость, во время которых обнаруживаются сотни багов. По словам бывшего министра обороны Эштона Картера (Ash Carter), такая работа обошлась бы более чем в $1 млн, если бы Министерство полагалось на свои силы. За найденные баги в итоге заплатили $300 тыс.

Однако на сегодняшний день обстановка с программами Bug Bounty не такая радужная, как может показаться на первый взгляд. В индустрии случаются конфликты, связанные с правовыми вопросами «белого хакинга». В 2015 году эксперт по безопасности компании Synack Уэсли Вайнберг (Wesley Weinberg) обнаружил уязвимость, с помощью которой он получил доступ к огромному количеству данных Instagram: исходным кодам, SSL-сертификатам и приватным ключам, изображениям, загруженным пользователями, и др. Пользуясь этой уязвимостью, можно было выдавать себя за любого пользователя или сотрудника сервиса.

Уэсли сообщил о своей находке в Facebook, владеющей Instagram, рассчитывая на вознаграждение. Но представители компании сказали, что Вайнберг вышел за рамки, то есть получил доступ к личным данным сотрудников компании и пользователей сервиса. А это нарушает правила Bug Bounty компании.

За свою находку Вайнберг был исключен из программы, а его босс — Джей Каплан (Jay Kaplan), CEO Synack, — получил звонок от Алекса Стэймоса (Alex Stamos), сотрудника по вопросам информационной безопасности FB, который пригрозил обращением в полицию, если сведения об уязвимости будут опубликованы.

Этот инцидент поднимает вопросы баланса, этичности и контроля за работой «белых хакеров». С одной стороны компании хотят решить свои проблемы с безопасностью, но с другой им важно уберечь конфиденциальные сведения пользователей и сотрудников, не давая ИТ-исследователям «заходить слишком далеко». Сейчас в США утверждают законопроект, который позволяет Министерству национальной безопасности США запустить свою программу Bug Bounty. Возможно, он установит общие юридические рамки для всего рынка.

Будущее Bug Bounty


В 2017 году у 94% крупнейших публичных компаний из Forbes 2000 не было каналов для получения отчетов об уязвимостях. Однако те компании, которые все же имеют программы Bug Bounty, регулярно увеличивают выплаты участникам. При этом отдельные платформы привлекают средства от инвесторов. Это может говорить о том, что рынок расширяется, и у него есть потенциал для роста.


/ Flickr / Gordon / CC

Есть предпосылки и к автоматизации работы исследователей. Gartner прогнозирует, что к 2020 году 10% тестов на проникновение будут проводиться с помощью алгоритмов машинного обучения (по сравнению с 0% в 2016). Эту тенденцию подтверждают инвестиции в сферу автоматизированных bug hunting-систем. В прошлом году в Microsoft представили платформу, которая с помощью искусственного интеллекта выявляет уязвимости и сообщает о них разработчикам. У Ubisoft есть похожее решение для поиска багов в играх.

Это согласуется с тем, что все больше компаний внедряют решения на основе ИИ в корпоративные системы безопасности. Такой подход позволяет сочетать преимущества программ Bug Bounty с конфиденциальностью — чем меньше на процесс влияет человеческий фактор, тем ниже вероятность утечки информации. Поэтому в будущем, возможно, произойдет перераспределение финансирования между живыми и виртуальными «охотниками за багами».

Несколько материалов из нашего корпоративного блога:

Let's block ads! (Why?)

1 комментарий: