msal库是否防止令牌重放攻击?
它如何阻止某人从重定向URL中获取access token并在另一个应用程序中使用它?
我不确定Azure AD是处理保护还是Microsoft Authentication Library (MSAL) Microsoft
发布于 2019-04-13 09:55:51
它如何阻止某人从重定向URL获取访问令牌并在另一个应用程序中使用它?
MSAL实际上不能对访问URL的东西做任何事情。这是浏览器的职责。相同来源策略要求只有具有相同来源的页面上的脚本才能访问iframe的URL。因此,即使我在我的网站上放置了一个iframe,为您的应用程序进行隐藏登录,如果重定向URL位于与我的主机名不同的主机上,我也无法获得令牌。
因此,假设您的应用程序配置了一个应答URL:https://yoursite.com/aad-callback。如果我想获得令牌,我的站点将需要托管在yoursite.com上。我无法要求AAD将令牌返回到另一个URL。另一个选择是在飞行中拦截它到你的应用程序。但这需要人中的TLS连接。如果有人能做到,你就有更大的麻烦了。
通过使用非set防止重放攻击,在每个身份验证请求中设置一个新值:https://github.com/AzureAD/microsoft-authentication-library-for-js/blob/3fb9ce5a16ea462336eee62b496dfae8611f0fbc/lib/msal-core/src/AuthenticationRequestParameters.ts#L39
https://stackoverflow.com/questions/55657869
复制相似问题