Каковы риски безопасности при раскрытии токена доступа пользователя Facebook в javascript? - PullRequest
11 голосов
/ 25 января 2012

Предположим, что мое приложение имеет токен доступа для какого-то пользователя Facebook. Есть ли угроза безопасности, когда этот токен доступа в JS Code предоставляется другим пользователям, которые посещают мой сайт? Если так, что они могут сделать с этим?

Ответы [ 4 ]

14 голосов
/ 30 января 2012

Вы рискуете

  1. Запутанный заместитель - ваш код предоставляет привилегии коду, который может злоупотреблять этими привилегиями либо намеренно, либо действуя от имени еще большего количества вредоносного кода.
  2. Кража через внедрение кода (XSS) - учетные данные могут быть украдены кодом, введенным на вашу страницу с помощью уязвимости XSS, а затем использованы для действий от имени пользователя, возможно, создавая журналы, которые указывают на виновник.
  3. Кража через перехват - если контент, не являющийся HTTPS, проходит через соединение между браузером и вашим сервером, то перехватчик с возможностью чтения пакетов может украсть учетные данные.
  4. Кража вредоносным ПО - если на компьютере пользователя запущено вредоносное ПО, то отправка этих учетных данных в браузер подвергает их воздействию этого вредоносного ПО. Вредоносному ПО, вероятно, придется считывать память, принадлежащую процессу браузера, или кэшировать файлы, записанные браузером.
9 голосов
/ 25 января 2012

Токен доступа Facebook предоставляет те же права, которые ваше приложение имеет конкретному пользователю, любому, кто имеет доступ к токену.Таким образом, если ваше приложение получает права на выполнение действий A, B и C и получает соответствующий токен, любое другое приложение, которое сможет получить токен, будет иметь такие же права для этого пользователя (до истечения срока действия токена).).

Так что, да, риск есть.Вам необходимо защитить токен от доступа кому-либо / всему, что не должно иметь таких же прав для пользователя Facebook, как ваше приложение.

3 голосов
/ 04 февраля 2012

Этот токен доступа может использоваться кем угодно в любом месте, чтобы делать все, на что у токена доступа есть разрешения.Что делает его мощным, не так ли?

Итак, отображение access_token в javascript действительно зависит от того, откуда запускается этот javascript и по какому типу сети отправляется этот токен доступа.1004 * Если все идет по https, то вам не следует беспокоиться, если устройство, на котором работает JavaScript, в противном случае безопасно (скажем, браузер персонального мобильного телефона с блокировкой экрана).

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

Если вы общаетесь по http, то это широко открыто для всего мира.Плохо, плохо, плохо.

Итак, поскольку вы не предоставили нам никакой информации о состоянии окружающей среды, это довольно расплывчатые вопросы.Так что мой итог будет не таким расплывчатым. Не делайте этого! Просто дайте JavaScript Javascript SDK Facebook обработать для вас access_token.

2 голосов
/ 06 февраля 2012

Раскрытие токена безопасности может сделать ваших пользователей уязвимыми для взлома

Я помню программное обеспечение "FaceNiff", которое работает на рутированном телефоне Android, оно анализирует маркер безопасности Facebook и других веб-сайтов иВы можете войти в систему с учетной записью любого пользователя, который подключен к этому WIFI.

В другом программном обеспечении Android была уязвимость, которая позволяла хакерам прослушивать ваш маркер безопасности календаря gmail и получить полный доступ.

Читать этот пост http://www.techlicious.com/blog/android-security-flaw-could-expose-you-to-data-theft/

...