【发布时间】:2019-05-25 03:50:51
【问题描述】:
消费者网站(例如 nytimes.com)是否有办法确保其加载的 iframe 无法与任何服务器通信,并且只能访问 postMessage?这可以从托管 iframe 文档的服务器上完成。但我不想信任该服务器。
这就是我需要的:我想使用微妙加密存储不可提取的非对称密钥,使用由第三方审核的内联 JS 加载一些静态 HTML,我确信这是使用 SRI 加载的内容,最后将一些数据usibg postMessage传递给它,并通过覆盖postMessag来关闭该sanbox中的门,以保证用户代理的用户从那时起解密和显示的任何数据都不会泄露给其他任何人(假设用户代理遵循网络标准)。
用户如何知道他们可以信任 iframe?因为 iframe 会在门关闭后显示他们选择的一些熟悉的字符串,由相同的私钥解密。由于不可提取,没有服务器可以解密,所以它必须是用户信任的经过审核的安全 HTML + JS 环境。
但是用户和嵌入站点如何验证并确定 iframe 的内容安全策略是什么?
【问题讨论】:
-
用户只需要在注册过程中信任 iframe 的域,当他们选择他们的特殊短语来安慰自己时。这个短语也会出现在输入中的键盘焦点上,表示输入是安全的,以防止点击劫持。
-
您可能会问,如果代码经过审核并加载了 SRI,为什么我需要制定内容安全策略。首先,我可以在该环境中接收和运行任意代码。其次,因为用户需要信任环境,而消费者网站可能会欺骗用户并加载其他内容。用户在输入密码解锁环境之前需要知道 DOOR IS CLOSED。
标签: iframe user-agent content-security-policy webcrypto-api subresource-integrity