浏览器

时间:2017-04-07 06:49:32

标签: session cookies oauth-2.0 client-side-attacks

我正在通过auth 2.0协议[1],以及证明密钥RFC [2]。它解释了协议如何防止恶意应用程序收听网络流量。但是,我无法理解auth 2.0协议如何防止在浏览器本身上运行的恶意代码。

让我们举一个证明密钥RFC协议的简单案例。我们生成一个高熵代码验证程序,但是我们必须将它存储在浏览器中的某个位置(可能在cookie /浏览器的本地存储中)以再次使用它来获取令牌。现在,如果在浏览器上执行恶意代码,它总是可以访问cookie /本地存储并获取代码验证程序。

是否存在可以防止基于cookie的攻击的协议增强(类似于RFC-7636)?如果没有,我们如何减轻它?

[1] https://tools.ietf.org/html/rfc6749

[2] https://tools.ietf.org/html/rfc7636

1 个答案:

答案 0 :(得分:1)

OAuth 2.0适用于不同类型的客户端,即Web客户端,浏览器内客户端和本机移动应用客户端。

PCKE OAuth 2.0机制主要是为Native Mobile Apps设计的。它允许公共客户保护自己免受可能掌握授权码的恶意应用和攻击者的攻击。<​​/ p>

在处理Web客户端时,不需要PCKE机制,因为使用机密客户端和服务器端存储的客户端密钥可以防止这些攻击。

在处理浏览器内客户端时,您提到的问题是,但一般情况下,当浏览器中运行恶意代码时,所有希望都会丢失。

总结:PKCE不是一种防范浏览器中跨站点脚本攻击的机制。