Oauth-带有pkce的授权代码流-将localhost用作redirect_uri

时间:2020-05-14 16:37:55

标签: oauth-2.0 azure-active-directory openid-connect

使用本地主机作为重定向uri是否有安全隐患?

大多数情况下,本地主机将通过HTTP提供服务,因为在开发环境中未安装ssl证书。在Azure广告中,如果它不是localhost,则应以https开头。

但是,在授权过程中,攻击者可以从URL获取客户端ID后,攻击者可以使用localhost获取令牌吗?我很好奇。

1 个答案:

答案 0 :(得分:0)

在redirect_uris中使用localhost主要是为了容纳开发人员。但是,即使您在生产中允许使用它,并且攻击者可以在授权请求中添加或更改redirect_uri查询参数,它仍然是无害的。

授权服务器对受害者进行身份验证并获得他们的同意后,它会使用HTTP 302状态代码和Location标头(其中之一是授权代码)响应受害者的用户代理(浏览器)。查询参数。当受害者的浏览器遵循该重定向时,localhost主机地址就是受害者的机器。除非攻击者已经在受害者的计算机上运行了代码(此时战斗已经失败),否则攻击者将无法截获该漏洞。