2020 Software Guard eXtensions (SGX) represents Intel’s latest foray into trusted computing. active development) Intel’s Sawtooth was one of the first projects in the Hyperledger Foundation, a Linux PoET is a leader-based consensus algorithm that relies on SGX for its security guarantees. Each node requests a timeout from its SGX enclave using a trusted function. 2. , the authors present a different use case for SGX: securing databases.
我们通过添加libc函数模拟linux平台特性,实现依赖std的Rust生态库无需修改即可在SGX环境使用。为了保证尽可能小的安全边界,我们对每个增补的libc函数做了权限控制。 这样移植rust crate生态就方便了许多,teaclave-sgx-sdk团队甚至将一些常用的crate都移植好了放到github.com/mesalock-linux中. sgx_tstd的问题 这种开发模式已经事实上导致了Rust生态被分叉成了crates.io和mesalock-linux两个互不兼容世界。 让SGX支持Rust原生std teaclave-sgx-sdk开发应用目前标准做法是开启#![no_std]并编译target到 x86_64-unknown-linux-gnu。 glibc的行为,对下转接到sgx特别实现,可让针对linux的编译的Rust应用程序跑在sgx内。
2核2G云服务器首年95元,GPU云服务器低至9.93元/天,还有更多云产品低至0.1折…
SGX。 SGX是啥? Intel SGX是指 Software Guard Extensions SGX最早在2013年推出,主要是在计算机平台上提供一个可信的空间(TEE),保障用户关键代码和数据的机密性和完整性 。 最后说下: 近日,百度安全实验室推出一个Intel SGX 可信计算平台的Rust语言开发工具包Rust SGX SDK。说白了,这也是一种具体Intel芯片的TEE SDK! 基于Rust SGX SDK, 程序员可以快速开发出没有内存安全漏洞的 Intel SGX 可信程序。 Rust是Mozilla开发的注重安全、性能和并发性的编程语言。
为了给Occlum一个快速的尝试,可以使用Occlum Docker图像通过以下步骤执行: 步骤1-3在主机操作系统(Linux)上执行: 安装Intel SGX Linux驱动程序,该驱动程序是Intel 另外,如果要在不使用Docker的情况下使用Occlum,可以在Ubuntu和CentOS等流行的Linux发行版上分别使用Occlum DEB和RPM包安装Occlum。 上述两个需求不仅可以通过Occlum toochain来满足,还可以通过一些Linux发行版(如Alpine Linux)的本地工具链来满足。 我们认为Alpine Linux,一个强调简单和安全的流行Linux发行版,是适合Occlum的自然选择。 我们已经提供了演示(参见Python)来运行来自Alpine Linux包的未经修改的应用程序。 如何Debug?
前述内容请参照 Intel芯片架构中TEE的实现技术之SGX初探(二) Intel芯片架构中TEE的实现技术之SGX初探 SGX技术是Intel于2013年在ISCA会议中提出的,直到2015年10月支持 为了在EPC中执行一个二进制程序,SGX指令允许将普通的页复制到EPC页中。 其中Linux SGX实现系统包括SGX平台软件、SGX驱动程序和SGX软件开发工具包(SDK)。 专业版 第三步: 下载安装SGX SDK SGX SDK安装包可以从https://software.intel.com/sgx-sdk免费下载。 SGX SDK下载页面一共包含2个部分(图 1), Intel SGX SDK for Windows是SGX SDK的主体;Intel SGX Platform Software for Windows 图 1 英特尔 SGX SDK下载页面 注意1:如果电脑硬件不支持SGX功能, 则不需要安装PSW软件。开发工作只能通过SGX SDK里面内置的模拟器来运行调试enclave程序。 注意2:SGX有些相关的安全功能需要
Google都在积极布局TEE,都积极发展自己的TEEOS,微软也不会缺席,将为Linux 操作系统带来“可信执行环境”的支持,为机密计算提供安全保障机制,并且通过开源、联盟的方式统一应用接口。 Linux基金会执行董事Jim Zemlin说:“机密计算联盟是未来计算安全的一个领先指标,它将帮助定义和构建开放技术,以支持所使用数据的这种信任基础设施。” 目前硬件平台支持英特尔SGX和ARM TrustZone,Linux(X86-64和AARCH-64)和Windows(X86-64)。 目前参与者计划向机密计算联盟提供几个开源项目,包括: Intel® Software Guard Extensions(Intel®SGX)软件开发工具包,这是基于SGX实现的,旨在帮助应用程序开发者使用受保护的安全区保护代码和数据免于在硬件层泄露或修改 早在 2016 年,MIT 的研究人员在 Sanctum 项目中尝试使用 RISC-V 实现 Intel SGX 类似的功能基础PoC。
首先,Platypus的攻击在Linux系统上是最有效的,这是因为Linux内核附带了PowerCap框架。 PowerCap是一个通用驱动程序,其用于与RAPL接口和其他功率限额API进行交互。 这也是Linux作为开源系统,对于功耗监视的访问权限偏低所带来的一个问题。 所以相比之下,Windows和macOS系统是安全的。 此外,不论OS如何,针对英特尔SGX安全区的攻击都可以进行,因为攻击者针对的是SGX安全区,而非OS及CPU内存。 对此,研究者们做了攻击测试进行验证: 监视了RAPL功耗值仅20秒钟,攻击者便绕过了KASLR,开始从Linux内核中检索数据; 监视100分钟的RAPL数据,便从SGX安全区取得了RSA私钥; 从SGX 安全区和Linux内核内存空间取得AES-NI加密密钥的攻击稍久,需要26小时。
当然,开发者也可使用 Teaclave SGX SDK (原 Rust SGX SDK)来构建全新的 SGX 应用。 ? 除了维护第三方库,我们也孵化出了一些重要的 TEE 组件,比如,针对 SGX 环境的 Python 解释器 - MesaPy (https://github.com/mesalock-linux/mesapy Teaclave 生态也支持着可信计算和系统安全相关的学术研究,其中包括可信执行环境的安全,内存安全的 SGX SDK 设计,SGX 第三方库生态的安全等等相关课题。 https://github.com/scs/substraTEE Occlum 项目是基于 Teaclave SGX SDK 提供了一个 library OS 类型的 SGX 可信执行环境,使应用程序几乎不需要修改源代码即可放入 SGX 上运行。
ABB 5SGX1060H0003 用于传递和消费信息的方法图片为了利用通过数字化转型获得的数据,工业公司必须解决他们用于传递和消费信息的方法。
应用程序唯一需要信任的,是处理器及其实施的SGX。有了SGX,没人可以看到TEE中的数据。 2017年,阿里云与英特尔联合发布了基于芯片级的SGX加密计算技术,保障云上客户数据安全。 基于Intel SGX加密计算技术,阿里云为云上客户提供了系统运行时的可信能力。 2018年,基于SGX技术,阿里云又推出了基于SGX技术的区块链服务平台;2019年的云栖大会,阿里云智能也与阿里云数据库团队联合发布了全加密数据库产品。 l 机密计算联盟CCC 2019年8月,在Linux基金会下启动成立了机密计算联盟(CCC),旨在为机密计算定义标准,并支持开源工具的开发和采用。 目前,机密计算联盟支持少数几个开源项目,包括英特尔GX SDK for Linux、微软的Open Enclave SDK和Red Hat的Enarx。
今天我们要解读的至强秘笈,就与英特尔® 软件防护扩展(Software Guard Extension, SGX)技术及其主要用途——隐私计算密切相关。 作为可信执行环境(TEE)的重要技术实现,如图一所示,英特尔® SGX能在CPU的支持下,在内存等特定硬件环境中构建出一个可信安全的“飞地”(Enclave)。 从图二所示的架构可以看到,蜂巢平台利用英特尔® SGX分别在云端和边缘节点的服务器内存中开辟出安全的“飞地”。 客户可在云端基于英特尔® SGX和蜂巢隐私计算方案对模型进行训练,并通过“飞地”间的安全通道向边缘推送最新模型。 如图三所示,在运行过程中,MesaTEE平台能以Executor插件的形式在飞桨平台上构建基于Graphene-SGX等LibOS组件的英特尔® SGX安全可信环境,并将特定的深度学习任务投递到安全环境中
之前介绍过一篇intel芯片架构中SGX技术的文章: Intel芯片架构中TEE的实现技术之SGX初探 今天我们再来详细了解下。 英特尔 SGX 可减少应用的攻击面。 图 1 显示了借助英特尔 SGX 安全区和不借助英特尔 SGX 安全区时,攻击面的显著差异。 ? 图 1:借不借助SGX 时的攻击面 英特尔 SGX 可针对已知的硬件和软件攻击提供以下保护措施: 安全区内存不可从安全区外读写,无论当前的权限是何种级别,CPU 处于何种模式。 图 2: SGX如何确保受保护应用中安全区数据的安全。 包含英特尔 SGX 技术的应用设计要求将应用分成两个部分(见图 3): 可信部分。 它指的是安全区。 可信代码中的代码是访问应用机密的代码。 图 3: SGX应用执行流程。 认证 在英特尔 SGX 架构中,认证指的是以下流程,即证明在平台上建立了特定安全区。 有两种认证机制: 本地认证 适用于同一平台上两个安全区进行相互认证时。
ABB 5SGX1060H0003 有助于减少错误频率图片数字化为企业提供了发展和创新的机会。但它随后给数据带来了新的风险世界,而数据是任何企业最宝贵的资产。
https://github.com/hardenedlinux/Debian-GNU-Linux-Profiles/tree/master/docs/hardened_boot 早在 2016 年,MIT 的研究人员就在 Sanctum 项目中尝试使用 RISC-V 实现 Intel SGX 类似的功能基础PoC,最新版本的Sanctum使用Rocket开放核实现了PUF,attestation以及verifiedboot 和Intel SGX的复杂且封闭的设计和实现完全不同,基于 RISC-V 的产品可以做到完全的开放,这让芯片生态颠覆有了可能。 hardenedlinux/grsecurity-101-tutorials/blob/master/grsec-code-analysis/PAX_MEMORY_UDEREF.md 这一点和Intel SGX https://github.com/hardenedlinux/firmware-anatomy/blob/master/notes/sgx.md https://www.solidot.org/story
系统支持Linux内核和Linux-RT实时内核,默认提供的是Linux内核。如对系统实时性要求较高,可切换为Linux-RT内核。 表 6extra驱动说明cryptodevcrypto加密算法调用ti-sgx-ddk-kmGPU初始化uio-module-drvmmap、中断等上层应用接口调用编译extra驱动进入Linux Processer 执行如下命令打开Makefile文件,分别将cryptodev、ti-sgx-ddk-km、uio-module-drv驱动所在位置的linux字符串删除,修改完成后保存。 Host# sudo make cryptodev图 36Host# sudo make uio-module-drv图 37Host# sudo make ti-sgx-ddk-km图 38安装extra Host# sudo make cryptodev_installHost# sudo make uio-module-drv_installHost# sudo make ti-sgx-ddk-km_install
关于SGXRay Intel SGX采用基于应键的内存加密技术来保护独立应用程序逻辑和敏感数据。 SGXRay是一种基于SMACK验证器的自动推理工具,可以帮助广大研究人员自动检测SGX安全漏洞。 目前,SGXRay基于两个SGX SDK实现其功能,即Intel SGX SDK和OpenInclave SDK,用户可以选择使用SDK代码来进行更加详细的安全分析。 针对第一步,我们为每一个SDK都提供了对应的Docker镜像: docker pull baiduxlab/sgx-ray-frontend-intel docker pull baiduxlab/sgx-ray-frontend-oe -w /sgx --user $UID baiduxlab/sgx-ray-distro (向右滑动,查看更多) 在容器中,你将能够直接调用SGXRay的命令行接口“sgx-ray”。
可信执行环境(TEE),如Intel的软件守卫扩展(SGX),已被广泛研究,以提高计算敏感数据(如人类基因组学)的安全性和隐私保护。然而,SGX经常会产生性能障碍,尤其是在小内存空间中。 在本文中,我们提出了一个新的混合安全流框架(称为“HySec-Flow”),用于使用SGX平台进行大规模基因组数据分析。 我们使用一个支持SGX- en支持的容器的索引、对齐、调度和合并执行的工作流来说明我们的贡献。 However, a performance hurdle is often generated by SGX, especially from the small enclave memory. hysc - flow-基于sgx大数据分析框架的隐私保护基因组计算.pdf
2019年8月,Linux基金会联合国内外科技巨头宣布成立“机密计算联盟”(Confidential Computing Consortium),标志着机密计算在工业界的进一步发展和壮大。 Intel SGX技术简介 Intel的SGX技术通过CPU的硬件扩展,允许应用程序创建一个叫Enclave的安全容器,并将敏感数据和代码放到该容器中。 SGX应用的工作原理可以由下图说明。 邵乐希在剑桥大学获得本科和硕士学位,曾任华为Linux内核工程师。 参考资料 1、Everest Group. Graphene-SGX: a practical library OS for unmodified applications on SGX.
两个独立的学术研究团队在周三发表了描述英特尔软件卫士扩展(SGX)中缺陷的论文。 研究人员攻击了由Intel提供并签名的SGX体系结构飞地,并检索了用于通过网络加密证明这些飞地是真实的秘密证明密钥,这使他们能够将假飞地冒充为真实飞地。 他们补充道:“我们还发现,再次应用这些攻击来破坏在英特尔安全的SGX飞地中运行的代码几乎是微不足道的。” 研究人员写道:“即使是最近的英特尔CPU——包括公共云提供商用来支持SGX飞地的CPU——也容易受到这些攻击。”。 SGAxe: How SGX Fails in Practice describes compromises to long-term storage.
GMA3600 0x0be1 Cedarview, SGX545 GMA3600 0x0be2 Cedarview, SGX545 GMA3600 0x0be3 Cedarview, SGX545 GMA3600 0x0be4 Cedarview, SGX545 GMA3600 0x0be5 Cedarview, SGX545 GMA3600 0x0be6 Cedarview, SGX545 GMA3600 0x0be7 Cedarview, SGX545 GMA3600 0x0be8 Cedarview, SGX545 GMA3600 0x0be9 Cedarview, SGX545 GMA3600 0x0bea Cedarview, SGX545 GMA3600 0x0beb Cedarview, SGX545 GMA3600 0x0bec Cedarview, SGX545 GMA3600 0x0bed Cedarview, SGX545 GMA3600 0x0bee Cedarview, SGX545 GMA3600 0x0bef Cedarview, SGX545
扫码关注腾讯云开发者
领取腾讯云代金券