PHP邮件Squirrelmail远程代码执行漏洞CVE-2017-7692 1.4.22以下版本均受影响 目前没有补丁

简介:

攻击者利用该漏洞可以越权执行任意代码,目前Squirrelmail 官方还没有发布相关修复补丁,但第三方提供了修复代码。绿盟科技发布漏洞预警通告,全文如下

北京时间4月19日晚,Squirrelmail被爆出存在一个远程代码执行漏洞(CVE-2017-7692,CNNVD-201704-561)。该漏洞是由于在传递一个字符串给popen调用之前,没有对其进行过滤和无害化处理。因此攻击者有可能利用此漏洞在远程服务器上越权执行任意代码。该漏洞存在于initStream函数Deliver_SendMail.class.php中,它会使用escapeshellcmd()来过滤和无害化发送邮件的命令。然而escapeshellcmd()并没有对空格字符进行转义,因此会触发任意指令参数的注入。

相关地址:

https://www.wearesegment.com/research/Squirrelmail-Remote-Code-Execution.html

http://seclists.org/bugtraq/2017/Apr/60

Squirrelmail

SquirrelMail是以PHP编写的基于标准的webmail包。 它为IMAP和SMTP协议提供了内置的纯PHP支持,所有页面都以纯HTML 4.0格式呈现(不需要JavaScript),以便跨浏览器实现最大的兼容性。 它的要求很少,配置和安装非常简单。 SquirrelMail具有您希望从邮件客户端获得的所有功能,包括强大的MIME支持,通讯录和文件夹操作。

影响范围

受影响的版本 Squirrelmail Version <= 1.4.22

不受影响的版本 Squirrelmail Version > 1.4.22

规避方案

目前Squirrelmail 官方还没有发布相关修复补丁,请用户持续关注。

用户可以使用该漏洞发现者提供的临时补丁来修复,具体修复代码如下:

BOF

diff -ruN squirrelmail-webmail-1.4.22/class/deliver/Deliver_SendMail.class.php

squirrelmail-webmail-1.4.22-fix-CVE-2017-7692/class/deliver/Deliver_SendMail.class.php

--- squirrelmail-webmail-1.4.22/class/deliver/Deliver_SendMail.class.php  2011-01-06 02:44:03.000000000 +0000

+++ squirrelmail-webmail-1.4.22-fix-CVE-2017-7692/class/deliver/Deliver_SendMail.class.php  2017-04-18

11:42:26.505181944 +0000

@@ -93,9 +93,9 @@

         $envelopefrom = trim($from->mailbox.'@'.$from->host);

         $envelopefrom = str_replace(array("\0","\n"),array('',''),$envelopefrom);

         // save executed command for future reference

-        $this->sendmail_command = "$sendmail_path $this->sendmail_args -f$envelopefrom";

+        $this->sendmail_command = escapeshellcmd("$sendmail_path $this->sendmail_args -f") .

escapeshellarg($envelopefrom);

         // open process handle for writing

-        $stream = popen(escapeshellcmd($this->sendmail_command), "w");

+        $stream = popen($this->sendmail_command, "w");

         return $stream;

     }

EOF

参考链接:

https://www.wearesegment.com/research/Squirrelmail-Remote-Code-Execution.html

绿盟科技声明

本安全公告仅用来描述可能存在的安全问题,绿盟科技不为此安全公告提供任何保证或承诺。由于传播、利用此安全公告所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,绿盟科技以及安全公告作者不为此承担任何责任。绿盟科技拥有对此安全公告的修改和解释权。如欲转载或传播此安全公告,必须保证此安全公告的完整性,包括版权声明等全部内容。未经绿盟科技允许,不得任意修改或者增减此安全公告内容,不得以任何方式将其用于商业目的。


原文发布时间:2017年4月20日

本文由:绿盟科技发布,版权归属于原作者

原文链接:http://toutiao.secjia.com/squirrelmail-rce-cve-2017-7692

本文来自云栖社区合作伙伴安全加,了解相关信息可以关注安全加网站

相关文章
|
3月前
|
PHP Apache
centos7.9 安装php7.0以上版本
centos7.9 安装php7.0以上版本
69 2
|
5月前
|
弹性计算 监控 Java
阿里云国际站代理商:如何在阿里云上升级PHP版本?
@luotuoemo飞机@TG 阿里云国际站代理商:如何在阿里云上升级PHP版本?在所选实例右侧的操作栏中,点击“更多”>“实例管理”,进入实例管理页面。在这里,您可以看到实例的详细信息,包括当前的PHP版本、操作系统类型等。
|
7月前
|
自然语言处理 安全 Java
JAVA丨PHP交易所源码,JAVA/PHP交易所系统开发稳定版/多语言/海外版/多版本/成熟技术/方案详细/逻辑功能/规则案例
Identify requirements and design the system: Clarify your business requirements and design the architecture and functionality of the system. This includes determining the supported transaction types, user authentication, transaction matching engines, order management, fund management, etc.
|
9月前
|
SQL 安全 JavaScript
跨站脚本攻击 (XSS)和SQL注入漏洞php排查解决方案
跨站脚本攻击 (XSS)和SQL注入漏洞php排查解决方案
119 0
|
9月前
|
前端开发
phpStudy PHP5.6版本ajax出现HTTP_RAW_POST_DATA is deprecated头部错误原因
phpStudy PHP5.6版本ajax出现HTTP_RAW_POST_DATA is deprecated头部错误原因
41 0
|
9月前
|
PHP 计算机视觉
百度人脸识别php版本数组数组简写导致的{"readyState":4,,"status":500,"statusText":"Internal Error"}错误
百度人脸识别php版本数组数组简写导致的{"readyState":4,,"status":500,"statusText":"Internal Error"}错误
47 0
|
11月前
|
安全 PHP 数据安全/隐私保护
PHP审计-实战变量覆盖漏洞
PHP审计-实战变量覆盖漏洞