Независимый исследователь Мохамед Басет (Mohamed Baset) нашел в коде Facebook неприятный баг, за который компания уже выплатила исследователю 2500 долларов по программе bug bounty.
Басет обнаружил, что любой желающий способен узнать данные администраторов конкретных Facebook-страниц, хотя в нормальной ситуации эта информация не должна быть публичной.
Исследователь пишет, что нашел «логическую ошибку» практически случайно, за считанные минуты, не разрабатывая для этого никаких proof of concept эксплоитов и инструментов для тестирования.
Ошибка была обнаружена, когда специалист получил приглашение поставить «лайк» конкретной Facebook-странице, на которой он ранее «полайкал» публикацию. Эта функция для администраторов появилась в социальной сети совсем недавно. Теперь операторы страниц могут отправлять пользователям, которым ранее понравилась какая-то запись, специальные приглашения и спрашивать, не хотят ли те поставить «лайк» самой странице. Уведомления о таких приглашениях приходят, в том числе, и на электронную почту пользователя.
Получив письмо с приглашением поставить «лайк» некой странице, Басет машинально нажал «show original», чтобы просмотреть код письма. В коде он с удивлением обнаружил имя администратора страницы, его ID и другую информацию, которая должна быть закрытой.
Хотя на первый взгляд проблема не кажется опасной, подобные утечки данных хорошо комбинируются с другими атаками. К примеру, таким образом злоумышленники могут вычислить администраторов конкретных страниц, чтобы затем применить к ним методы социальной инженерии или хорошо продуманную таргетированную атаку.
Служба безопасности Facebook, которую Басет уведомил о своей находке, полностью согласилась со специалистом и признала, что баг действительно представлял опасность для пользователей. Разработчики социальной сети подчеркнули, что информация об администраторе, отправившем письмо с приглашением, раскрывалась лишь «при определенных обстоятельствах». Как бы то ни было, в настоящее время проблема уже была устранена, личные данные администраторов более не попадают в код письма, а Басет заработал 2500 долларов за несколько минут.