php - SSL Cookie 中缺少安全标志 (http-cookie-secure-flag)

标签 php security magento cookies pci-dss

我需要专家对我面临的问题发表评论/反馈。我有我正在处理的 Magento 站点之一的 PCI 合规性报告。 (Magento 1.4.1.1)。该报告是使用nexpose

生成的

PCI 报告陈述如下。

Missing Secure Flag From 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 标志以防止中间人攻击。安全和不安全的 Web 配置选项没有变化。

如果我们从 http 切换到 https 连接,此时没有安全标志..

最佳答案

正如此处所解释的: http://blog.elementps.com/element_payment_solutions/2013/12/new-pci-dss-session-management-requirements-.html

新的 PCI DSS 要求将 https cookie 标记为安全。 因此,首先您的站点应对敏感数据使用 SSL。当您使用 SSL 并向客户端发送 cookie 时,您需要将 cookie 标记为安全,这样 cookie 将无法通过 HTTP 协议(protocol)读取。

对于您问题的最后一部分,是的,拥有 SSL、将您的 cookie 标记为安全HttpOnly 应该可以满足 PCI 要求。

还有其他要求,例如,Session ID 应该是唯一的,应该正确失效(没有 session 固定),没有 URL 上的 Session ID 等。但我认为您没有这些问题。

要解决此问题,您可以尝试: https://community.magento.com/t5/Version-Upgrades/Secure-cookie-flag/td-p/2997 或者 https://github.com/lukanetconsult/mage-secure-cookie

关于php - SSL Cookie 中缺少安全标志 (http-cookie-secure-flag),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33301342/

相关文章:

php - Facebook Graph API 共同好友

c# - 无法将类型为 'System.Security.Claims.ClaimsIdentity' 的对象转换为类型 'System.Security.Principal.WindowsIdentity'

security - HTML5 中的注册机标签

javascript - 单页 JavaScript 应用程序的漏洞/安全扫描器

Magento - 保存产品而不设置 "Use Default Value"

magento - Magento:如何在Magento电子邮件模板中获取当前日期

PHP 无法从另一个目录中的另一个 php 文件访问变量

php - 在 Swift 中检索和使用整个 MYSQL 表

php - 将产品添加到购物车时出错

php - YII框架正在缓存css文件