PHP开发团队已经发布了版本5.3.9的流行Web开发平台,以解决最近披露的拒绝服务(DoS)漏洞,以及其他安全问题和bug。
2011年12月,安全研究人员亚历山大·克林克(Alexander Klink)和朱利安·维尔德(Julian Wlde)在欧洲最大的黑客大会——混乱通信大会(Chaos Communication Congress)上披露了DoS漏洞。它影响了许多开发平台,包括PHP, ASP。NET、Java和Python。
该漏洞被识别为CVE-2011-4885,它允许攻击者通过强制服务器处理一个包含数千个值的特殊表单来执行所谓的散列冲突攻击。
这种类型的HTTP请求会触发计算密集型例程,导致拒绝服务条件。ASP。NET中,一个大小约为100KB的请求可能会消耗一个CPU核心的100%,持续时间为90到110秒。
发送多个请求甚至会对使用多核处理器的服务器集群的响应能力产生影响。最新发布的PHP 5.3.9通过在配置文件中添加max_input_vars指令修复了这个问题。
在这个版本中还解决了一个可被利用来读取任意内存位置的单独DoS漏洞。该漏洞被识别为CVE-2011-4566,源于解析exif头文件的PHP函数中的一个bug。攻击者可以通过欺骗服务器处理Exif头文件中带有特别制作的offset_val值的JPEG文件来利用该漏洞。
除了对这两个漏洞进行了修补,PHP 5.3.9还修复了大量与安全无关的漏洞,并进行了各种增强。
这个稳定版本是在开发团队发布了第五个候选版本用于即将发布的PHP 5.4。“下一个,也可能是最后一个候选版本将在14天内发布,”开发人员当时表示。
本周早些时候,一位匿名黑客运动的用户发布的工作攻击代码ASP.NET中的散列冲突DoS漏洞。PHP版本的类似漏洞并不难产生。“我们强烈鼓励所有用户升级到PHP 5.3.9,”该平台的开发人员说。