RHEL 6.3升级OpenSSH和Apache

我们刚刚从403Labs对一台服务器(RHEL 6.3 x86_64)进行了外部安全扫描以获得PCI合规性,结果似乎主要表明我们有一大堆需要升级才能通过扫描的应用程序。

之前说过,我遇到的问题是软件包pipe理器(yum)和remi repo的使用没有Apache和OpenSSH所需的版本。 我已经执行了以下操作:

yum update yum --enablerepo=remi,remi-test install httpd mysql mysql-server php php-common 

这解决了我们的关键和高风险的结果,但中等水平的结果仍然表明,我们需要进一步升级以下软件包。

我们需要的升级包括:

  Current Required Apache 2.2.15 to >= Apache 2.2.23 OpenSSH 5.3 to >= 5.7 

所以,由于软件包pipe理员不能让我升级到这些版本,我该怎么去做呢? 我目前的前提下,我将需要从源代码安装。 如果有更好的select,请指出。

另外,如果我别无select,只能从源代码安装,有人可以帮助我确定什么是适当的源代码包,以便我知道我正在为我的操作系统安装正确的版本?

非常感谢您的帮助。

不要这样做!

在您摆脱操作系统供应商的支持结构之前,您应该确认这是正确的。

有些PCI兼容性testing会报告应用程序有漏洞,因为它报告的版本号太低。 这并没有考虑许多供应商使用的安全性和错误修复的后端移植 。

例如(从一个旧的Nessus扫描)它声明由CentOS提供的Apache是​​易受攻击的,如果版本是<2.2.14。 如果您深入了解这些漏洞的详细信息,那么您会发现CVE-2009-3095 , CVE-2009-3094等

看他们发现,他们已经修复了当前版本的Apache耗材购买RH,从而CentOS。

推回…

红帽企业Linux不能这样工作。 从源代码安装以满足审计需求可以解决额外的安全问题和更多的pipe理开销。

Red Hat为其企业操作系统采用的方法是在整个OS的支持生命周期中创build一致的目标。 较大的公司和企业应用程序需要在这些操作系统支持的7年以上的时间内保证二进制兼容性。 红帽不会更改软件包的次要版本号,而是将更新和安全补丁从新版本恢复到旧软件包。

例如,在RHEL 5中你永远不会看到Apache 2.2.23,但是你会看到相关的安全补丁(和一些function)从新版本的Apache移植到2.2.3中。

当我处理审计人员或以安全为中心的人员时,我坚持认为他们通读了软件包更新日志,看他们的具体问题是否被现有安全修复程序或错误修正所覆盖。

这里是EL Apache的更新日志 。

CVE- *号码与CERT / National Vulnerability Database交叉引用。 例如, CVE-2011-3368列出了一个影响Apache 2.2.21之前版本的漏洞。 显然,RHEL只有2.2.3版本,因此安全修补程序已经开发,testing并移植到旧版本。

尽pipe我知道上面提到的修补程序的移植,但我也在PCI符合性实施方面遇到了这个问题。 我们使用apache的解决scheme是在/etc/httpd/conf/httpd.conf中将ServerTokens设置为'Prod'和ServerSignature'closures'。 这个明智的设置告诉apache不要报告它的版本号,并吐出所有使用的模块。 然后我们通过扫描。

至于SSH,理想的设置是防火墙访问,只有你的办公室可以连接到端口。 这种方式扫描不会捡起来。

如果这是不可能的,PCI审核员可以确信,如果你certificate你已经打补丁(通常通过一些屏幕共享工具,你会发现“yum update”没有提供更新),并且有适当的程序来进行常规testing。 我只是表明我订阅了RedHat的安全邮件列表,如果我们使用的组件容易受到攻击,我们会立即安排更新。

除了这一切,你应该能够上诉并获得适当的渗透testing。