Web应用程序是否可以安全/安全地使用,这不是问题!

但是,如果我有一个会话或加密密钥,并且希望使用javascript在客户端将其隐藏起来,最好的方法是什么?

我想使用sessionStorage,直到我发现任何扩展程序至少可以在Chrome中从内容脚本中读取它。在我看来,这是开发人员的一个重大错误,因为他们将扩展中的网页javascript隐藏起来,但允许其查看网络存储。到处都说扩展名只能看到DOM,但我认为大多数人都认为它也包括Web存储!

那么,如何保护会话密钥以使其无法扩展?无法加密它,因为我只需要隐藏密钥即可。问题在于该会话必须对网站的所有页面均有效,因此我不能仅将其保留在javascript中,因为它会在每次页面加载时刷新。

在我看来,Cookie同样糟糕!

注意:不知道这对于其他浏览器是否也是一个问题

最佳答案

拥有访问页面权限的扩展程序可以执行任何操作。

从内容脚本作为<script>标记注入到DOM中的代码将执行,无论页面上下文中的CSP是什么,都将完全访问JS上下文。

甚至不提chrome.debugger API。

因此,不能,您无法从用户同意在您的页面上运行的扩展程序中保护客户端数据,就像无法从浏览器本身中保护数据一样。

07-24 17:43
查看更多