[Перевод] Исследователь опубликовал пример рабочего кода червя для Facebook

Одна группировка уже злоупотребляет этой проблемой, размещая спам на стенах пользователей


8bca69790d798a4a29a3724866766a19.jpg

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

Этот код эксплуатирует уязвимость платформы Facebook, за злоупотреблением которой группой спамеров наблюдал польский исследователь, использующий в интернете псевдоним Lasq. Уязвимость скрывается в мобильной версии всплывающего диалога, предлагающего поделиться информацией с другими пользователями. На десктопе этой уязвимости нет.

Lasq говорит, что уязвимость, основанная на кликджекинге, существует в мобильной версии диалога «поделиться», которую атакующий использует через элементы iframe. Группа спамеров, которая, по всей видимости, обнаружила эту уязвимость до Lasq, использует её для размещения ссылок на стенах пользователей Facebook.
Как пояснил Lasq:

Вчера на Facebook прошла очень назойливая спам-кампания, во время которой многие мои друзья опубликовали ссылку, по которой открывался сайт, размещённый на AWS. Это был какой-то французский сайт с комедийными комиксами — так что, кто бы не кликнул на этой ссылке?
А после клика на ссылке появлялся сайт, размещённый на AWS. Он просил вас подтвердить, что вам больше 16 лет (на французском языке), чтобы получить доступ к содержимому. После нажатия на кнопку вас и правда переправляли на страницу с комиксом и кучей рекламы. Но в это же время ссылка, по которой вы перешли, появлялась у вас на стене в Facebook.

Исследователь сказал, что добрался до сути проблемы, и она состоит в том, что Facebook игнорирует заголовок X-Frame-Options в диалоге «поделиться» в мобильной версии. Согласно документации на MDN, одобренной веб-индустрией, этот заголовок используется сайтами для того, чтобы предотвратить загрузку их кода внутри iframe, и является основным вариантом защиты от кликджекинга.

Lasq сказал, что сообщил об этой проблеме на Facebook, но компания отказалась её исправлять.

«Как и следовало ожидать, в Facebook не посчитали это проблемой, несмотря на то, что я пытался объяснить, какие последствия для безопасности она имеет, — сказал он. — Они заявили, что для того, чтобы считать кликджекинг проблемой для безопасности, у атакующего должна быть возможность изменять состояние учётной записи (к примеру, отключать настройки безопасности или удалять учётную запись)».

«По-моему, они должны это исправить, — добавил исследователь. — Как вы видите, атакующему будет крайне легко злоупотребить этой «особенностью», обманом заставляя пользователей делиться чем-то на стене. Невозможно преувеличить опасность подобной возможности. Сегодня её используют для спама, но я легко могу представить себе более сложные варианты использования такой технологии».

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

В ответ на обращение ZDNet, в Facebook заявили, что не видят в этом проблемы, как это было и в случае с Lasq.

«Мы признательны за информацию, полученную от данного исследователя, и в данный момент мы начали работы по этому вопросу, — сообщил представитель Facebook. — Мы встроили возможность появления мобильной версии диалога «поделиться» в iframe для того, чтобы люди могли воспользоваться ею на сторонних веб-сайтах».

«Чтобы предотвратить злоупотребление данной функцией, мы используем системы обнаружения кликджекинга для всех продуктов, встраиваемых в iframe. Мы постоянно улучшаем эти системы на основании получаемых сигналов, — сказали нам в Facebook. — Независимо от данного отчёта, на этой неделе мы уже улучшили систему обнаружения кликджекинга, сводящую на нет риски, описанные в отчёте исследователя».

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

© Habrahabr.ru