流行PHP库中的严重漏洞:威胁数百万网站
在PHP网页开发领域发生了一件让所有信息安全专家都无法忽视的事件。来自SonarSource团队的研究人员发现了一个最常用的PHP电子邮件处理库——PHPMailer中的严重漏洞。该问题被标识为CVE-2024-XXXX,并在CVSS评分中获得了9.8分(满分10分),这意味着危险级别为严重。
PHPMailer被全球数千万网站使用,包括WordPress、Joomla和Drupal等流行CMS。该库负责发送电子邮件、注册确认和通知。现在发现,攻击者可以利用该漏洞在服务器上远程执行任意代码(RCE)。
问题的本质是什么?
该漏洞与解析电子邮件地址的函数中不正确的输入数据处理有关。当发送一封特制的邮件时,攻击者可以注入恶意代码,该代码将以网页用户的权限在服务器上执行。这允许:
- 完全访问服务器文件系统
- 窃取用户数据库和密码
- 安装后门以进行进一步攻击
- 利用服务器发送垃圾邮件或进行DDoS攻击
特别危险的是,利用该漏洞无需身份验证——只需向使用易受攻击版本PHPMailer的网站发送一封邮件即可。
哪些版本受到威胁?
从5.2.0到6.9.0(含)的所有PHPMailer版本均受到影响。开发者已在6.9.1和5.2.28版本中发布了紧急补丁。如果您使用更旧的版本,被入侵的风险极高。
保护建议
为了保护您的项目,请执行以下步骤:
- 立即更新PHPMailer到6.9.1或更高版本。为此,请执行命令:
composer update phpmailer/phpmailer - 检查composer.json文件,确保库版本以“^”符号指定(例如,“^6.9.1”),以便自动获取补丁。
- 使用WAF(Web应用防火墙)来阻止包含shell命令或电子邮件字段中非标准字符的可疑请求。
- 审计日志,查找带有附件或标题中包含长字符串的异常邮件。
如果网站已被入侵怎么办?
如果您怀疑您的服务器已被入侵,请立即:
- 对访客关闭网站
- 检查文件中是否存在可疑代码(特别是
wp-content、uploads和tmp文件夹) - 更改所有服务器和数据库的访问密码
- 联系网络安全专家进行全面扫描
这种情况是——