Joomla 生命周期终止通知
如果您收到我发来的邮件,指引您访问本页面,那是因为您的网站似乎正在运行 已生命周期终止版本的 Joomla,也就是您站点所基于的内容管理系统。本页面将说明这为何重要 以及如何修复。
这条消息是否可信?
是的。这是一份来自独立安全研究人员的善意、负责任披露通知。我 不会 向您索要金钱、 密码或对您站点的访问权限,也 没有 试图入侵它或利用任何漏洞。
我所做的一切,只是读取您的网站向每一位访问者提供的一个公开文件,即 Joomla 的 版本清单,并记录它公布的版本号。这与您的主页一样,都是您站点公开的部分。这项检查完全 不涉及您的数据、您的后台管理区域,或您站点的任何私密部分。如果我的邮件提到了某个具体版本 或安全问题,那是来自读取那一个公开文件,而不是来自测试任何东西。
如果您想核实我的身份,请查看本页底部的联系方式以及关于页面。
为什么这很重要
Joomla 3.x 已于 2023 年 8 月 17 日生命周期终止。更早的分支(2.5、1.5)在那之前数年 就已生命周期终止。生命周期终止意味着 Joomla 项目对该分支 完全 不再发布安全修复, 即便是严重的、公开已知的漏洞也是如此。在生命周期终止日期之后发现的新缺陷,对您的版本而言 根本永远不会得到修补。
攻击者会积极扫描互联网,寻找运行这些不受支持版本的站点,因为这些漏洞有充分的文档记录且 容易被发现。常见的后果包括 网站被篡改(您的页面被替换或改动)、注入垃圾内容, 以及站点被用来托管恶意内容。如果我的邮件引用了某个具体的 CVE,那意味着您站点报告的版本 落在该问题已知影响的范围之内。我并没有测试您的具体站点是否可被利用,只是确认它报告了一个 受影响的版本。
好消息:迁移到受支持的版本可以堵上这些缺口,而且有一条文档完善的升级路径。
已知漏洞举例
以下是影响已生命周期终止的 Joomla 3.x(及更早)分支的、公开记录的若干高严重级别漏洞。 由于这些版本不受支持,此类问题永远不会被修补,而且技术细节已被广泛公布:
- CVE-2015-8562: 通过 PHP 对象注入实现的未经身份验证的 远程代码执行,影响 Joomla 1.5.x 至 3.4.5。它曾在真实环境中被积极利用。
- CVE-2017-8917: Joomla 3.7.0 中严重(CVSS 9.8)的 SQL 注入。
- CVE-2016-8869: 通过用户注册组件实现的严重(CVSS 9.8)权限提升,存在于 3.6.4 之前的版本中。
- CVE-2016-8870: 即使注册功能已禁用仍可 未经授权创建账户,存在于 3.6.4 之前的版本中。
- CVE-2015-7857: 内容历史组件中的 SQL 注入,影响 Joomla 3.2 至 3.4.4。
如果我的邮件引用了某个具体的 CVE,它会是类似这样的问题:一个公开已知的问题,其受影响的 版本范围包含了您站点报告的版本。
如何检查您的版本
您不必仅凭我的说法来判断自己运行的是哪个版本。
从公开清单查看(无需登录): 在浏览器中打开
yourdomain.com/administrator/manifests/files/joomla.xml。<version>
这一行是权威的核心版本,而这正是我读取的那个文件。
从后台管理区域查看(如果您有访问权限):
- 登录您的 Joomla 后台(通常位于
yourdomain.com/administrator)。 - 打开 System,然后查看 System Information / 仪表盘面板,其中会显示 Joomla 版本。
如果主版本是 3、2.5 或 1.5,说明您处于已生命周期终止的分支,应当升级。
如何升级
当前受支持的主版本是 Joomla 4 和 Joomla 5。在做出更改之前,请始终 先备份 (文件和数据库);大多数主机都提供一键备份,或者您可以使用 Joomla 备份扩展。
从 Joomla 3 出发的推荐路径是:
- 先更新到最新的 Joomla 3.10.x。 3.10 系列内置了 升级前检查 (在 Joomla Update 组件中),它会标记出任何尚未与 Joomla 4 兼容的扩展或模板。
- 解决它报告的不兼容的扩展/模板。 将它们更新到兼容 Joomla 4/5 的版本, 或寻找替代品。
- 在后台的 Components → Joomla Update 中 执行迁移到 Joomla 4, 然后继续更新到 Joomla 5。
- 下载链接和当前版本始终可在官方项目上获取: https://downloads.joomla.org。
- 升级后,按照上述步骤确认新版本,并检查您的站点是否能正常加载和编辑。
如果您的站点非常老旧(Joomla 1.5 或 2.5),跨度会更大,通常最好将其作为一个全新的 Joomla 5 构建来完成,并把您的内容迁移过去。网页专业人员可以很快做到这一点。
顺便也请更新您的 扩展和模板,因为同样的“不受支持就意味着不打补丁”的原则 适用于所有这些组件。
我没有网站管理员 / 我遇到了困难
如果您不是维护站点的人,请将本页面转发给负责维护的人(您的网页开发者、代理机构或主机服务商)。 他们会很快认出上述步骤。
如果您自己维护站点却遇到了困难,我很乐意免费帮您指明正确的方向。请使用下方的联系方式与我联系。
联系方式
Evan Harris,安全研究员
- 电子邮件:security@mail.mcpsec.dev
- X:@Evan__Harris
- GitHub:eharris128
- LinkedIn:Evan Harris
我就此类问题主动联系,纯粹是为了帮助运营者保护他们的站点。如果您希望不再被联系, 只需告诉我,我会予以尊重。
参考资料
Joomla 官方来源
- Joomla CMS 开发路线图(支持与生命周期终止政策:每个主版本至少受支持四年)
- Joomla Developer Network:发布路线图(当前受支持的主版本)
- Joomla 公告,确认 Joomla 3.10 的安全支持已于 2023 年 8 月 17 日结束
- Joomla 技术要求(针对当前受支持的版本)
第三方汇总
- endoflife.date:Joomla(Joomla 生命周期终止日期的汇总表)