为了安全起见,我应该了解Cookie的域和范围吗?

| 在哪里可以了解(或了解)cookie的范围,从而避免对经过身份验证的用户进行CSRF和XSS攻击? 例如,如果我有一个多租户系统,其中一个用户可以访问一个或多个站点,那么更安全: company1.hoster.com company2.hoster.com company3.hoster.com 要么 www.hoster.com/company1 www.hoster.com/company2 www.hoster.com/company3 如果在\“ hoster.com \”上设置cookie,会发生什么情况?     
已邀请:
您可以分别在域和路径中限制Cookie的有效范围。因此,您可以在两种情况下都设置一个cookie,该cookie仅对特定的域/路径组合有效: 要仅将“ 0”设置为Cookie,请执行以下操作:
Set-Cookie: name=value; Path=/
省略Domain属性会使cookie仅对设置了该cookie的域有效。对于
Path=/
,该cookie对于前缀为
/
的任何路径均有效。 要将Cookie设置为仅适用于
//example.com/company1/
Set-Cookie: name=value; Path=/company1/
与上述示例的解释相同。唯一的限制是您需要使用
/company1/
而不是
/company1
,因为
Path=/company1
会等同于
Path=/
,因此cookie也会对
/company2
/company3
同样有效。 为了避免可以通过JavaScript读取cookie(减少使用XSS可以访问的资产),请设置HttpOnly属性。     
Open Web应用程序安全性项目发布了许多有关安全Web应用程序开发的有价值的信息。 Cookie具有范围和路径属性,您通常不希望\“ / \”发出问题cookie,否则通配符主机* .hoster.com都将不被建议。 这并不像这个决定那么简单,而是考虑到设计中的安全性是一件好事,但是安全性是开发每个阶段的过程。     

要回复问题请先登录注册