根据面向开发者的Facebook手册(https://developers.facebook.com/docs/facebook-login/security),您不必使用来自某些Facebook SDK客户端的access_token
,但不确保它是专门为您的Facebook应用程序生成的。Facebook令牌劫持漏洞
我在想这里有什么样的漏洞。为什么我应该关心哪个应用程序接收到令牌?如果我可以使用它来进行API调用并通过它获取用户数据?
令牌劫持
要明白这是如何发生,假设要进行API调用原生iOS应用,但不是直接做这件事,由相同的应用程序和传球拥有的服务器进行通信该服务器使用iOS SDK生成一个令牌。服务器然后将使用该令牌来进行API调用。
服务器用于接收令牌的端点可能会受到影响,而其他端点可能会将访问令牌传递给完全不同的应用程序。这显然是不安全的,但有一种方法可以防止这种情况发生 - 访问令牌永远不应该被认为是来自正在使用它们的应用程序,而应该使用调试端点进行检查。
那么有人可以传递一个令牌为另一个应用程序,然后你会试图执行与另一个应用程序,这将导致错误或不安全的行为。 –