我有一台运行 Ubuntu 14.04.3 的 VPS。此版本的最新 Ubuntu 支持 Apache 版本是 Apache 2.4.7。
但是我为其配置服务器的公司正在寻求 PCI 合规性,并由于 Apache 2.4.14 中修补的安全漏洞而被拒绝。
Apache 的最新稳定版本目前是 2.4.17。
对于我来说,在服务器上安装 Apache 2.4.17 是否可取/可行 - 我可以使用 apt-get 和另一个软件包存储库来完成此操作吗,还是需要从源代码构建?
答案1
从安全角度来看,您根本不想运行 Apache httpd 2.4.14 甚至 2.4.17,您只是不想受到任何已知的 Apache(或其他)安全漏洞的攻击。
一般来说,您已经通过定期应用所支持的 Ubuntu LTS 版本上的安全更新来实现这一点。
安全扫描可能检测到你的 Apache 版本字符串 2.4.7,并在数据库中快速查找了已知漏洞,例如https://nvd.nist.gov/并找到了与此类似的列表cvedetails.com并发现CVE-2015-3185只是适用于您的 Apache 版本的最新漏洞。
然后得出一个无知的结论:“安全且合规”必须盲目遵循 CVE,并且必须升级到 Apache httpd 2.4.14 或更新版本。
这还没有考虑到“企业”Linux 发行版中的常见做法“反向移植”安全更新。反向移植的原因和过程在RedHat.com但 Ubuntu 的情况类似。(请阅读整篇文章。)简而言之,旧版本号并不等于不安全。
CVE-2015-3185已被 Ubuntu 认可为USN-2686-1并已得到解决。
如果您还没有安装,只需安装常规安全更新,尽管仍使用 Apache 版本 2.4.7,但您不会受到 CVE-2015-3185 或任何以前的 CVE 的攻击。
我不太熟悉 PCI 合规认证流程,因此如何将上述内容转化为获得认证......
可能有帮助的是这个答案(尽管整个问答都集中在 RHEL 上,但还是很有趣的):使用以下 Apache 指令并设置ServerTokens
并Prod
设置ServerSignature
到Off
你的 httpd.conf 中。
答案2
我建议您聘请一位 PCI 经验顾问。这是一项非常重要且很难获得的认证。为了在我的一位客户那里获得认证,我们谈到了中型基础设施的数十万美元。此外,您需要看大局。如果您的 Apache 服务器需要符合 PCI 标准,那么您的操作系统、数据库、网络基础设施(IPS/IDS)、WAF、防火墙等也需要符合 PCI 标准...
我不知道您的设置和客户端设置是什么。但这需要认真分析……甚至一些大公司也会将其交给擅长提供此类服务的外部服务。
同样,您还需要获得一些严肃的保险,如果出现问题(如果您是顾问)并且问题回到您身边...为错误时间做好准备(糟糕的事情发生)...
这只是我的看法。我知道从技术上讲这不会帮助你,但我认为这对你来说是一个公平的意见,至于你是否应该把精力投入其中...
祝你好运。