Офтоп
Роман Персианинов

Фейсбук выплатил российскому программисту рекордные 40 тысяч долларов за найденную уязвимость

Российский программист Андрей Леонов обнаружил в Фейсбуке уязвимость, с помощью которой на серверах социальной сети можно запускать произвольный код. За эту работу руководство компании выплатило ему рекордные 40 тысяч долларов по программе выплат для хакеров, присылающих репортажи об ошибках, сообщает Fortune.

Фото Getty Images

Как рассказал Леонов в своём блоге, он обнаружил ошибку во время обработки фотографий на сервере Фейсбука. Для уменьшения объёма социальная сеть использует сервис ImageMagick, и когда пользователь делится ссылкой на фотографию, Фейсбук забирает со страницы картинку и проносит её через ImageMagick.

Уязвимость же состоит в том, что при загрузке файла на сервис по обработке фотографий, он автоматически проверяет формат изображения — JPG, GIF или PNG. Обычно тип файла проверяется по первым байтам, что позволяет замаскировать файл со своим кодом в данных картинки.

Ошибку обнаружили ещё в апреле 2016 года, но тогда руководство Фейсбук заявило, что они позаботятся о проблеме. Однако в октябре Леонов воспользовался уязвимостью и отправил результаты работникам социальной сети. К ноябрю он получил выплату в 40 тысяч долларов.

Скриншот Андрея Леонова

В разговоре с журналистом Fortune представители Фейсбук подтвердили, что выплата Леонову — самая крупная за всё время существования программы по выплате денег за найденные ошибки. До него самую большую выплату в размере более 33 тысяч долларов получил программист Режиналдо Сильве за уязвимость, позволяющую считывать любые файлы на сервере.

Идея выплачивать награды за найденные в программах уязвимости появилась в 1995 году за авторством работника IT-компании Netscape. С тех пор подобная практика применяется руководством Yahoo, Google, Reddit, Square и Microsoft. В Фейсбуке программу запустили в 2011 году.