其他分享
首页 > 其他分享> > KubeEdge发布云原生边缘计算威胁模型及安全防护技术白皮书

KubeEdge发布云原生边缘计算威胁模型及安全防护技术白皮书

作者:互联网

摘要:本文将基于KubeEdge项目详细分析云原生边缘计算业务过程的威胁模型并给出对应的安全加固建议。

本文分享自华为云社区《KubeEdge发布云原生边缘计算威胁模型及安全防护技术白皮书》,作者: 云容器大未来。

KubeEdge社区已完成了对KubeEdge项目的全面安全威胁模型分析。云原生边缘计算的安全性问题一直备受用户关注,但是目前业界缺乏关于云原生边缘计算的安全威胁模型分析,用户很难对其边缘系统进行有效的安全加固。针对以上现状,作为业界首个云原生边缘计算项目,我们将进行系统分析并发布安全威胁模型及分析报告,这对于用户或vendors有着重要的安全实践指导意义。本文将基于KubeEdge项目详细分析云原生边缘计算业务过程的威胁模型并给出对应的安全加固建议。

背景

随着越来越多的用户将KubeEdge项目用于生产环境中,KubeEdge社区把安全问题放在优先地位。KubeEdge社区十分关注项目的安全,并成立Sig Security安全团队:(https://github.com/kubeedge/community/tree/master/security-team),负责KubeEdge的系统安全设计,并快速响应和处理安全漏洞。为了对KubeEdge项目进行更加全面的安全评估,KubeEdge社区联合ADA LOGICS公司、OSTIF及云原生计算基金会(CNCF)对KubeEdge项目进行安全评估并输出安全评估报告,分析和总结KubeEdge项目的安全威胁模型及相关安全问题。感谢ADA LOGICS公司的专家Adam Korczynski和David Korczynski对KubeEdge项目专业、全面的评估,该评估对KubeEdge项目的安全防护有重要的指导意义。感谢OSTIF的Amir Montazery和Derek Zimmer以及CNCF基金会,他们对这次合作提供了很大帮助。对于安全报告中发现的安全问题,KubeEdge社区已根据社区的漏洞处理策略第一时间修复,并发布release版本,版本号为v1.11.1、v1.10.2和v1.9.4,漏洞公告已发布在:https://github.com/kubeedge/kubeedge/security/advisories。

本文将分析KubeEdge的威胁模型,并给出相应的安全防护方案。

目标人群

以下人群在使用KubeEdge过程中,了解本文分析的KubeEdge威胁风险和可能的缓解措施将对他们的工作发挥很大作用:

KubeEdge威胁模型分析

KubeEdge安全审计报告中指出,KubeEdge潜在的攻击者包括以下三部分:

KubeEdge社区运用ASTRIDE Low Level威胁建模方法并结合KubeEdge安全审计报告,对KubeEdge进行系统的安全分析,旨在帮助开发者或用户理解系统中潜在的安全威胁,明确风险并列举出目前KubeEdge社区已有的相应的消减机制和安全加固建议。

外部攻击分析

KubeEdge数据流图如下:

如上述数据流图所示,当数据流穿越不同的信任级别(区域)时,就存在信任边界,已在图中用红框标出。下面将详细分析KubeEdge系统架构中的信任边界(引用自KubeEdge第三方安全报告)、社区已有的消减措施并给出安全加固建议:

Threat ID 1:云端CloudCore组件与EdgeCore组件之间的连接

描述

边缘EdgeCore发起到CloudCore组件的连接。该数据流中,较低信任级别组件EdgeCore向较高信任级别组件CloudCore发起访问。EdgeCore在整个系统中有一个单独的权限级别,因此控制EdgeCore的攻击者不应该能够对其他边缘节点产生负面影响,例如通过攻击和操控CloudCore来攻击其他节点(该漏洞描述引用自安全评估报告)。

影响

攻击者恶意修改CloudCore与EdgeCore组件之间的请求和应答报文,导致通信过程存在仿冒和篡改的威胁风险。

消减措施

安全加固建议:

Threat ID 2:边缘组件ServiceBus在本机范围内提供HTTP服务

描述

边缘组件ServiceBus监听本地local host端口并在本机范围内提供HTTP服务。该数据流中,较低信任级别的用户应用进程向较高信任级别组件ServiceBus发起访问。如果发起攻击,不应该使攻击者能够将影响范围扩大到云端控制面(该漏洞描述引用自安全评估报告)。

影响

ServiceBus组件收到的数据往往是不受管理面控制的,攻击者能够对ServiceBus组件发起恶意报文攻击,导致通信过程存在仿冒和篡改的威胁风险。ServiceBus组件异常仅影响单个边缘节点服务故障,不会导致整个KubeEdge系统崩溃。

消减措施

安全加固建议

Threat ID 3:边缘端Device通过MQTT Broker连接到EdgeCore。

描述

边缘device设备通过MQTT Broker(集成在EventBus组件中)连接到EdgeCore。该数据流中,较低信任级别的用户device设备向较高信任级别组件EdgeCore发起访问(该漏洞描述引用自安全评估报告)。

影响

EdgeCore组件收到的数据往往是不受管理面控制的,攻击者能够对MQTT Broker发起恶意报文攻击,存在仿冒和篡改的威胁风险。如果发起攻击导致EventBus组件异常,异常仅影响单个边缘节点服务故障,不会导致整个KubeEdge系统崩溃。

消减措施

安全加固建议

Threat ID 4:Edged管理和监控Pods及其他K8s资源

描述

Edged管理和监控Pods及其他K8s资源。该数据流中,较低信任级别的应用容器与较高信任级别组件EdgeCore之间进行数据交互。如果主动发起连接时,被恶意服务器攻击,不应该使攻击者能够将影响范围扩大到云端控制面(该漏洞描述引用自安全评估报告)。

影响

如果Edged访问的CRI插件被攻击者恶意伪造,则存在CRI插件仿冒和篡改的威胁风险,导致本地业务异常。

消减措施

安全加固建议

Threat ID 5:MetaServer在边缘节点提供HTTP服务

描述

MetaServer作为边缘“api-server”,对边缘插件提供HTTP服务。该数据流中,较低信任级别的用户应用插件向较高信任级别组件MetaServer发起访问(该漏洞描述引用自安全评估报告)。

影响

MetaServer组件收到的数据往往是不受管理面控制的,攻击者能够对MetaServer组件发起恶意报文攻击,导致通信过程存在仿冒和篡改的威胁风险。MetaServer组件异常仅影响单个边缘节点服务故障,不会导致整个KubeEdge系统崩溃。

消减措施

安全加固建议

内部攻击分析

对于内部管理员或操作人员,可能的风险主要包括管理员或操作人员错误操作将恶意软件部署至集群中、在高风险场景中执行高风险配置等。

消减措施

安全加固建议

供应链攻击分析

攻击可能发生在典型软件供应链的每一个环节,而且在当今环境中,这些类型的攻击越来越公开,破坏性和代价高昂。攻击方向包括源代码完整性、构建完整性和构建产物的可用性。

消减措施

安全加固建议

安全加固建议列表

Recommendation ID 1 - 使用安全长度的私钥加密,并加密保存私钥

描述

建议用户生成至少为2048位私钥,且在本地加密存储私钥,存储私钥的文件设置最小化的访问权限,仅属主可读。

Recommendation ID 2 - 使用可信来源的CA证书

描述

从可信的CA获取数字证书,不使用自签名证书。

Recommendation ID 3 - 严格限制边缘节点的用户登录权限

严格限制边缘节点的本机权限,限制外部用户的用户登录权限,减少非必要的授权。

Recommendation ID 4 - 严格限制应用部署的权限

描述

严格限制边缘节点应用部署的权限,只有系统服务和管理员才能拥有部署特权容器的权限;

Recommendation ID 5 - 严格校验应用镜像的合法性

描述

在边缘节点部署应用时,严格校验应用镜像的合法性,防止部署恶意应用。

Recommendation ID 6 - 严格限制边缘Device设备的接入

描述

对于接入边缘节点的Device设备进行严格审核,避免非必要设备接入。

Recommendation ID 7 - 严格审查边缘节点上CRI插件的配置

描述

严格审查CRI插件的配置,使用CRI对应插件的官方推荐配置。

Recommendation ID 8 - 严格划分系统中各个角色权限

描述

严格划分系统中各个角色权限,通过RBAC、OPA等方式实现系统角色权限的细粒度控制。

Recommendation ID 9 - 及时跟进并更新KubeEdge版本

描述

社区发现漏洞后将在最近的3个minor release版本中合入解决,用户可以关注社区security advisory 获取漏洞披露信息,并及时跟进并更新KubeEdge版本。

Recommendation ID 10 - 根据社区发布的校验文件严格校验二进制文件

描述

用户使用社区发布的二进制文件前,应该根据社区发布的校验文件(校验文件格式:checksum_组件二进制包名称.txt)严格校验二进制文件,防止二进制被仿冒和篡改。社区release软件包发布地址https://github.com/kubeedge/kubeedge/releases。

Recommendation ID 11 - 在用户或vendors的软件供应链中引入SLSA软件供应链安全评估框架

描述

用户或vendors在使用源代码构建过程中,应该参考SLSA软件供应链安全评估框架,对源代码、构建流程、依赖库等进行安全加固。

附录:相关链接

• 社区漏洞处理机制: https://github.com/kubeedge/kubeedge/security/policy

• 安全审计报告: https://github.com/kubeedge/community/tree/master/sig-security/sig-security-audit/KubeEdge-security-audit-2022.pdf

• 社区security advisory链接: https://github.com/kubeedge/kubeedge/security/advisories

• KubeEdge威胁模型及安全防护分析(本文档): https://github.com/kubeedge/community/tree/master/sig-security/sig-security-audit/KubeEdge-threat-model-and-security-protection-analysis.md

• 社区用户文档链接: https://kubeedge.io/en/docs

• SLSA软件供应链安全框架: https://slsa.dev/spec/v0.1/#supply-chain-threats

• release链接地址: https://github.com/kubeedge/kubeedge/releases

 

点击关注,第一时间了解华为云新鲜技术~

标签:原生,KubeEdge,白皮书,安全,Recommendation,组件,权限,ID
来源: https://www.cnblogs.com/huaweiyun/p/16528606.html