24 января 2017

«Я просто нашел место, где забыли обновить программу»: как петербуржец заработал на ошибке в Facebook 40 тысяч долларов

Петербургский программист Андрей Леонов получил рекордный гонорар от Facebook: компания выплатила ему 40 тысяч долларов за то, что он обнаружил уязвимость соцсети при обработке изображений.

Леонов рассказал «Бумаге», как смог заработать на невнимательности разработчиков Facebook, чем грозила ошибка в соцсети и как программисты в России и за рубежом за деньги ищут слабые места в программах.

Андрей Леонов

Как найти уязвимость в Facebook и почему это не хакерство

Я работаю в отделе безопасности IT-компании SEMrush, которая разрабатывает инструменты для онлайн-маркетинга. И в свободное время занимаюсь поиском уязвимостей на сайтах, у которых есть открытая программа поощрения исследований.

В чем заключается суть уязвимости? На Facebook есть страница, где можно расшарить новость: написать содержание поста, прикрепить фотографию. Часть скрипта отвечает за обработку изображения, то есть запрашивает его с одного сервера и перекачивает на сервер Facebook. Так вот эта часть была построена с помощью уязвимой библиотеки ImageMagick — это очень известная и распространенная библиотека, которая позволяет производить некие манипуляции с изображением, в частности, менять их размер и формат. В конце апреля прошлого года несколько исследователей безопасности обнаружили, что она уязвима к нескольким типам уязвимости, и к началу мая ImageMagick выпустили исправления.

Когда я наткнулся на эту страницу, то подумал, что раз тут происходит конвертация, то, наверное, можно ее проверить. Но, честно говоря, последнее, о чем я думал, так это о том, что Facebook где-то забыл обновить библиотеку с уязвимой версии на неуязвимую. Ты этого не ожидаешь, но, с другой стороны, в такой большой инфраструктуре, как Facebook, такое возможно. Представьте: у них 10 000 серверов и, допустим, на двадцати они забыли обновить.

Для пользователя всё работало. Но при определенных воздействиях можно было исполнить код на серверах компании Facebook, то есть получить доступ к данным, которые там хранятся. Какие там были данные, я, естественно, не знаю, потому что, по правилам участия в программе Facebook и других компаний, исследователь не имеет права лезть дальше. Он находит какую-то точку входа — и на ней должен остановиться, потому что иначе в лучшем случае лишится выплаты, в худшем — к нему применят все возможные меры как к хакеру уже в плохом смысле слова.

Изображение из блога Андрея Леонова

От чего зависит сумма гонорара

Какие-то репутационные выгоды, естественно, тут есть, потому что, когда ты находишь что-то крупное, в данной тусовке о тебе узнают. Но я не создал никакого академического знания, а просто нашел место, где забыли обновить программу. Тот же Реджинальдо Сильве (бразилец, который получил от Facebook предыдущую рекордную сумму в 33,5 тысячи долларов — прим. «Бумаги») свел воедино несколько малозначимых факторов, и у него была технически сложная вещь.

До момента выплаты прошло около 2,5 недель, но вообще это зависит от контекста. Например, какая-то уязвимость может требовать длительной оценки степени той угрозы, которую она в себе несла. Facebook подтвердил, что данная уязвимость не была проэксплуатирована ни разу, то есть никто ей не воспользовался. Но если бы ее кто-то применил, тогда, я уверен, они вначале бы провели доскональное внутреннее расследование.

Сумма зависит от нескольких факторов. Во-первых, Facebook, как и Google, в принципе очень щедр на выплаты. За то, за что в среднем по рынку платят от 200 до 1000 долларов, они платят от 5 до 10 тысяч. Второй аспект — это классификация самих уязвимостей. Удаленное исполнение кода — это максимальный рейтинг в классификации, потому что я фактически могу делать всё то же, что и хозяин сервера. Дальше, есть различия в угрозе: одно дело, если это сервер, на котором нет ничего ценного, и другое, если на нем хранится база всех клиентов. Я допускаю, что в моем случае это давало доступ к какой-то важной информации, но не уверен, так как не имел права смотреть.

Как компании платят исследователям в России
и на Западе

В 2011 году Facebook был одной из первых компаний, которые публично объявили, что они готовы взаимодействовать с исследователями безопасности и выплачивать им деньги. Кроме них так сделали Google и Mozilla. Где-то к 2013-му так стали поступать многие. Существуют также приватные программы: если компания не хочет объявлять о своей программе публично или не хочет, чтобы доступ к ней имело большое число людей, потому что это огромные накладные расходы. Допустим, у меня есть сайт, я позвал десять человек, которые нашли десять уязвимостей. Я могу исправить эти проблемы комплексно сразу везде — так, что следующие исследователи их уже не найдут. А если я позову сразу 10 тысяч человек, то они найдут много чего и это будет очень дорого.

При этом надо понимать, что за счет больших выплат Facebook и его новых функций, которые часто выходят, много людей следит за ним и проверяет его. Сообщество таких людей, как я, — это, наверное, 40–50 тысяч человек во всем мире. Если хотя бы половина регулярно смотрит Facebook, то вероятность, что я там вообще что-то найду, 1:25 000. Кроме того, нужно еще быть первым, потом что деньги получает только первый.

Западных компаний больше, но все крупные российские IT-компании тоже в этом участвуют: «Яндекс», Mail.ru, «ВКонтакте», «Одноклассники». Выплаты разнятся, но на рынке находятся посередине: не занижают и не завышают. Все понимают, что, какую бы команду ты в свою компанию ни нанял, полностью избежать того, что у тебя где-то что-то вылезет, невозможно.

Если вы нашли опечатку, пожалуйста, сообщите нам. Выделите текст с ошибкой и нажмите появившуюся кнопку.
Подписывайтесь на «Бумагу» там, где вам удобно
Все тексты
Четвертая волна коронавируса
В России зарегистрировали первые случаи заражения омикрон-штаммом
Вижу новости, что Петербург в лидерах по коллективному иммунитету к COVID-19. Это правда?
Росстат: в октябре скончалось 2565 петербуржцев с коронавирусом. В отличие от всей России это не максимум
Смольный: более 80 % госпитализированных в Петербурге старше 60 лет
За последний год в России умерли 2,4 миллиона человек. Это худший показатель смертности со времен войны
Новый год — 2022
В «РЖД» объявили новогоднюю распродажу. Билет на «Сапсан» в Петербург будет стоить 2022 рубля
На Новой Голландии каждую зиму работают фигуристы в костюмах. В этом сезоне они нарядились в виде диско-шаров 🥳
В Петербурге запустили почту Деда Мороза — письмо можно отправить в Великий Устюг. Как это работает?
12-метровая горка, карусель и маркет. Как этой зимой выглядит двор «Никольских рядов»
В Ленобласти можно бесплатно заготовить новогоднюю елку. Рассказываем как
Как меняется Петербург
В Ломоносове появилось новое общественное пространство — на месте бывшего пустыря
В саду Дружбы закончились работы по благоустройству. Показываем, как изменилось общественное пространство
Ради строительства Большого Смоленского моста хотят снести восемь исторических домов. Что это за здания?
Смольный может построить велодорожку из Лахты до Смолячкова. На «технико-экономическое обоснование» проекта выделили 11 млн рублей
Новый мост через Неву свяжет два берега Невского и Красногвардейского районов. Что известно о разводной переправе и как она может выглядеть
Вакцинация от коронавируса
Вижу новости, что Петербург в лидерах по коллективному иммунитету к COVID-19. Это правда?
В Петербурге задержали четырех человек, организовавших бизнес по продаже поддельных QR-кодов. Позднее прокуратура отменила возбуждение уголовного дела
В Петербург поступила новая партия вакцины «Спутник V» — более 100 тысяч доз
Что известно про новый штамм коронавируса B.1.1.529? Насколько он опасен и заражен ли им кто-то в России?
В общественном транспорте Петербурга не будут вводить QR-коды. А что насчет такси?
Коллеги «Бумаги»
Обвинительные клоны
Непрофессиональное заболевание
Как читать новости о ковиде?
Научпоп
В России вручили премию «За верность науке». Лучшим научно-просветительским проектом года стал Science Slam 🙌
Мы заполнили два вагона поезда Москва — Петербург молодыми учеными. Что было дальше?
«Мир знаний» — ежегодный фестиваль научного кино. Как он изменился и что покажут в этот раз
Фестиваль научных и исследовательских фильмов «Мир знаний» проведут в Петербурге с 1 по 6 декабря. Тема этого года — космос
Почему у облаков в Петербурге бывают ровные края? Мы узнали у популяризатора астрономии и синоптика. Обновлено
Подкасты «Бумаги»
Зачем развивать бизнес-мышление, если вы не предприниматель? Слушаем лекцию о прогнозах, рисках и кризисах
Можно ли воскресить динозавров и мамонтов? Обсуждаем с учеными, зачем восстанавливать древних животных и что с ними стало бы сегодня
Мы всегда онлайн! Не пора отдохнуть от интернета? В этом подкасте обсуждаем зависимость от соцсетей и диджитал-детокс
Как большие данные изменили науку? В этом подкасте слушайте, что можно узнать о соцсетях, дружбе и неравенстве благодаря big data
Как понять, что вы живете в гетто? Слушайте лекцию о том, почему происходит сегрегация в городах
К сожалению, мы не поддерживаем Internet Explorer. Читайте наши материалы с помощью других браузеров, например, Mozilla Firefox или Chrome.