每六个月,IBM的x-Force安全团队会发布一份关于哪些软件存在哪些漏洞的报告。Joomla!通常排名相当高,但这并不是因为核心存在漏洞,而是因为世界上有成千上万的第三方扩展(有些自Joomla! 1.0.1以来就没有积极开发)存在。每六个月,我都会向IBM的人解释,Joomla!项目并不是第三方扩展的供应商。他们听着,但并没有改变。
新的报告已经发布,一如既往地既有趣又令人沮丧。阅读时,请记住,IBM并没有评估报告的准确性,他们只是计算了来自任何权威性稍强的来源(甚至是一个安全账号的Twitter帖子也有记录)。他们使用我们所有人用来监控安全报告的同样来源。他们在合并重复项方面做得相当好(但并不完美)。新报告中的重点是,它声称80%的Joomla漏洞未修复。他们是如何决定某件事已被修复的,报告中并没有描述。
当然,Joomla核心中的所有漏洞都已在Joomla安全中心和发行说明中修复并公开讨论。我们认为这是在核心中保持高安全级别的最佳实践。但是,所有其他问题呢?经过几轮争论,我知道我可能无法说服他们这些问题主要不是Joomla的漏洞,在这个美好的周日早晨,我花了大约五小时查阅了他们数据库中过去六个月的所有Joomla报告。
在描述我所发现的之前,我想先提供我学到的关键点:如果你是一个修复了漏洞的扩展开发者,非常重要的一点是你需要回到安全网站并让他们更新报告,显示这些漏洞已经被解决。像“80%的Joomla漏洞未修复”这样的信息不仅会损害你的扩展,还会损害许多人的生计所依赖的核心产品的声誉,以及所有扩展开发者的声誉。我们共同打造了这个品牌,我们也应该共同保护它。请跟进,并确保你将安全修复放入你的发行说明或更新日志中。我不会告诉你我今天早上访问了多少个第三方扩展网站,无法确定漏洞是否已经被修复,但数量确实不少。让您的现有和潜在客户知道您重视安全。
我所做的是查阅了过去六个月内的每份Joomla报告(大约80份,包括大约19份已修复的)并尝试访问所涉及扩展的网站。我发现的结果很有趣。首先,有四份报告在x-Force自己的记录中已被标记为错误,但仍然被列为未解决的漏洞。还有15份“未修复”的报告,我很容易地找到了它们已经被修复的证据。
所以,这三组报告大约占了总数的一半。那么其余的呢?到目前为止,未修复报告中最常见的状态是“不再开发”。一些未修复的报告是针对自Joomla 1.0之前就没有更新的扩展,这意味着它们实际上是Mambo扩展。如果你正在使用自2005年以来就没有更新的扩展,我建议你找一个新的扩展,无论你多么喜欢它。要么这样做,要么成为维护者并自己更新它。
下一个最大的组是处于alpha、beta或RC阶段的扩展。这意味着它们不应该在生产网站上使用。我希望所有这些开发者都能关注这些报告并解决它们,但它们并没有让我觉得生产Joomla网站有很多漏洞。
最后还有一些活跃开发的稳定扩展的报告。其中一些可能已经解决,一些可能没有。这些是难以确定最新更新中包含哪些安全内容的网站。它们大多数是最近的报告。我使用了许多网站的联系方式,提醒开发者关注这些报告。
代表“供应商”,我给IBM x-Force发送了一封电子邮件,要求他们更改大多数开放报告的状态,使其更加合适。但真正更好的做法是实际的供应商更新他们的信息。你可以搜索他们的数据库(页面底部)来查看你的扩展是否被提及。
顺便说一下,考虑到JED中有超过3200个扩展,还有数千个仅适用于1.0.x版本或因其他原因未在JED中的扩展,却只有这么多的安全报告。还有一件事。在我用来管理PDF的Joomla扩展中,如果我说你必须注册才能阅读,那你真的必须注册才能阅读。我认为我们正在看到第三方开发社区在采用良好安全实践方面稳步改善,这确实为Joomla项目的惊人增长和实力做出了贡献。