是否可以阅读第三方cookie

时间:2013-07-15 20:54:46

标签: php cookies

我熟悉设置阅读cookie(使用php),但如果有一种方法可以让用户浏览其他第三方网站设置的cookie(即不是你自己的网站),我就会徘徊。 p>

可以写这样的东西来查看所有用户设置的cookie吗?

print_r($_COOKIE);

5 个答案:

答案 0 :(得分:6)

不,这是不可能的。

您只能阅读来自您自己域名的Cookie。其他cookie甚至不会发送到您的服务器。

如果您可以阅读用户拥有的每个Cookie,您就可以获取个人信息,例如他们的Facebook密码,与银行的连接等。

这将严重侵犯隐私,因此,除了来自同一域的Cookie之外,浏览器不会发送Cookie。

答案 1 :(得分:2)

当您访问网站时,您的网络浏览器会请求来自该域(somedomain.com)的信息,并且该第三方域名允许设置Cookie。每个域只能读取它创建的cookie,因此anotherdomain.com无法访问由somedomain.com创建的cookie。

答案 2 :(得分:1)

不可以,这是不可能的,因为浏览器只发送您的域设置的cookie,通常,如果先前由域设置,它会附加到HTTP请求的标头。

第三方cookie是在目标域的上下文中由另一个域设置的cookie,例如:在打开example.com时,它可能有来自其他网站(example2.com)的横幅,在这种情况下,如果是example2 .com设置cookie它不能被example.com读取,因为它们来自不同的Origin,浏览器阻止甚至脚本访问它。

答案 3 :(得分:1)

要阅读Cookie,您必须与最初创建Cookie的域匹配。浏览器认为这是一个安全原则,不会让网站访问他们没有创建的任何cookie。

请注意,还有其他一些安全注意事项可能会绕过此规则,例如DNSMasq与欺骗性浏览器证书相结合。这就是为什么DNSSec(和SOPA)是如此热门的问题;安全漏洞DNSSec插件还可以保护您的cookie免于从您的cookie罐中被盗。

过去有泄漏的安全漏洞的真实例子。有关2008年甚至不同安全漏洞的示例,请参阅here

答案 4 :(得分:0)

不,当然不是。否则你的网站会知道我银行的登录cookie,你就可以偷走我所有的钱。 Cookie仅适用于设置它们的域。