漏洞分析|Apache Airflow Pinot Provider 命令注入漏洞

news2024/11/20 8:31:24

项目介绍

Airflow 是一个使用 python 语言编写的 data pipeline 调度和监控工作流的平台。Airflow 是通过 DAG(Directed acyclic graph 有向无环图)来管理任务流程的任务调度工具, 不需要知道业务数据的具体内容,设置任务的依赖关系即可实现任务调度。

Apache Airflow Pinot Provider 是一个用于与 Apache Airflow hook 建立连接并执行封装的 pinot-admin.sh 脚本的工具包。

项目地址

https://github.com/apache/airflow

漏洞概述

在 4.0.0 之前的版本中的 PinotAdminHook 类由于对 cmd_path 参数(pinot-admin.sh 可执行文件的文件路径)限制不当导致存在命令注入漏洞。

影响版本

apache-airflow-providers-apache-pinot < 4.0

漏洞分析

Pinot providers通过run_cli来调用pinot-admin.sh执行命令,其中command最终进入到subprocess.Popen函数中。

airflow.providers.apache.pinot.hooks.pinot.PinotAdminHook.run_cli

从上面代码可以看出来,Command由self.cmd_path和传进来的cmd参数组成。在修复之前,self.cmd_path从conn中取值。而conn可以被攻击者控制

官方修复代码如下,该代码直接将self.cmd_path硬编码为pinot-admin.sh

 

综合分析,该漏洞利用条件为

1)具备设置恶意connection的权限

2)airflow中存在使用该provider的dag文件或者插件

修复方式

官方已发布安全版本 4.0,建议升级至安全版本或以上。

参考连接

https://nvd.nist.gov/vuln/detail/CVE-2022-38649

https://github.com/apache/airflow/pull/27641/commits/ec5eb427cc8b5e5320553c2555229d25ba519d49

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/29199.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【头歌实验】四、Python分支结构

文章目录>>>第1关&#xff1a;判断闰年任务描述案例分析相关知识条件表达式分支语句测试说明参考答案>>>第2关&#xff1a;计算快递费用任务描述案例分析相关知识分支结构向上取整的函数ceil测试说明参考答案>>>第3关&#xff1a;成绩等级判定任务描…

同惠TH2830精密LCR数字电桥性能特点

TH283X系列是新一代低预算成本&#xff0c;高性能紧凑型LCR数字电桥&#xff0c;采用最新工艺和高密度电路设计&#xff0c;浓缩大型LCR测试仪的精华、紧凑、小巧。取消传统机械电源开关&#xff0c;采用软件控制电源开关。0.05%的基本精度和良好的测试稳定性可与高端机型媲美。…

关于环2数字资产html网页设计

⛵ 源码获取 文末联系 ✈ Web前端开发技术 描述 网页设计题材&#xff0c;DIVCSS 布局制作,HTMLCSS网页设计期末课程大作业 | | HTML期末大学生网页设计作业 HTML&#xff1a;结构 CSS&#xff1a;样式 在操作方面上运用了html5和css3&#xff0c; 采用了divcss结构、表单、超…

下一代Ajax技术 — Fetch的学习与使用

一、初识fetch Fetch被称为下一代Ajax技术,采用Promise方式来处理数据。是一种简洁明了的API&#xff0c;比XMLHttpRequest更加简单易用。 XMLHttpRequest 我们先来看看使用纯XMLhttpRequest来实现一次简单ajax请求的代码&#xff1a; //获取XMLHttpRequest实例对象 const x…

TypeScript(三)面向对象

TypeScript 类的定义 我们可以使用class关键字来定义一个类&#xff1b; 我们可以声明类的属性&#xff1a;在类的内部声明类的属性以及对应的类型 如果类型没有声明&#xff0c;那么它们默认是any的&#xff1b; 我们也可以给属性设置初始化值&#xff1b; 在默认的strictPr…

MSG企业行·AI+医疗专场成功举办!!昇思MindSpore助力智慧医疗深度发展!

【MSG企业行AI医疗】 11月19日下午&#xff0c;【MSG企业行AI医疗】线上交流会成功举办&#xff01; 昇思MindSpore开源社区联合大连人工智能生态创新中心、深圳大学、武汉理工大学、摩赛恩科技、连心医疗、众享未来融合研究院&#xff0c;邀请到了5人工智能与医疗行业嘉宾&a…

利用navicat定时传输数据到另一个库

需求&#xff1a;每天定时6点&#xff0c;12点&#xff0c;18点将SQLserver的数据推送到mysql库中 之前就看到navicat有个自动运行&#xff08;有的版本叫计划&#xff09;&#xff0c;但是不会用&#xff0c;刚好趁这个机会学一学 提前说一点&#xff0c;可能需要先换成admin…

antd:ConfigProvider+getPopupContainer解决筛选框遮挡问题(及其他浮层问题)

一. 问题场景二. 解决方案三. 代码示例一. 问题场景 当表格高度太低&#xff08;下图业务场景出现在数据条数太少时&#xff09;&#xff0c;column中有筛选框&#xff0c;可能会出现筛选框被遮挡的问题&#xff1a; 这是因为filter的下拉菜单渲染在table的表头栏&#xff0…

运算放大器的理解与应用

运算放大器的理解与应用 运算放大器简称运放&#xff0c;由于早期应用于模拟计算机中&#xff0c;用以实现数学运算&#xff0c;故得名“运算放大器”。主要是用在模拟电路中&#xff0c;比如放大器、比较器、模拟运算器&#xff0c;是电子工程师经常要用到的器件。运算放大器…

145646-22-6|表位肽EQKLISEEDL

c-Myc Peptide Trifluoroacetate 是一种合成肽&#xff0c;与人 c-myc 蛋白的 C-末端氨基酸 (410-419) 相对应&#xff0c;参与调控与生长有关的基因的转录过程。c-Myc Peptide Trifluoroacetate is a synthetic peptide corresponding to the C-terminal amino acids (410-419…

开源共建 | 中国移动冯江涛:ChunJun(原FlinkX)在数据入湖中的应用

ChunJun&#xff08;原FlinkX&#xff09;是一个基于 Flink 提供易用、稳定、高效的批流统一的数据集成工具。2018年4月&#xff0c;秉承着开源共享的理念&#xff0c;数栈技术团队在github上开源了FlinkX&#xff0c;承蒙各位开发者的合作共建&#xff0c;FlinkX得到了快速发展…

Spring Security验证码配置化开发

背景 在前两篇文章中给大家介绍了Spring Security的认证流程&#xff0c;包含对项目的定制化处理&#xff0c;可以明白security的设计还是比较强大的&#xff0c;通过一系列的过滤器注册的过滤器链&#xff0c;对流程进行链式的处理。 今天介绍一种以配置器的方式处理验证码生…

Day11--配置tabBar效果

1.创建tabBar分支 我的操作&#xff1a; 1》在其根路径下按住“shift”和鼠标右键进入powerShell界面&#xff0c;然后输入创建一个分支tabBar. ****************************** ****************************** ****************************** ****************** 2.创建ta…

生产质量管理系统有哪些功能?

随着中国市场经济的快速发展&#xff0c;中国产品正经历着“中国制造”向“中国创造”的转变,在这个过程中&#xff0c;企业经营也逐渐从低成本生产管理向质量经营方向发展&#xff0c;企业已经认识到质量的重要性&#xff0c;企业对质量管理的有效性也提出了更高的要求。 作为…

【Servlet】5:详解响应对象 HttpServletResponse

目录 | 响应对象 HttpServletResponse接口 HttpServletResponse的基本概述 响应对象返回 String 给Browser & 中文乱码问题 响应对象返回 int 给Browser 响应对象 解析HTML标签后 返回给Browser 本文章属于后端全套笔记的第三部分 &#xff08;更新中&#xff09;【后…

UI和UI有什么不同,是如何协助的

UX(用户体验)和UI&#xff08;用户界面&#xff09;是一个常用的术语。然而&#xff0c;尽管有复杂的联系&#xff0c;但网页设计的两个领域是两个不同的东西。事实上&#xff0c;有可能有一个用户界面优秀但用户体验差的网站。因此&#xff0c;了解UX和UI良好的网页设计非常重…

只需要改造一下实体类,以后再也不用写SQL了

文章目录只需要改造一下实体类&#xff0c;以后再也不用写SQL了 现状分析现状示例1. 建立人员表M.T.Person表&#xff0c;包含三个字段名称&#xff0c;年龄&#xff0c;身份证。2. 新增一条数据&#xff0c;也就是插入的情况。3. 获取单条数据内容&#xff0c;也是就是根据ID获…

经济师十大专业通过人数分析!选专业有谱了!

最近&#xff0c;很多同学在后台咨询&#xff0c;哪个专业的好通过&#xff0c;自己要如何选专业…… 小编特别整理了已经公布的各省市2021年初、中级经济师各专业通过情况数据&#xff0c;给大家参考&#xff01; 2022年中级经济专业技术资格考试设《经济基础知识》和《专业知…

让学前端不再害怕英语单词(三)

前两章直通车↓↓↓ 让学前端不再害怕英语单词&#xff08;一&#xff09; 让学前端不再害怕英语单词&#xff08;二&#xff09; 由于前两章都反响强烈&#xff0c;都上了全站的热榜&#xff0c;所以今天打算把第三章也写出来 第三章我们主要讲一下css中的伪类的英语单词还有…

TResNet: ResNet改进,实现高精度的同时保持高 GPU 利用率

终于开题&#xff0c;抓紧发文&#xff0c;然后放飞​​​​​​&#xff0c;来由就是想搞一篇论文&#xff0c;但是增加了某个东西之后吧&#xff0c;速度变慢了&#xff0c;所以导师提议加个这玩意看看能不能快点。 论文题目&#xff1a;TResNet: High Performance GPU-Dedi…