蚂蚁是如何改进 K8s 集群敏感信息的安全防护的?

【信息科学与工程学】计算机科学与自动化-——第十五篇云计算 11 算法篇 在百万级虚拟机、百万级租户的超大规模云环境中,核心算法挑战包括:挑战维度具体问题算法需求技术复杂度规模性​百万级对象并发管理分布式算法、分区算法极高(NP-hard问题)多租户​租户间隔离与资源共享公平性算法、隔离算法高(多目标优化)动态性​资源需求实时变化自适应算法、在线算法高(实时决策)异构性​硬件/负载/需求差异分类算法、匹配算法中高(多维度优化)经济性​资源利用率与成本平衡优化算法、博弈论算法高(多目标博弈)以下是按领域分类的详细算法列表:算法名称数学建模表达核心思想时间复杂度适用场景推理步骤首次适 阅读详情

在 Kubernetes 中,Secret 显得尤其重要。因为它是 K8s 中存储所有敏感信息的对象。据悉,这些敏感信息包含密码、集群的证书、OAuth token、ssh key 以及其他用户自定义的敏感文件等。因此,一旦 K8s 中 Secret 出现安全问题,后果将非常严重。此外,虽然社区提供了一定的安全防护方案,但是依然存在诸多问题。

 

K8s Secret 面临着哪些安全问题?这些安全问题会带来什么影响?社区提供的解决方案存在哪些不足?......针对这些问题,InfoQ 记者采访了蚂蚁集团高级工程师秦凯伦,他专注于可信计算、系统安全和虚拟化等领域,对 K8s Secret 有着深入的研究和探索。

K8s Secret 的安全问题

根据 Kubernetes 文档,Secret 是 K8s 中存储所有敏感信息的对象。事实上,如果敏感信息直接存放于 K8s 的 Pod spec 或镜像中,不仅管控困难,而且存在较大的安全隐患。因此,K8s 通过创建、管理、应用 Secret 对象,可以更好地控制敏感信息的用途,并降低其意外暴露的风险。

秦凯伦称,虽然引入 K8s Secret 对象,这在一定程度上降低了意外泄露的风险(更多地是通过集中式的管理),但是 K8s Secret 对象自身的安全性,“社区默认方案中仍存在许多安全问题”。

一般来说,K8s 中,Secret 数据以纯文本的方式存储在 etcd 中,默认只有 base64 编码,未经加密。同时,共享该文件或将其检入代码库,密码容易泄露。

 

社区解决方案的不足

针对此问题,K8s 社区提供了基于 KMS 的 K8s Secret 加密方案,谷歌云、AWS 和 Azure 均支持该方案。他说,“这虽然解决了 etcd 中 Secret 明文存储问题,但依然有一些问题。”

  • Secret、加密 Secret 的密钥在内存中明文存放、易被攻破;

  • 攻击者可以假冒合法用户,调用解密接口,窃取密钥;

密钥一旦泄露,将导致所有数据的泄露,从而引起用户对整个系统的信任崩溃。“为此,社区和一些公司尝试为该方案中的 Plugin 加上基于硬件的安全保护,从而提升攻击难度。但对某些特定用户来说,保护的覆盖面和程度依然不够”。

实际上,我们可以从 K8s Secret 的整个生命周期来看:

  • Secret 的生成及访问 Secret 的身份证书明文存放在用户侧内存中,用户侧环境复杂,容易被攻击者攻破;

  • 加密 Secret 的密钥的生成、cache 等在 K8s API server 中明文存放在内存中,安全根易被窃取或破坏;

  • 与 KMS 交互的 Plugin 的加解密接口无法防止攻击者假冒,存在泄漏风险;

  • Secret 在 Node 中消费,依然明文内存存放,暴露出一定攻击面;

在秦凯伦看来,理想中,对 K8s 中 Secret 的保护程度应该考虑其整个生命周期的安全、可信,做到端到端的安全防护。

蚂蚁集团的探索

为此,他们基于 TEE 技术,将 K8s Secret 整个生命周期和端到端使用过程中的关键组件、步骤保护起来。整体方案大致如下:

  • 将 API Server 端与 KMS 交互的 KMS Plugin  用 TEE 保护,在保障了 Plugin 中根密钥(安全根)、数据加密密钥无泄漏风险的前提下,降低了性能开销;

  • 将 API Server 端的 KMS provider 用 TEE 保护,避免数据密钥及 Secret 在任何时候明文直接暴露在内存中;同时,通过 TEE 的本地证明机制能够认证解密数据密钥接口的调用者,防止攻击者假冒,确保密钥的安全;

  • 将用户端的 kubectl、kubeconfig 等使用 TEE 保护,一方面 kubeconfig 不落盘同时被硬件保护,提升了安全水位;另一方面,用户的 Secret 通过安全信道直通到 TEE 中进行处理,避免了直接暴露在内存中,规避了被恶意窃取的风险,且用户对 API Server 进行 TEE 远程证明,可以帮助用户确信他正在把自己的 Secret 托付给可信的软件实体(没有含有故意泄露用户秘密的恶意逻辑),建立对 API Server 的信任;

  • 将 Node 端的 kubelet 中 Secret 的消费过程用 TEE 保护,进一步避免了 Secret直接暴露在内存中,规避了被恶意窃取的风险;

 

秦凯伦向 InfoQ 记者指出,“这种方案是基于 TEE 的端到端 K8s Secret 保护,还引入 LibOS 技术,实现 TEE 保护对用户、开发者和运维团队完全透明。”

 

据悉,KMS Plugin 和 TEE-based KMS Plugin 没有标准和开源的社区实现,因此他们设计并开发了自己的 KMS Plugin,并在灰度发布、应急处理、监控管理等方面进行了生产增强。“在与 TEE 结合的过程中,我们为了应对 SGX 机型存在的性能问题,提供了 standalone 和服务化 KMS Plugin 两套方案”。

 

同样,TEE-based kubectl 也没有标准和开源的社区实现,他说:“我们基于 kubeproxy 开发了自己的安全 kubectl,实现了 kubeconfig 对用户透明、与用户身份绑定、不落盘并采用TEE保护内存安全等设计目标。”

 

此外,考虑到 TEE 保护的易用性、可靠性、可扩展性和可维护性等,他们在评估多套方案后,引入了由蚂蚁开源的 Occlum LibOS,屏蔽了 TEE 对用户、开发者和运维团队的影响,大大降低了 TEE 开发的门槛和成本。

 

在秦凯伦看来,K8s 作为蚂蚁大规模容器集群的管控根基,应用基于 TEE 的端到端 K8s Secret 保护防护方案,增强了其自身安全和可信,提升了蚂蚁核心管控平面的安全水位,“这对于金融场景下高标准的数据安全和隐私保护来说不可或缺”。

K8s 相关阅读

【信息科学与工程学】【数据中心】 第十五篇 智算中心DaaS数据消费场景02 智算中心DaaS数据共享场景的分级分类是一个复杂的系统工程,需要从技术、安全、合规、治理、运营等多个维度进行综合考虑。本分级分类体系为不同场景下的数据共享提供了详细的指导,包括安全分级、共享模式、技术架构、合规治理等方面。在实施数据共享平台时,应结合自身业务需求、技术能力和资源情况,选择适合的共享模式和实施路径。同时,要高度重视数据安全和隐私保护,采用先进的技术和管理手段,确保数据共享的安全可控。 阅读详情

相关推荐

【信息科学与工程学】【运营科学】第二篇 C4信息与通信网络运营 (C4) ——数据中心网络运营04

典型值:λ1​∈[−0.02,−0.01], λ2​∈[−0.01,0], η1​,η3​∈[0.1,0.3], η2​,η4​∈[0.05,0.15]参数:δ1​∈[−0.8,−0.3], δ2​∈[−0.5,−0.2], δ3​∈[−0.4,−0.1], δ4​∈[−0.6,−0.2]参数:φ1​∈[0.1,0.3], φ2​∈[−0.2,−0.05], φ3​∈[−0.1,0.1], φ4​∈[−0.3,−0.1]参数:α∈[0.3,0.6], β∈[0.2,0.4], γ∈[0.01,0.03]

weixin_49199313的博客 1217

K8S安全风险及防护建议

例如,攻击者可以创建一个特权容器,该容器可以访问宿主机上的资源,并在该容器内执行命令,从而使其获得更高的权限。事中,通过融合图计算、身份欺骗等技术,对K8S进行全方位的监测,及时发现针对K8S的漏洞利用、身份窃取等风险,在遭受攻击的第一时间及时发现攻击者,对攻击行为进行阻断。比如攻击者可通过容器中运行的SSH服务执行命令,如果攻击者通过暴力破解或者其他方法获得了容器的有效凭证,他们就可以通过SSH获得对容器的远程访问。但同时,K8S也因其高度复杂的架构和众多组件,成为了攻击者攻击的目标之一。

ZAWX_NETSTARSEC的博客 1280

航测无人机las点云数据生成DEM

“ 做航测的同僚都知道,Pix4D或者CC(ContextCapture)都可以生成DSM,往往高程点提取以及土方计算都需要用到DEM,PhotoScan软件可以提出地面点并只应用地面点连接三角网,然而分类效果差,生成的DEM不管是平整度还是精度,都不理想。而传统等高线生DEM需要耗费较长时间,以下提供一种参考方法,供大家探讨。 ” 1 点云数据 航测类软件大多可以生成点云数据,如Pix4D,PhotoScan,CC等,此次点云数据为citymapper2相片基于CC生产的Las点云。 2 筛选地面点 筛.

qq_43173805的博客 1万+

K8s集群CoreDNS所在节点挂掉应急演练

为了更好保障线上业务服务的稳定性与可用性,本次尝试注入一次coredns故障,来模拟演练当线上故障后对业务服务的影响范围,及验证应急方案执行有效性,通过演练能够帮助croedns提升容错性和可恢复性。

sinat_21610043的博客 1184

<Verilog实现除法器> Verilog实现牛顿-拉夫逊(Newton-Raphson)除法器

阿斯顿阿斯顿啊啊是打发士大夫

IC跳跳鱼的博客 3586

InTouch历史报警与操作记录高效查询控件V4.0实战指南(一键下载即用)

本文详细介绍了InTouch历史报警与操作记录高效查询控件V4.0的实战应用。该控件针对原生AlmDbViewCtrl控件的查询效率低下、功能单一等问题,提供了智能查询、可视化统计、视图定制和一键导出Excel等强大功能,旨在帮助工程师快速处理海量历史数据,大幅提升工控运维效率。

g9h0i1的博客 960

K8s 安全防护:认证、授权与网络策略保障集群安全

认证、授权和网络策略是保障 K8s 集群安全的重要手段。通过合理配置认证机制,可以确保只有合法的用户和客户端能够访问集群;利用授权机制,可以精确控制用户和客户端对集群资源的操作权限;应用网络策略,可以有效隔离 Pod 之间的网络通信,防范网络攻击。在实际应用中,需要根据企业的安全需求和业务场景,综合运用这些安全防护措施,构建一个安全可靠的 K8s 集群环境。

wdfdgygg77的博客 1192

麒麟银河操作系统V10部署ffmpeg(也能用于Linux系统)

部署ffmpeg用来处理视频的各种操作,如编码解码,格式转换,剪辑,处理实时视频流,音频流,加滤镜等

zhouwenxing666的博客 9041

k8s--(11)k8s API服务器安全防护

通过用户认证和权限控制守护API服务器的安全。

weston666的博客 507

手把手教你用VS Code + Codex在WSL中高效编程(避坑指南)

本文提供了一份详细的避坑指南,教你如何在WSL环境中高效配置和使用VS Code与OpenAI Codex。文章核心在于解决WSL内Codex扩展的OAuth登录失败问题,推荐将扩展安装在Windows本地,并通过UNC路径直接访问WSL文件系统,从而实现AI辅助编程与Linux开发环境的无缝结合,提升编码效率。

weixin_28677451的博客 1068

牛耕式全覆盖算法-matlab代码

牛耕式路径全覆盖算法,也称为牛耕算法或者蚂蚁算法,是一种用于解决路径规划问题的启发式算法。这个算法的灵感来自于牛在耕田时的行为。在这个算法中,假设有一块田地需要耕作,牛从田地的某个角落开始行走,走过的路径会被标记。牛会优先选择尚未经过的路径,当所有的路径都走过后,算法停止。在路径规划问题中,田地可以看作是一个由节点和边构成的图。每个节点代表一个位置,每条边代表两个节点之间的连接。路径全覆盖问题是找出一组路径,使得每个节点都被至少一条路径经过。牛耕式路径全覆盖算法的基本思想是以启发式的方式逐步构建路径。

m0_69611489的博客 1690

k8s 安全机制详解

Token 和 Basic 认证主要是单向的,即只能验证客户端对服务器的身份。而 HTTPS 证书认证可以实现双向认证,这对于需要确保通信双方身份的场景非常重要,比如在 Kubernetes API Server 与 etcd 或其他组件之间的通信中。使用 HTTPS 证书认证可以防止中间人攻击,确保数据传输的安全性。kind: Rolemetadata:rules:- apiGroups: [""] # 空字符串表示核心 API 组。

qq_51545656的博客 1791

Unity机械拆装实战:5步搞定发动机模型交互式装配(附完整代码)

本文详细介绍了在Unity中实现高交互性机械拆装仿真的完整流程。以发动机模型为例,通过5个核心步骤:项目初始化与模型准备、核心交互实现、智能装配逻辑、场景管理与相机控制、进阶优化与扩展,系统讲解了从零构建交互式装配功能的方法,并提供了完整的代码示例。

weixin_28049429的博客 217

k8s往secret里导入证书_蚂蚁是如何改进k8s集群敏感信息的安全防护的?

在Kubernetes中,Secret显得尤其重要。因为它是K8s中存储所有敏感信息的对象。据悉,这些敏感信息包含密码、集群的证书、OAuth token、ssh key以及其他用户自定义的敏感文件等。因此,一旦K8s中Secret出现安全问题,后果将非常严重。此外,虽然社区提供了一定的安全防护方案,但是依然存在诸多问题。K8s Secret面临着哪些安全问题?这些安全问题会带来什么影响...

weixin_35207054的博客 193

【大模型应用开发-大模型知识】(二)大模型分类和常见大模型

目前包含 Claude 和 Claude-Instant 两种模型可供选择,其中 Claude Instant 的延迟更低,性能略差,价格比完全体的 Claude-v1 要便宜,两个模型的上下文窗口都是 9000 个token(约 5000 个单词,或 15 页)它的目标是“更安全”、“危害更小”的人工智能。Google 还开发了多种 PaLM 的改进版本。更强大的基础模型: ChatGLM3-6B 的基础模型 ChatGLM3-6B-Base 采用了更多样的训练数据、更充分的训练步数和更合理的训练策略。

1万+

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

SOFA Weekly | 线上直播合辑整理、Seata QA 整理

SOFA WEEKLY | 每周精选,筛选每周精华问答同步开源进展,欢迎留言互动SOFAStack(ScalableOpenFinancialArchitecture Stack)...

金融级分布式架构 225

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

SOFA Weekly | SOFABoot 发布、SOFAJRaft 以及 SOFARPC 内容合辑

SOFA WEEKLY | 每周精选,筛选每周精华问答同步开源进展,欢迎留言互动SOFAStack(ScalableOpenFinancialArchitecture Stack)...

金融级分布式架构 356

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

Agent Plan × DeepSeek Harness:自适应反欺诈规则挖掘与演化技术

随着数字经济的蓬勃发展,金融交易、电商零售、社交网络等场景中的欺诈行为呈现出多样化、隐蔽化、集团化的演变趋势。传统基于人工经验编写和维护反欺诈规则的模式面临三大核心瓶颈:一是规则发现滞后,新型欺诈手法往往需要数天甚至数周才能被人工分析师捕获并转化为线上规则;二是规则维护成本高企,大型业务平台通常维护数千至数万条规则,规则间的冲突、冗余与性能退化难以管控;三是自适应能力缺失,当欺诈者调整攻击策略后,原有规则的命中率迅速衰减,而人工迭代速度远远无法跟上。为系统性地解决上述痛点,本白皮书提出双层框架:上层。

weixin_48056496的博客 512

基于 K8s 容器集群的容灾架构与方案

备份恢复方案实施成本较低,但 RTO 和 RPO 相对较长,取决于数据量的大小和应用的复杂度。备份中心能够提供的全量备份+增量备份能力,减少 RTO 和 RPO 时间。备份恢复作为容灾的兜底方案,重要性高,在系统运维的过程中,要保证备份的及时性和可恢复性。另外,许多用户选择通过备份恢复功能实现应用的跨集群迁移,场景如下:1. 业务上云,将本地 IDC 集群中的应用,迁移到阿里云 ACK 集群中,参考 IDC 应用上云迁移18]。

Admans的专栏 620

K8S应用流程安全(镜像安全 配置管理 访问安全)

这一节,我们从 基础知识、简单实践、小结 三个方面来学习。这一节,我们从 基础知识、简单实践、小结 三个方面来学习。这一节,我们从 基础知识、简单实践、小结 三个方面来学习。这一节,我们从 基础知识、简单实践、小结 三个方面来学习。这一节,我们从 基础知识、简单实践、小结 三个方面来学习。这一节,我们从 基础知识、简单实践、小结 三个方面来学习。这一节,我们从 基础知识、简单实践、小结 三个方面来学习。这一节,我们从 基础知识、简单实践、小结 三个方面来学习。

m0_46690280的博客 2573

CKS认证 | Day1 K8s集群部署与安全配置

Kubernetes(K8s) 是一个广泛使用的容器编排平台,用于自动化部署、扩展和管理容器化应用程序。随着 K8s 在生产环境中的普及,安全运维成为确保系统稳定性和数据安全的关键。

小安的运维专栏 2218

K8s网络安全防护:从基础到高级的安全措施

例如,给数据库Pod打上“app=database”标签,给应用服务Pod打上“app=backend”标签,然后创建网络策略,只允许“app=backend”的Pod访问“app=database”Pod的特定端口,如3306(MySQL默认端口),以此限制非法访问,保障数据库安全。例如,在一个电商系统中,针对用户服务、订单服务、支付服务等不同微服务,分别制定独立的网络策略,严格限制服务间的访问路径和端口,即使某个微服务被攻陷,攻击者也难以横向移动到其他微服务。(二)网络隔离与分段。

wdfdgygg77的博客 580

10大K8s应用安全加固技术

本文,将介绍10种开发者可以对应用程序应用加固的方法。

CNBPA的博客 417

k8s安全01--云安全简介

k8s安全01--云安全简介1 基础概念1.1什么是安全1.2 基础安全原则2 说明 在云时代更加普遍的今天,云安全也逐被各大厂商关注,因此有必要了解常见的云安全知识。 通过本文,可以理解安全处理的过程、基础安全准则、常见攻击类型,能够检测云安全里面的 4C(code, container, cluster, cloud),研究安全机构和安全资源。 1 基础概念 1.1什么是安全 计算机安全指的是对计算机或者计算机系统的某个项目或者资产价值的保护;这里的资产有很多种类,包括硬件、软件、数据、程序、员工,以及

脚步不能达到的地方,眼光可以达到;眼光不能达到的地方,精神可以飞到 1221
上一篇: 加入云上江湖—蚂蚁 SOFAStack
下一篇: 基于 RAFT 的生产级高性能 Java 实现 - SOFAJRaft 系列内容合辑
SOFAStack
博客等级 码龄7年 747粉丝 389原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值