导语:PHPMailer是一款流行的开源PHP库,被全球超过900万的用户用于发送邮件。但是近日,有安全研究员在PHPMailer上发现了一个严重安全漏洞。
PHPMailer是一款流行的开源PHP库,被全球超过900万的用户用于发送邮件。但是近日,有安全研究员在PHPMailer上发现了一个严重安全漏洞。
PHPMailer简介
全球有数百万的PHP网站和开源Web应用程序(包括WordPress、Drupal、1CRM、SugarCRM、Yii、Joomla)都在使用PHPMailer发送电子邮件。它能提供的功能如下:
在发送邮时指定多个收件人,抄送地址,暗送地址和回复地址 支持多种邮件编码包括:8bit,base64,binary和quoted-printable 支持SMTP验证 支持冗余SMTP服务器 支持带附件的邮件和Html格式的邮件 自定义邮件头 支持在邮件中嵌入图片 调试灵活 经测试兼容的SMTP服务器包括:Sendmail,qmail,Postfix,Imail,Exchange等 可运行在任何平台之上
PHP本身提供了一个邮件发送函数mail,可以在程序中直接发送电子邮件,不过该函数要求服务器支持sendmail或者必须设置一台不需要中继的邮件发送服务器,但现在要找到一台不需要身份验证的邮件发送中继几乎不可能,所以使用mail函数往往无法成功发送email。
漏洞详情
来自波兰的安全研究员Dawid Golunski 发现了这一漏洞(CVE-2016-10033) ,它能允许攻击者在Web服务器上远程执行任意代码,入侵目标Web应用程序。
Golunski 在其博客中说到:
如果要利用该漏洞,攻击者需要将目标瞄准在网站组件上,例如联系人列表、注册列表、邮件密码重置功能等。
Golunski很负责的将这一漏洞报告给了PHPMailer开发者,开发者们也在最新版的PHPMailer( PHPMailer 5.2.18)中给予了修复。这里需要说明的是,5.2.18版本之前的PHPMailer均存在该漏洞,强烈建议Web管理员和开发者尽快将其更新到最新版。
Golunski承诺很快便会公开具体的技术细节,包含POC利用代码和演示视频。