Уязвимость Facebook для Android-устройств преподносит уроки и разработчикам, и пользователям


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

Пример: недавно обнаруженная уязвимость в SDK Facebook для Android. Разработчик провайдера облачных вычислений Parse из Сан-Франциско обнаружил в коде странную  активность и исследовал её. Как выяснилось, эта уязвимость могла нанести серьезный урон разработчикам, пользователям, Facebook и любому другому приложению, использующему его SDK. Только обновление приложения смогло это предотвратить.

Разработчик компании Parse Дэвид Полл (David Poll) работал в клиенте Facebook для Android, когда заметил в утилите logcat, что в определенной строке кода целиком виден маркер доступа пользователя. Logcat – распространенный инструмент отладки для Android, позволяющий наблюдать за логами программ и процессов.

Facebook также использует logcat. Всякий раз, когда Poll заходил в свое тестируемое приложение через Facebook SDK, в коде появлялась эта строка:

Проблемы бы не возникло, появись эта строка исключительно в logcat приложения Полла, поэтому Полл протестировал работу других приложений от крупных разработчиков Zynga и Foursquare – и обнаружил то же самое!

Полл понял, что сможет написать простое приложение, которое через Facebook SDK  украдет данные о маркерах доступа пользователя.

А вот это уже может стать большой проблемой. С маркером доступа пользователя вы получаете полный доступ к учетной записи. Разработчик-злоумышленник может использовать профиль пользователя в Facebook для рассылки спама или в других целях, а виновником будет выглядеть взломанное приложение, а не пользователь и не похититель данных. Представьте, как будет сбивать с толку, если Foursquare начнет рассылать спам и вирусы в Facebook через неизвестное приложение этого пользователя.

Полл написал приложение «FacebookThief», доказывающее его теорию. Состоящее всего из 20 строк кода, приложение способно маскироваться под любого пользователя Facebook, который залогинен в любом из приложений, использующем Facebook SDK. Полл и Parse сообщили об этом опыте Facebook (и были вознаграждены из фонда Facebook). В течение суток уязвимость была устранена, а Parse получила новую версию SDK для использования в своих приложениях.

Из этой ситуации стоит вынести урок и пользователям, и разработчикам.


Как отмечает Полл в блоге Parse, Facebook SDK для Android – это «программное обеспечение, которое работает на клиенте и встроено в другие приложения, поэтому у команды Facebook нет реальной возможности доставить обновление всем работающим с ним разработчикам».

Разработчикам потребуется самостоятельно скачать новую версию, затем вручную переустановить SDK и загрузить новые версии созданных с его помощью приложений. Нет никаких гарантий, что создатели приложений последуют этим рекомендациям: поддержка приложения может быть уже прекращена или причиной может стать их лень (да, среди разработчиков тоже бывают ленивые).

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

Урок разработчикам: существуют верные и неверные способы сообщить другой компании об уязвимости в ПО. В данном случае Parse уведомила Facebook в феврале и с пониманием отнеслась в просьбе не предавать это огласке до настоящего времени. По окончании сотрудничество с основными с основными разработчиками над обновлением их приложений Facebook разрешил Parse анонсировать обнаруженную уязвимость.

Уроки для пользователей просты:
1.    Убедитесь, что знаете, какой доступ и с какой целью запрашивает приложение;
2.    Всегда обновляйте приложения.

В этом случае любое приложение с разрешением "READ SENSITIVE LOG DATA" может поучить маркеры доступа из Facebook SDK. «Существуют объективные причины запроса доступа к данным, но пользователи должны с осторожностью относиться к любому приложению, запрашивающему доступ без необходимости» - пишет Полл.

Несмотря на то, что Facebook справился с уязвимостью, это не означает, что она исчезла. Она всё ещё присутствует в Android-приложениях, использующих старую версию Facebook SDK. Также она присутствует в устройствах  пользователей, которые не обновили приложения до защищенных версий.

Финальный вывод заключается в том, что быть слишком осторожным невозможно. Это относится как к пользователям, так и к разработчикам. Единственный способ избежать подобных уязвимостей – быть внимательным и ответственным: разработчику в вопросе написания кода, пользователю относительно разрешения доступа приложения к данным и своевременного обновления приложений.

Фред Воленс (Fred Wolens) – PR-служба Facebook:

Мы благодарны разработчикам, которые обратили наше внимание на уязвимость и ответственно отнеслись к сотрудничеству в рамках проекта White Hat. Для понимания природы уязвимости мы сотрудничали с этой командой, что позволило выпустить новую версию SDK и передать её разработчикам, а также предотвратить использование этой уязвимости. Могут пострадать пользователи, установившие прежнюю версию приложения и разрешившие приложению «Считывать конфиденциальные данные журнала». Пользователи могут обезопасить себя посредством загрузки новых версий приложений и удалением приложений, не заслуживающих доверия. Благодаря ответственному отношению Facebook к этому вопросу, заявления об использовании этой уязвимости отсутствуют. В благодарность за вклад в безопасность Facebook команда разработчиков получит  премию.

15 апреля 2012

Новикова Евгения

Источник:www.readwriteweb.com




Наши соцсети

Подписаться Facebook Подписаться Вконтакте Подписаться Twitter Подписаться Google Подписаться Telegram

Популярное

Ссылки

Новости [1] [2] [3]... Android/ iOS/ J2ME[1] [2] [3]) Android / Архив

Рейтинг@Mail.ru Яндекс.Метрика
MobiLab.ru © 2005-2018
При использовании материалов сайта ссылка на www.mobilab.ru обязательна