Linux 供应商提供的安全更新是否足以满足 PCI 合规性?

信息安全 linux pci-dss 遵守
2021-08-26 08:08:48

我有几个需要 PCI 合规性的系统,它们都运行 CentOS 6.4,并且每天都应用所有安全更新。但是,PCI 合规性扫描通常会拒绝检测到的其认为不安全的外部服务版本(Apache、PHP、MySQL)。安全性的衡量标准只是软件包的版本号——如果该信息被报告给扫描仪,而不是通过定义一个不太冗长的配置将所有版本信息关闭给外界。

我有一个全新的 CentOS 6.4 盒子,我正在保护它,但它的初始 PCI 扫描失败了(这并不奇怪)。但是报告的第一个问题说:“PHP 5.3 < 5.3.7 多个漏洞。” 该服务器目前有 PHP 5.3.3,由 CentOS 提供。还有其他失败的包,但我将专注于 PHP 来解决这个问题。

需要考虑的几点

  • 人们普遍认为(我认为)Linux 供应商声称稳定性是一项特性,不会急于推出上游发布的每个新版本的软件包,有时 Web 浏览器/插件除外。
  • 供应商确实会发布安全更新,但并非针对每个源版本。(例如:PHP 5.3.26是 5.3 版本中的最新版本,它声称修复了CVE-2013-2110。)
  • 供应商软件包有时会保留major.minor 版本号,但出于兼容性原因,会使用向后移植到其软件包中的安全补丁来增加版本号。因此,即使版本号未表明安全问题,也可能已修复。(PCI:这需要耗时的手动文档才能获得合规性覆盖。)
  • 过去我曾看到供应商软件包可以更安全的论点,因为它们可以在源代码中包含非标准补丁。但是,这很少以易于查看的方式记录下来。
  • 我们推出自己的软件包以快速更新更新版本的外部服务,例如 PHP。它还提供了一些晦涩难懂的错误修复,供应商可能不太关心这些问题。

为了实现 PCI 合规性,我的经验表明滚动自定义包是唯一的通过方式。我们使用了 Security Metrics、Trust Wave 和 Control Scan 并获得了各种结果。这是否意味着供应商提供的软件包(包括其安全更新)还不够,因为它们远远落后于上游版本?

注意:我问这个问题是因为随着时间的推移,我已经看到很多“安全建议”,建议“yum upgrade每天运行以获取您的安全更新”,但 PCI 扫描仪通常不同意在已安装版本的安全性方面已经做出了足够的努力.

1个回答

PCI DSS 要求“安装最新的供应商提供的安全补丁”。PCI 6.1 第 38 页)。这意味着如果 PHP 发布了一个安全补丁,那么您需要应用它,即使您的发行版在他们的存储库中还没有它。

您的经验法则是查看产品版本号以及供应商(PHP、Apache 等)在安全方面发布的内容。扫描仪和发行版存储库可以提供帮助,但不是需要检查或审核的。了解您已安装的内容,并定期检查安全更新。定期仔细检查您的扫描仪结果以解释假阴性,并确认结果以解释假阳性。