SSL Cookie 中缺少安全标志 (http-cookie-secure-flag)
Posted
技术标签:
【中文标题】SSL Cookie 中缺少安全标志 (http-cookie-secure-flag)【英文标题】:Missing Secure Flag From SSL Cookie (http-cookie-secure-flag) 【发布时间】:2016-01-22 22:20:52 【问题描述】:我需要专家对我面临的问题发表评论/反馈。我有我正在工作的 Magento 站点之一的 PCI 合规性报告。 (Magento 1.4.1.1)。报告是使用 nexpose
生成的PCI 报告指出如下。
缺少来自 SSL Cookie 的安全标志 (http-cookie-secure-flag)
说明:
Secure 属性告诉浏览器仅在请求通过 HTTPS 等安全通道发送时才发送 cookie。这将有助于保护 cookie 不被未加密的请求传递。如果应用程序可以通过 HTTP 和 HTTPS 访问,那么 cookie 就有可能以明文形式发送。
报告提到了以下参考 OWASP-2010: A3 和 OWASP-2013: A2
PCI 合规性证据失败:
Cookie 未标记为安全:
'frontend=2tsnh10jssv89cg0a7n93bf4ji1
cmkn0; path=/; httponly;
domain=www.example.com'
URL: https://www.example.com/
建议的解决方案:
对于您网站中通过 SSL 发送的每个 cookie,将“安全”标志添加到 cookie。
所以我的问题是,是否必须处理高风险才能完全符合 PCI 标准?
我在 SO 上进行了搜索,发现 SSL 安全站点上 Magento cookie 中的“安全”标签在哪里? .
1) 您认为提供的解决方案是否足以解决问题?
2) 将升级到higher version of Magento help?
在发行说明中,我们有以下声明:
为店面添加了一个安全 cookie 标志,以防止中间人攻击。 Secure 和 Unsecure Web 配置选项没有变化。
如果我们从http
切换到https
连接,那时就没有安全标志了..
【问题讨论】:
本网站用于编程问题,我们不是律师,也不在这里解释许可协议。 不管合规性问题如何,在没有“安全”的情况下提供像“前端”这样的会话 cookie 是一个真正的安全风险,因为它允许中间人攻击击败 HTTPS。 【参考方案1】:如此处所述: http://blog.elementps.com/element_payment_solutions/2013/12/new-pci-dss-session-management-requirements-.html
新的 PCI DSS 要求将 https cookie 标记为安全。 所以首先你的网站应该使用 SSL 来处理敏感数据。当您使用 SSL 并向客户端发送 cookie 时,您需要将 cookie 标记为 Secure,这样 cookie 将无法通过 HTTP 协议读取。
对于您问题的最后一部分,是的,使用 SSL、标记您的 cookie Secure 和 HttpOnly 应该满足 PCI 要求。
还有一些额外的要求,例如,会话 ID 应该是唯一的,应该正确失效(没有会话固定),没有 URL 上的会话 ID 等,但我认为您没有这些问题。
要解决此问题,您可以尝试: https://community.magento.com/t5/Version-Upgrades/Secure-cookie-flag/td-p/2997 要么 https://github.com/lukanetconsult/mage-secure-cookie
【讨论】:
以上是关于SSL Cookie 中缺少安全标志 (http-cookie-secure-flag)的主要内容,如果未能解决你的问题,请参考以下文章
IBM AppScan - 加密会话 (SSL) Cookie 中缺少安全属性
IBM AppScan 安全扫描:加密会话(SSL)Cookie 中缺少 Secure 属性 处理办法
cookie 中缺少安全属性:WL_PERSISTENT_COOKIE 和 testcookie