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

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

相关文章
|
4月前
|
PHP
微信公众号的程序接入 - PHP 版本源代码
微信公众号的程序接入 - PHP 版本源代码
微信公众号的程序接入 - PHP 版本源代码
|
23天前
|
Linux PHP
Linux CentOS 宝塔 Suhosin禁用php5.6版本eval函数详细图文教程
【8月更文挑战第27天】本文介绍两种禁用PHP执行的方法:使用`PHP_diseval_extension`禁用和通过`suhosin`禁用。由于`suhosin`不支持PHP8,仅适用于PHP7及以下版本,若服务器安装了PHP5.6,则需对应安装`suhosin-0.9.38`版本。文章提供了详细的安装步骤,并强调了宝塔环境下与普通环境下的PHP路径差异。安装完成后,在`php.ini`中添加`suhosin.so`扩展并设置`executor.disable_eval = on`以禁用执行功能。最后通过测试代码验证是否成功禁用,并重启`php-fpm`服务生效。
18 2
|
1月前
|
SQL 安全 API
PHP代码审计示例(一)——淡然点图标系统SQL注入漏洞审计
PHP代码审计示例(一)——淡然点图标系统SQL注入漏洞审计
51 4
|
1月前
|
Web App开发 关系型数据库 PHP
使用 Docker 快速搭建多版本 PHP 开发环境
使用 Docker 快速搭建多版本 PHP 开发环境
44 2
|
2月前
|
安全 网络安全 PHP
WordPress PHP Everywhere <= 2.0.3 远程代码执行(CVE-2022-24663)
WordPress PHP Everywhere <= 2.0.3 远程代码执行(CVE-2022-24663)
|
2月前
|
Java API PHP
【亲测有效,官方提供】php版本企查查api接口请求示例代码,php请求企查查api接口,thinkphp请求企查查api接口
【亲测有效,官方提供】php版本企查查api接口请求示例代码,php请求企查查api接口,thinkphp请求企查查api接口
87 1
|
4月前
|
PHP Apache
centos7.9 安装php7.0以上版本
centos7.9 安装php7.0以上版本
248 2
|
2月前
|
API PHP 开发者
​邮件发送API示例代码,AOKSend关于PHP示例代码
**邮件发送API简化了开发中的邮件功能,如自动化通知和营销邮件。常见示例包括SendGrid和Mailgun的Python代码。AOKSend在PHP中的使用示例展示了如何使用Guzzle库发送邮件,其特点包括高可靠性、易于集成和强大功能。通过API,开发者能高效、可靠地发送大规模邮件。**
|
3月前
|
安全 前端开发 测试技术
安全开发-PHP应用&模版引用&Smarty渲染&MVC模型&数据联动&RCE安全&TP框架&路由访问&对象操作&内置过滤绕过&核心漏洞
安全开发-PHP应用&模版引用&Smarty渲染&MVC模型&数据联动&RCE安全&TP框架&路由访问&对象操作&内置过滤绕过&核心漏洞
|
4月前
|
安全 PHP 数据库
【PHP开发专栏】PHP文件包含漏洞与防范
【4月更文挑战第30天】本文探讨了PHP文件包含漏洞,该漏洞让攻击者能执行恶意代码或访问敏感信息。文章分为三部分:原理、影响和防范。文件包含函数(如`include`和`require`)在攻击者控制文件名时可能导致漏洞。影响包括执行恶意代码、泄露敏感信息和影响服务器性能。防范措施包括验证文件名安全性、使用安全包含函数、设置安全包含路径和参数,以及定期更新和维护代码及库。开发者应重视此问题,采取相应措施保障应用安全。
115 0