Javascript 通过不受信任的域将cookie向下传递到iframe(禁用第三方cookie)
这是我们遇到的一个场景 假设我们有:Javascript 通过不受信任的域将cookie向下传递到iframe(禁用第三方cookie),javascript,security,cryptography,Javascript,Security,Cryptography,这是我们遇到的一个场景 假设我们有: 一些不受信任的域,untrusted.com 我们拥有完全控制权的受信任域,trusted.com 给出了以下内容: untrusted.com页面上有一个从trusted.com加载的javascript脚本,因此trusted.com可以完全控制untrusted.com 此javascript文件在untrusted.com页面上创建一个iframe,指向trusted.com 用户浏览器处于禁用第三方Cookie的模式,因此iframe无法访问
- 一些不受信任的域,
untrusted.com
- 我们拥有完全控制权的受信任域,
trusted.com
页面上有一个从untrusted.com
加载的javascript脚本,因此trusted.com
可以完全控制trusted.com
untrusted.com
- 此javascript文件在
页面上创建一个iframe,指向untrusted.com
trusted.com
- 用户浏览器处于禁用第三方Cookie的模式,因此iframe无法访问
trusted.com上设置的任何Cookie
- 我们希望使来自
的会话cookie在iframe中可用trusted.com
- 我们绝对不能允许
查看此会话cookie的值untrusted.com
- 我们不能只加密它并通过
,因为这将允许untrusted.com
拦截并重播它untrusted.com
untrusted.com
不会重播它
b) 我们100%确定
untrusted.com
无法读取cookie的原始值首页无法看到iframe或其页面内的变量或cookie。是的,我知道。我的问题是,我希望能够以某种方式通过父页面手动传递cookie。这是一种框架处于第三方cookies禁用模式的情况,因此它无法单独访问cookies。很久以前,为了安全起见,kings会雇佣知道如何书写但不会阅读的抄写员(是的,这是可能的),但JS中没有类似的情况:如果你给某人一些东西,他们可以看到它,为什么不直接将信息打印到框架页面而不是使用cookies?请记住,从trusted.com
加载的JavaScript将无法访问trusted.com
上用户的cookies,因为此JavaScript请求将被归类为第三方请求。解决这个问题的唯一方法是打开一个弹出窗口,这将需要用户单击以击败弹出窗口阻止程序。然后您会遇到将会话标识符从弹出窗口传递到IFrame的问题,我希望它会被阻止。乱七八糟的,而且我认为这不管用。是的。请记住,我们可以控制trusted.com
服务器端,因此如果需要启用CORS或JSONP端点,我们可以这样做。但还是不确定我们会让它返回什么。