ShopEx发布单店版V4.7.1 KS47103修正了一个远程代码执行漏洞。收到漏洞报告后(),ShopEx技术人员快速反应,于30分钟内即完成了补丁的制作测试与发布工作。
该漏洞是由于早期的PHP一个不安全的全局变量注册机制引起的,虽然PHP在5年前就取消了该机制,但还是有某些服务器在配置时打开了该机制。因此这个漏洞只在一些对服务器未进行安全配置的小型及管理不规范主机商处才会发生。
虽然绝大多数ShopEx用户均不存在该漏洞,但还是请ShopEx用户即刻自行打上该补丁。
相关说明:
补丁下载方法:用户可以登陆商店后台桌面左侧“升级信息”栏目看到并下载使用该补丁。
后台没有看到补丁?那应该是你把根目录下面的version.txt文件删除了,重新上传上去就可以了。
补丁升级方法:将下载的补丁包解压缩后,二进制方式上传补丁包内文件到服务器上对应目录覆盖原文件;
注意一定要二进制上传,否则会出现 Fatal error: Unable to read 10790 bytes in /home/public_html/.......等错误。
补丁包内容:
·修正远程代码执行漏洞
·修正前台发送给朋友功能
·修正验证码在某些服务器环境下的问题
·修正商店留言链接地址解析问题
·修正NPS网关返回问题
·修正ShopEx客服通文件
·其他一些细节优化及页面显示修正
补丁下载地址:
经检测,ShopEx提供的所有主机配置并无上述安全性问题。
相关阅读:
如何安全配置您的主机
最近发现的ShopEx远程代码执行漏洞是由于用户服务器的PHP配置中全局变量注册选项被错误打开导致的,这说明对服务器进行安全配置是十分重要的,实际上全局变量注册是导致PHP程序安全缺陷的最常见的原因。
全局注册机制自出现以来,一直为PHP开发者们所诟病,最终大家决定取消全局变量注册机制并赞同代之以一种更好的输入参数的访问机制。因此从PHP4.1开始引入了名为超级全局变量的机制,以$_GET, $_POST, $_COOKIE, $_SERVER,以及$_ENV变量代表不同来源的输入,同时可以在脚本的任意位置引用它们。在PHP4.1成功地采用了超级全局变量以后,2002年4月发布的PHP4.2默认关闭了全局变量注册机制。
但是,虽然PHP在新安装时默认关闭了全局变量注册机制,但通过升级上来的PHP新版本还是在php.ini中保留了原有的设置。此外,很多小型的主机提供商或个人自行安装的会有意地打开全局变量注册机制,这是因为他们所使用的古老的编写得很糟糕的程序还是依赖于全局变量注册机制进行输入处理的。
因此,请立即检查您的主机的php.ini文件,register_globals是否是on,请把它修改成off,提高您主机的安全性。
如何判定一个主机的register_globals是否开着?非常简单。
用记事本写一个名为info.php的文件,内容如下:
<?php
phpinfo();
?>
传到服务器运行后,服务器会返回配置信息,找到register_globals一行,安全配置主机该选项应该是Off的。
经检测,ShopEx提供的所有主机配置并无上述安全性问题。
相关报道: