CVE-2022-23940-SuiteCRM问题分析

admin 2022年5月12日09:40:43评论0 views字数 1469阅读4分53秒阅读模式

描述

SuiteCRM号称全球CRM排名第一,SuiteCRM 是一种开源客户关系管理(CRM) 软件解决方案,可提供客户和业务的 360 度全方位视图。

SuiteCRM存在一系列安全漏洞,包括命令注入,文件包含、权限提升、SQL注入等等。

环境搭建

准备

安装PHP、composer

下载

官网地址:https://suitecrm.com/download/
发布地址:
https://github.com/salesagility/SuiteCRM/releases

官网只能下载最新版本,GitHub可以下载历史版本。

安装

解压压缩包到web根目录。在项目跟目录运行composer install,等待命令完成。
然后来到浏览器,访问
http://地址/install.php,按照提示一步步安装即可。

CVE-2022-23940-SuiteCRM问题分析

漏洞说明

SuiteCRM各个系列版本的漏洞都会在其官网版本发布的位置留下记录
7.12.x系列:
https://docs.suitecrm.com/admin/releases/7.12.x/
7.11.x系列:
https://docs.suitecrm.com/admin/releases/7.11.x/

CVE-2022-23940- 远程代码执行

CVE-2022-23940

影响版本

< 7.12.1
8.x - 8.0.1

漏洞描述

漏洞成因是因为没有对创建预约报告时的Email Recipients参数做任何过滤,导致反序列化命令执行。
入口点在预约报告创建处,涉及参数
Email Recipients
触发点在报告查看处,每当有人查看携带了
Payload的预约报告时,便会在服务器触发一次。

漏洞位置

漏洞位于Scheduled Reports模块。我在复现的时候,浏览器页面中没有找到这个模块。以下是当前可跳转的所有模块:
CVE-2022-23940-SuiteCRM问题分析
CVE-2022-23940-SuiteCRM问题分析

由此猜测,漏洞作者很有可能采用的通读全文法来审计代码。
那么,怎么来到这个模块呢?还是要回去看代码。
在项目
modules目录下找到AOR_Scheduled_Reports模块

CVE-2022-23940-SuiteCRM问题分析
我们知道,SuiteCRM采用的MVC架构,构造urlhttp://ip:port/index.php?module=AOR_Scheduled_Reports&action=index,来到这个模块。
CVE-2022-23940-SuiteCRM问题分析
接着来到创建页面,发现创建计划报告时,除了Email Recipients参数还有几个必填参数。其他几项都还好可以随便填。Reports项必须选择系统已有的报告,所以只能创建一个报告或者利用工具直接发包了。
CVE-2022-23940-SuiteCRM问题分析

漏洞入口

直接遍历http请求过来的数据,没有进行任何过滤,直接把post请求的数据赋值给$this->bean
CVE-2022-23940-SuiteCRM问题分析

把创建的计划报告保存到数据库
CVE-2022-23940-SuiteCRM问题分析

思考

从这里可以看出来,开发者对于安全方面的思考几乎没有。抛开这个反序列化问题不谈,这里不进行任何过滤存入数据库,还会存在其他问题:比如sql注入、XSS等问题。

漏洞触发点

遍历Scheduled Reports的每一个参数,对其渲染。
CVE-2022-23940-SuiteCRM问题分析
调用modules/AOR_Scheduled_Reports/emailRecipients.php::display_email_lines对邮箱进行处理。
CVE-2022-23940-SuiteCRM问题分析
对邮箱的值进行反序列化触发漏洞
CVE-2022-23940-SuiteCRM问题分析
用到的php反序列化链
CVE-2022-23940-SuiteCRM问题分析

思考

同样的,从数据库取出来的数据也没有进行任何安全处理。反序列化的数据同样是不可信的。

漏洞修复

1.对传入的数据进行严格的格式校验

2.采用其他方式存储数据。

3.升级新版本。

下图为官方修复方法

CVE-2022-23940-SuiteCRM问题分析

原文始发于微信公众号(云智信安云窟实验室):CVE-2022-23940-SuiteCRM问题分析

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2022年5月12日09:40:43
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   CVE-2022-23940-SuiteCRM问题分析https://cn-sec.com/archives/1000611.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息