Azure Airflow 中配置错误可能会使整个集群受到攻击

网络安全研究人员在 Microsoft 的 Azure 数据工厂 Apache Airflow 中发现了三个安全漏洞,如果成功利用这些漏洞,攻击者可能会获得执行各种隐蔽操作的能力,包括数据泄露和恶意软件部署。

"利用这些漏洞可能允许攻击者以影子管理员的身份获得对整个 Airflow Azure Kubernetes 服务 (AKS) 集群的持久访问权限,"Palo Alto Networks Unit 42 在本月早些时候发布的分析中表示。这些漏洞如下:

  • Airflow 集群中的 Kubernetes RBAC 配置错误

  • Azure 内部 Geneva 服务的机密处理配置错误

  • Geneva 的弱身份验证

除了获得未经授权的访问外,攻击者还可以利用 Geneva 服务中的缺陷来篡改日志数据或发送虚假日志,以避免在创建新的 Pod 或账户时引起怀疑。

初始访问技术包括创建一个有向无环图(DAG)文件,并将其上传到连接到 Airflow 集群的私有 GitHub 存储库中,或者修改现有的 DAG 文件。最终目标是在导入后立即向外部服务器反弹 shell。

要实现此目的,攻击者必须首先通过使用遭到入侵的服务主体或文件的共享访问签名 (SAS) 令牌来获得对包含 DAG 文件的存储账户的写入权限。或者,他们可以使用泄露的凭据进入 Git 仓库。

尽管发现以这种方式获得的 shell 在 Kubernetes Pod 中的 Airflow 用户上下文中以最低权限运行,但进一步分析确定了一个具有 cluster-admin 权限的服务账户连接到 Airflow 运行程序 Pod。

这种错误配置,再加上可以Pod访问互联网,攻击者可以下载 Kubernetes 命令行工具 kubectl,并最终通过"部署特权 Pod 并突破到底层节点"来完全控制整个集群。

然后,攻击者可以利用对主机虚拟机 (VM) 的 root 访问权限进一步深入云环境,未经授权访问 Azure 管理的内部资源,包括 Geneva,其中一些资源授予了对存储账户和事件中心的写入权限。

"这意味着老练的攻击者可以修改易受攻击的 Airflow 环境,"安全研究人员 Ofir Balassiano 和 David Orlovsky 说。"例如,攻击者可以创建新的 Pod 和新的service 账户。他们还可以将更改应用于集群节点本身,然后将虚假日志发送到 Geneva,而不会发出警报。

"这个问题凸显了谨慎管理服务权限以防止未经授权的访问的重要性。它还强调了监控关键第三方服务运营以防止此类问题的重要性。

此次披露正值 Datadog 安全实验室详细介绍了 Azure Key Vault 中的权限提升方案,该方案可能允许具有 Key Vault 参与者角色的用户读取或修改 Key Vault 内容,例如 API 密钥、密码、身份验证证书和 Azure 存储 SAS 令牌。

此问题在于,虽然具有 Key Vault 参与者角色的用户无法通过配置了访问策略的 Key Vault 直接访问 Key Vault 数据,但发现该角色确实具有将自身添加到 Key Vault 访问策略和访问 Key Vault 数据的权限,从而有效地绕过了限制。

"策略更新可能包含列出、查看、更新和通常管理密钥仓库内数据的能力,"安全研究员 Katie Knowles 说。"这造成了这样一种情况:具有 Key Vault 参与者角色的用户可以访问所有 Key Vault 数据,尽管没有 RBAC 权限来管理权限或查看数据。"

随后,Microsoft 更新了其文档以强调访问策略风险,并指出:"为了防止未经授权访问密钥保管库、密钥、secret和证书,必须在访问策略权限模型下限制参与者角色对密钥保管库的访问。

相关推荐
treesforest7 小时前
IP定位技术在网络犯罪侦查中的应用与价值
网络·网络协议·tcp/ip·网络安全·ip归属地查询·反欺诈
笨鸟先飞,勤能补拙7 小时前
AI 赋能网络安全:技术全景、成熟度评估与实战案例
人工智能·python·安全·web安全·网络安全·sqlite·github
笨鸟先飞,勤能补拙9 小时前
AI 赋能网络安全领域深度剖析
网络·人工智能·windows·安全·web安全·网络安全·github
HackTwoHub10 小时前
轻量化AI渗透武器库|ARTEX自主攻防系统、资产梳理、漏洞挖掘、链路分析全流程智能化落地
人工智能·安全·web安全·网络安全·系统安全·网络攻击模型·安全架构
昆曲之源_娄江河畔11 小时前
Python如何安装flask, pymssql
开发语言·python·flask·pymssql
韭菜炒鸡肝天12 小时前
【App Service】在Azure环境中如何查看App Service实例当前的网络连接情况呢?
microsoft·flask·azure
早睡早起身体好12313 小时前
为什么 Network 中会出现两个同名请求?——CORS 预检请求学习笔记
网络·笔记·学习·网络安全
niaiheni14 小时前
红队实战:记一次Spring Cloud Gateway SpEL表达式注入到哥斯拉内存马(CVE-2022-22947)
web安全·spring cloud·网络安全
看昭奚恤哭16 小时前
ontainer App】Container App无法从Container Registries 拉取镜像 - 报错 Forbidden
后端·python·flask
aosky16 小时前
QWENPAW 本地部署实战:结合免费模型配置实现零成本运行
microsoft