不信任任何人,无处不在——Enarx简介

本文涉及的产品
密钥管理服务KMS,1000个密钥,100个凭据,1个月
简介: 不信任任何人,无处不在——Enarx简介

当您将工作负载作为VM、容器或在无服务器环境中运行时,该工作负载很容易受到任何具有管理程序、根或内核访问权限的人员或软件的干扰。

Enarx是一个新的开源项目,旨在简化将工作负载部署到公共云中、本地或其他地方的各种可信执行环境(TEE)的过程,并确保您的应用程序工作负载尽可能安全。

当您在云中运行工作负载时,没有任何技术障碍可以阻止云提供商或其员工查看您的工作负载、查看数据,甚至更改运行过程。

这是因为当您将工作负载作为VM、容器或无服务器运行时,实现这些工作负载的方式意味着具有足够访问权限的人员或软件实体可能会干扰该机器上运行的任何进程。

还有其他问题需要考虑。你不仅需要信任公共云提供商及其员工,还需要信任他们系统上运行的所有软件,因为如果它是恶意的或被破坏的,那么其他人或实体可能会查看或干扰你的工作负载。

您必须信任操作系统、固件库、系统管理程序、应用程序堆栈、第三方库、中间件、驱动程序:每个系统上的一切都不需要是恶意的或被破坏的。

当然,公共云提供商通常没有什么动机干扰我们的工作负载——当然,除了执法部门的要求——他们有很多动机正确运行工作负载。

他们努力工作,试图使您的工作负载运行的系统尽可能安全。但他们的重点不是保护您的工作负载不受其影响,而是保护他们的服务器不受您的工作负荷影响,并保护您的负载不受其他租户的工作负荷的影响。

这并不是说他们不采取措施保护你,但考虑到大多数现有威胁,可以理解的是,首要任务是保护你免受恶意工作负载和租户的攻击。

企业和组织需要做出的决定是,他们是否愿意承担在公共云中运行客户详细信息、财务信息、法律程序、工资单信息、医疗数据、防火墙设置、身份验证数据库或无数其他敏感工作负载的业务风险。

还有什么选择?如果你不想信任云服务提供商,那么在自己的场所运行工作负载可能会更安全,但即使这样也绝对不是完美的。

有人在内部运行您的服务器——有操作人员、系统管理员、数据库专家——如果您在您的场所运行服务器,他们中的许多人都有可能访问相同的数据和流程。

你的初级系统管理员能够看到——并可能改变——首席执行官的薪酬和补偿方案,或者泄露收购细节,你对此有多高兴?

信任

那么,问题究竟是什么呢?思考计算机系统的一种经典方式是将其视为一组层,称为堆栈。堆栈由各种硬件、固件和软件层组成,这些层几乎总是由不同的实体提供。

下图给出了云虚拟化体系结构的示例堆栈,其中应用程序(您的工作负载)在各种不同的层上运行。在本例中,颜色代表每层的不同提供者,代表五个不同的实体——数字可能更高。

为了让您(工作负载所有者)确保您的应用程序尽可能安全,您需要确保没有任何层是恶意的或被破坏的,即使这是真的,您仍然需要信任实际运行主机系统的云服务提供商。

下一个图表显示了一个更现代的示例,其中工作负载(“应用程序”)在容器中运行。

很明显,如果你是一个恶意行为者,不仅有更多的层需要保护或利用,而且还有更多的提供者:在这种情况下有七个。

当然,有许多技术可以解决不同层的安全问题,其中最重要的是从值得信赖和信誉良好的组织中获取不同层,但最终,恶意行为者可以利用的攻击面很大。

TEEs to the Rescue?

可信执行环境(TEE)是解决其中一些问题的一种相当新的技术方法。它允许您在一组内存页中运行应用程序,这些内存页由主机CPU加密,即使主机系统的所有者也无法查看或修改TEE实例中正在运行的进程。

最著名的是AMD的安全加密虚拟化(SEV)和英特尔的软件保护扩展(SGX),尽管其他硅供应商也在讨论其架构的替代方案。AMD和英特尔采取的方法非常不同,我们将在下面回到这一点。

如上所述,TEE的使用允许您以这样一种方式设计应用程序,即主机无法查看正在运行您的工作负载的TEE实例。这是对当前状态的改进,如果实施得当,基本上消除了必须信任云服务提供商甚至内部员工的问题,但仍存在一些问题。

然而,在我们解决这些问题之前,前一段中有一个令人担忧的词:短语“当正确实施时”中的“正确”一词。问题是,在TEE中设置和运行工作量远非一个简单的命题。

想象一下,如果有人可以伪造TEE,让你相信你的敏感工作负载正在TEE中运行,而它实际上是在没有TEE保护的标准且受损的主机系统上执行的。

可以说,你的处境比TEE之前更糟,因为至少在那时你知道要小心敏感的工作负载:现在,你有了安全的错觉,并被欺骗暴露了需要保护的应用程序。

当然,硅供应商已经注意到了TEE实例的欺骗问题,因此他们提供了一些机制,通过这些机制,CPU(正在设置TEE实例)可以告诉希望运行工作负载的一方它是真实的,并以加密方式证明它:这被称为证明。

执行完整的证明并检查其正确性不是一个简单的过程,将其设计成应用程序可能会很复杂,但让我们假设您已经实现了这一步骤,并准备好继续操作。

给定一个经过适当验证的TEE,我们现在可以在加密上确信我们正在一个真正的TEE实例中运行我们的应用程序,但这并不能解决我们所有的问题。

至少还有两个问题需要解决。首先,尽管我们现在已经将应用程序与堆栈中的一些层隔离开来,但仍有一些层是我们所依赖的,因此也是我们所信任的。

具体是什么取决于TEE类型和部署模型,现在,除了最简单的应用程序之外,没有任何应用程序具有零依赖性,但例如,如果您正在使用VM运行TEE实例,那么您通常会将整个操作系统作为依赖项在VM中运行:同样,我们有内核、用户空间等——这是需要管理的一大信任!

Enarx是一个旨在解决上述问题的项目:使用TEE实例,但其方式允许您减少信任关系的数量,同时保持更高级别的安全性和易用性。

https://github.com/enarx

Enarx:简化信任关系

Enarx是一个用于在TEE实例中运行应用程序的框架,我们在项目中称之为“Keeps”,无需单独实现证明,无需信任大量依赖项,也无需重写应用程序。它被设计为对用户(您)透明地跨硅架构工作,这样您的应用程序就可以像在英特尔硅上运行一样轻松地在AMD硅上运行,而无需重新编译代码。随着其他TEE类型的出现,我们也计划支持它们。

鉴于这是一个Red Hat项目,它现在是并将继续是开源软件。鉴于这是一个与安全相关的项目,我们的目标是使其尽可能小且易于审核。

Enarx的关键组件包括:

认证组件;

Enarx API和核心;

Enarx运行时环境;

管理组件。

我们将在一篇技术性更强的文章中详细研究这些,但让我们看看Enarx试图实现什么。如果我们考虑上面提到的其中一个堆栈,Enarx的目标是:消除对CPU/固件(由硅供应商,如英特尔或AMD提供)之上任何层的信任,这意味着在执行过程中需要信任的应用程序之下的下一层是中间件层(见下图)。需要明确的是,TEE和任何其他安全能力一样,不能保证是完美的。你可以使用它们来减少你的攻击面和需要信任的层数。

Enarx也有一个位于中间件层的组件——Enarx运行时环境——我们计划将其小型化,以便易于审核。它是开源的,这意味着任何人都可以仔细查看并决定是否信任它。我们的目标是与开源社区合作,鼓励他们进行审计,让那些无法自己进行分析的人对Enarx代码有高度的信任。

其他部分允许以对用户透明的方式对应用程序进行认证、打包和加载。首先,您要求Enarx组件检查您计划部署到的主机是否正在启动真正的TEE实例。一旦确认并验证了TEE,管理组件就会对应用程序的相关部分以及任何所需数据进行加密,并将其发送到主机,以便在Enarx Keep中执行。

我们对Enarx的愿景不仅仅局限于内部部署和公共云,还包括任何启用TEE的系统。我们希望启用电信类型的边缘用例、移动用例、物联网用例等。现在还为时过早,但如果你感兴趣,我们敦促你访问项目网站,了解更多信息,并希望做出贡献。

Enarx旨在简化将工作负载部署到云中、您的场所或其他地方的各种不同TEE的过程,并让您相信您的应用程序工作负载尽可能安全。随着项目的发展,我们将公布更多细节。

https://next.redhat.com/2019/08/16/trust-no-one-run-everywhere-introducing-enarx/

目录
相关文章
|
监控 安全 芯片
看见“信任”,可信计算史上最全解析
等保2.0将可信提升到一个新的强度。在等保一到四级都有可信的要求,主要在三个领域:计算环境可信、网络可信、接入可信。
33787 1
看见“信任”,可信计算史上最全解析
|
3月前
|
安全 数据建模 网络安全
OVSSL与DVSSL:一场关于信任与便捷的较量
OVSSL和DVSSL是SSL证书的两种类型,各有特点。DVSSL如同“宅男”,只需验证域名所有权,快速便宜,适合个人和小型网站。而OVSSL则像“暖男”,需验证企业和域名信息,提供更高信任度,适合企业官网和电商平台。选择哪种,取决于你的需求。
|
3月前
|
供应链 监控 安全
网络安全中的零信任架构:从概念到部署
网络安全中的零信任架构:从概念到部署
|
5月前
|
人工智能 供应链 安全
网络安全与信息安全:构建数字世界的坚固防线在当今数字化时代,网络安全已成为维护个人隐私、企业机密和国家安全的重要基石。本文旨在探讨网络安全漏洞、加密技术及安全意识等关键领域,通过深入浅出的方式,引导读者理解网络安全的核心要素,并分享实用的防护策略,共同守护我们的数字世界。
随着互联网技术的飞速发展,网络安全威胁日益凸显,成为全球关注的焦点。本文聚焦网络安全的三大核心议题——网络安全漏洞、加密技术与安全意识,旨在揭示它们之间的相互关联与重要性。通过剖析真实案例,展现网络攻击的复杂性与破坏力;解析加密技术的原理与实践,强调其在保护数据安全中的关键作用;同时,倡导提升公众安全意识,构建多层次的网络安全防护体系。本文不仅为专业人士提供技术参考,也旨在提高普罗大众的网络安全认知,共同筑牢数字世界的安全防线。
215 10
|
6月前
|
安全 数据安全/隐私保护 Python
【震撼揭秘】:密码大战公钥!解锁信息安全认证技术的惊天秘密与实战应用,带你领略数字世界的终极防线!
【8月更文挑战第20天】信息安全中,认证技术确保用户身份真实,本文对比基于口令认证与基于公钥基础设施(PKI)认证。前者简便但易受攻击,常需配合多因素认证加强安全性;后者利用数字证书及公/私钥机制,提供更高安全保障。随着技术演进,未来认证手段将更趋多元高效。
82 2
|
8月前
|
存储 SQL 安全
构建数字世界的堡垒:网络安全与信息安全探究
在当今数字化时代,网络安全与信息安全已成为不可忽视的重要议题。本文从网络安全漏洞、加密技术以及安全意识等方面展开探讨,旨在为读者提供对这一领域的深入了解和实用知识。
47 2
|
9月前
|
安全 网络安全 数据安全/隐私保护
数字证书是网络安全领域不可或缺的一部分
【5月更文挑战第11天】数字证书是网络安全领域不可或缺的一部分
125 1
|
8月前
|
区块链 存储 安全
揭开未来:区块链在彻底改变数字身份管理中的作用
区块链技术为安全存储和验证敏感信息提供新途径,尤其在数字身份管理中展现潜力。通过分布式共识机制,它提供防篡改的数据验证,支持自我主权身份,让用户掌控数据分享。零知识证明保障隐私,但面临合成身份盗窃和网络安全挑战。尽管如此,区块链将继续塑造安全的数字交互未来,开启数字领域的新时代。
|
9月前
|
监控 安全 Cloud Native
零信任安全模型:构建未来数字世界的安全基石
在数字化转型的浪潮中,云原生技术已成为推动企业创新和灵活性的关键力量💡。然而,随着技术的进步和应用的广泛,网络安全威胁也日益严峻🔓,传统的网络安全模型已经难以应对复杂多变的网络环境。在这样的背景下,零信任安全模型(Zero Trust)应运而生,成为提升网络安全防护能力的重要策略🛡️。本文将深入探讨零信任的概念、必要性、以及它如何解决传统网络模型面临的痛点和挑战。
零信任安全模型:构建未来数字世界的安全基石
|
9月前
|
存储 运维 安全
[隐私计算实训营笔记]第一课——数据可信流通,从运维信任到技术信任
本课以数据要素可信流通,重构技术信任体系为主题,介绍了信任四要素,以及其对应破环的原因,因此需要从运维信任走向技术信任的路线,并最终完成安全可信基础设施的融合布局。 感谢授课人韦韬老师~

相关实验场景

更多