「百度安全」MesaTEE通用安全计算 | WitAwards 2019“年度开源项目”参评巡礼 – 作者:FB独家

背景

大数据分析、机器学习、云/边缘计算和区块链等新兴技术正在以前所未有的速度带动社会的发展,但同时也带来了各种新的隐私和安全问题:在公有云和区块链上,医疗健康和财务记录等敏感数据可能会被不可信的程序分析处理,造成隐私泄露;在机构内数据交换时,不同类别机密信息可能跨越合规许可边界,落入恶意使用者之手;离岸数据供应链中各种隐私失控事件也层出不穷,给各家企业造成了经济、法律和名誉的冲击。

除了数据隐私,机器学习模型本身的保护也亟待解决——模型一旦泄露,攻击者可以盗用知识产权,或利用模型的弱点轻松发起白盒攻击。想象一下如果我们的自动驾驶模型或者智能安防模型的弱点被攻击者掌握,后果让人不寒而栗。

shutterstock-478206340.jpg

面对所有这些风险情景,我们迫切需要一种可信赖且安全的机制,保障商业过程中的数据安全可控,使我们能够在不完全可信的环境中依然能确保隐私数据和计算模型不被泄漏或滥用,同时最大程度的提供功能、性能、兼容性和灵活性的支持。

百度安全MesaTEE正是基于这些出发点进行的设计与研发,通过提供完整的“通用安全计算”软件栈(Universal Secure Computing, USC),帮助大数据和AI产业提供下一代数据隐私和安全解决方案。

T1.jpg

(图1)

如上图所示,MesaTEE通过提供可信且安全的隔离执行计算环境,重新定义了未来的大数据商业模式。即使客户端和服务/平台提供商不完全相互信任,也可以有效地保护数据或模型的机密性和完整性。同时,MesaTEE大大简化了可信计算基础(TCB)、信任边界、和信任模型复杂度,让整个软件栈的审计和验证变得实际可操作。

六大技术特点

1.混合内存安全

“MesaTEE”源自“Memory Safe TEE”。虽然各类硬件TEE(例如Intel SGX)已经提供了强大的可信安全计算基础,他们并不保证里面运行软件的内存安全性。诸如use after free、double free、buffer overflow等内存安全问题为攻击者提供了侵入TEE的可乘之机。传统的形式化验证方案可缓解这一问题,但极为耗费时间和人力,例如最经典的seL4验证,至少需要消耗8人年——而且任何改动都要再花同样量级的开销来重新验证。这对需要不停往前迭代、增删功能的实际软件栈而言是很难接受的。

因此,通过Rust这样的内存安全编程语言重构系统成为了更为实际的选择。这种编译时即保证内存安全的方案省去了运行时检查内存安全问题的烦恼,增量迭代时也能延续内存安全特性,省却了昂贵的形式化证明。同时,由于绝大多数检查发生在编译时,运行时极为高效,并不会牺牲性能(Rust性能和C/C++基本无异)。

不过,完全将所有组件用Rust重写也不是简单的任务。很多时候Rust开发的内存安全的组件需要和C/C++等非内存安全组件并存。因此MesaTEE努力遵循以下混合内存安全三原则:

1、隔离并模块化由非内存安全代码编写的组件,并最小化其代码量。

2、由非内存安全代码编写的组件不应减弱安全模块的安全性,尤其是公共 API 和公共数据结构。

3、由非内存安全代码编写的组件需清晰可辨识并且易于更新。

2.易审计且不可绕过检查

内存安全一旦有所保障,程序的控制流和数据流便有了完整性保障基础。在此基础上,MesaTEE采用了“不可绕过范式”(Non-bypassable Security Paradigm),约束所有控制流和数据流必须经过关键检查点,显著减轻了审计和访问控制的难度,极大缩小了攻击面,归约了访问控制策略的部署,也让以此为基础的安全形式化验证变得实际可行。

3.加密隔离和远程验证

传统云计算和区块链无法保证数据和代码的完整性和保密性,这也成为了不少用户应用采纳这些方案的阻碍。MesaTEE很好地解决了这一难题。通过利用包括Intel SGX在内的TEE,安全地将云用户的数据和代码执行隔离、加密起来,即使云计算环境里的操作系统、虚拟机管理器(VMM/hypervisor)、或相邻的其他虚拟机被攻破或作恶,这些数据代码的完整性和保密性都能得到保障。用户也可以通过远程地验证执行环境,确保远程执行的代码是否符合预期。值得注意的是,MesaTEE将远程验证直接融入在了端到端加密通信里,在建立加密数据传输通道的同时,确保传输目的地即是期望的环境。结合前述内存安全和不可绕过检查,MesaTEE从外至内、由硬到软,将攻击者突防的可能性缩小到极限,而且保证了数据一旦离手,无论传输、远程计算、远程存储,一直得到可验证的隔离与加密保护。

4.安全等级灵活选择

MesaTEE兼容包括TPM、Intel SGX/MKTME、AMD SEV/SME、ARM TrustZone、乃至Risc-V Keystone、FPGA等广泛的TEE平台。这一方面提供了广谱的运行环境支持,也能为不同安全等级需求的场景提供不同宽松度的硬件依赖要求。特别地,MesaTEE划分了五个档次的安全支持等级,如下图所示:

T2.jpg

(图2)

Level 1:没有信任和安全保护的传统模式。

Level 2:完全基于软件(SoftTrust)建立信任,通过环境因子采集度量、白盒加密隐藏密钥、反调试、混淆等方案提供软件级的强对抗能力。通过MesaLock Linux(用Rust/Go等内存安全语言重构用户空间、缩小内核攻击面的Linux发行版)和不可绕过的强访问控制(Non-bypassable Gateway,缩写NBGW)相结合,可以进一步增强安全性。

Level 3:增加安全可信的启动链验证(例如基于TPM、TrustZone的安全启动)。用户同样可以增加MesaLock Linux和NBGW来增强动态安全性。对于多租户场景,可以在轻量级安全hypervisor(例如Kata Containers)的帮助下提供更进一步的隔离。

Level 4:进一步通过物理内存自动加密(Intel MKTME或AMD SEV),抵御冷启动攻击(cold boot attack)和大多数基于软件的攻击。

Level 5:利用多重远程验证(Remote Attestation)及Secure Enclave技术(如Intel SGX)提供极强的隔离和加密。MesaTEE通过嵌套TPM和MesaLock Linux,以确保外部操作系统也是可靠和安全的,抵御针对Enclave技术的侧信道攻击(side channel attack)。

5.函数即服务

MesaTEE为各类TEE平台提供了统一的“函数即服务”(Function as a Service,缩写FaaS)抽象API,开发者可以轻松地开发可迁移的TEE程序;在此基础上,MesaTEE还封装了一层WebAssembly/Python抽象层,让开发门槛和成本进一步降低,提升了开发灵活度。不仅如此,MesaTEE还预置了大部分常见计算模型,对于加解密、证书管理、隐私保护的集合操作、线性回归、GBDT、深度学习等等众多大数据分析和机器学习场景,直接调用MesaTEE已经提供好的接口即可胜任。

6.优异的性能

MesaTEE的性能表现也非常出色,举例如下(以下性能数据采集自Intel NUC8I7HVK Mini PC,测试均发生在MesaTEE最高安全级Intel SGX模式下,数据和计算始终隔离且加密):

(1)TCP之上的额外turn-around开销缩小到了极致,仅为3ms。这里面已经包含了加密通道的秘钥协商、数据加解密、远程验证、负载均衡分配等操作。

(2)每秒可以执行1万次RSA签名,或者500万次AES加解密。相比之下,某传统HSM只能达到每秒1200次RSA签名,或者2000次AES加解密。

(3)在10万条数据上测试GBDT预测,MesaTEE SGX可比单线程XGBoost快4倍。

(4)运行ResNet 50神经网络模型与没有MesaTEE SGX保护下相比,仅增加了20%的时间开销。

四大应用方向

1.区块链和云服务

除了单独提供安全计算服务,MesaTEE也非常适合在区块链和云计算的场景下提供通用安全计算应用。如图所示(图3),在MesaTEE保护下,我们可以跨越不同的网络环境构建区块链,从而安全地利用各种计算资源。无论数据何时流入,无论何时处理数据,无论底层平台如何,数据所有者始终可以确保机密性和完整性保护。如此一来,数据隐私和完整性等区块链和云计算用户的痛点都得到了妥善解决。

T3.jpg

(图3)

2.安全多方计算

T4.jpg

(图4)

如图所示(图4):在跨部门或跨公司数据协作场景,相互间的隐私需求是协作的首要条件,安全多方计算(SMC)因而变得越来越重要。传统的基于密码学的SMC有诸多局限性,而使用MesaTEE完成的安全多方计算则提供了最佳解决方案:

1.基于密码学的SMC场景一旦开始运行,计算成员和算法已经确定,很难动态变化和修改,缺少灵活性;MesaTEE直接在保护环境中对明文进行可信和安全的计算,因此不会施加这种限制。

2.基于密码学的SMC场景需要每个参与方两两互信并进行数据交互,导致很大的延迟和吞吐开销;MesaTEE用可信节点替代多方互信,计算参与者只需与中央可信节点交换数据即可,极大消除了不必要的通信,大大提高效率和性能。

T5.jpg

(图5)

为了全面展示MesaTEE的性能优势,我们和一些高性能的传统PSI(Private Set Intersection)算法做了性能对比。从图5中我们可以看到,MesaTEE PSI 比目前最快的传统PSI 方案还要快60 倍以上。而且,MesaTEE PSI 可以做分布式并行流式求交。这样性能差距还会进一步拉大。MesaTEE PSI 可以自由的从2方求交、3方求交扩展到任意多方求交,而且代价基本不变。事实上,参与者越多,要分析的数据集越大,与传统方法相比,MesaTEE PSI 会显示出更大的性能优势,还可以解决传统PSI 无法完成的复杂计算场景问题

3.安全Key Vault和HSM

MesaTEE原生提供了高安全等级的秘钥保护和加解密操作,可以提供类比传统Key Vault和HSM的功能,安全地存储和控制对密钥/证书的访问。前面提到MesaTEE即便在SGX里也可以做到每秒1万次RSA签名,或者500万次AES加解密,远胜一些传统HSM。

4. AI模型保护

T6.jpg

(图6)

MesaTEE已经在所有安全级别(包括Level 5的Intel SGX)中支持了GBDT,线性回归以及神经网络。特别地,主流的AI框架(例如Tensorflow,Caffe等)生成的CNN / RNN模型都可以方便地转换并加载到MesaTEE里,以保护模型和数据不受恶意攻击的影响,并且可以同时支持模型推理和训练。

性能对于AI应用程序至关重要,因此MesaTEE还进行了大量优化以提高AI模型的执行效率。如图所示(图6)在MesaTEE最高安全等级(Intel SGX)中运行ResNet 50与在正常情况下运行相比的时间消耗——仅增加了20%的开销。通过这一点有限的额外开销,没有任何其他安全解决方案可以提供与MesaTEE同等级的机密性和完整性保障。

强大的开放生态

百度和Intel在2018年联手公布MesaTEE时提到:“Intel SGX是自通用计算机出现以来系统安全领域最重要的硬件技术架构变革之一,通过极大的缩短信任链使得网络空间的信任依赖变得安全可靠;而百度安全首创的Hybrid Memory Safety技术则是第一次在软件架构上保障了实用系统的内存安全。MesaTEE SGX是两者的结合,将大大延展互联网业务的信任边界,是云隐私计算、隐私机器学习、下一代区块链等多种新型互联网业务的基石,对于AI时代的云服务有着战略性意义。”

目前,MesaTEE已全票通过投票,正式成为Apache基金会的孵化器项目。旨在通过开源开放推动通用安全计算生态发展,为大数据和AI带来的技术生产力革命提供信任保障的基础支持,充分解决跨单位之间的数据交换或多方计算,让金融、账号、医疗等敏感业务享受到隐私保护的区块链/云服务,为无人驾驶等与生命财产息息相关的业务保驾护航。MesaTEE目前已经和主流云计算/区块链/芯片厂商以及高校/研究机构深入合作,综合推进硬件TEE、软件内存安全、和应用丰富强大的计算服务,打造国际安全且灵活通用的安全计算服务框架。MesaTEE的开源将极大的加速下一代大数据商业应用的发展,对于推动AI业务在各行各业中落地也有着重要意义。

总结

随着今天全球对隐私安全的格外关注以及国家政策对个人信息数据和数据出入境的法律制定明确与完善。MesaTEE作为全球首个通用安全计算平台。它为应对安全和隐私有强诉求的场景提供了下一代通用安全计算能力,让敏感数据即便在企业外环境和离岸场景下也能安全可控的流通和处理,而不会被泄漏或者滥用。使得MesaTEE可以为大数据和AI产业提供下一代数据隐私和安全解决方案。

评委点评

金湘宇 Sec-UN网站创始人/威胁情报推进联盟发起人:

当前对于数据安全和隐私保护的合规性要求日渐提升,黑产、滥用等对用户隐私的威胁也越来越大,如何对用户隐私进行保护、对数据安全可控已经成为广泛的需求。而当今深处大数据时代,数据的共享交换、数据的价值挖掘的诉求已不可阻挡,尤其是AI相关产业,对数据在商业过程中的全过程受控提出了迫切的需求。目前数据安全领域创新技术也快速出现、趋于成熟,可信计算、同态加密、行为分析等已经被越来越多的用户接受和采用。百度MesaTEE正是应运而生的一个创新性的通用计算平台,其基于百度对于云计算的丰富积累和对大数据安全需求的深度认识,是传统密码学和云计算技术的完美结合。尤其难能可贵的是,居然还是个开源项目。百度安全MesaTEE通用计算是今年WitAwards我最推荐的项目之一,推荐大家关注。

惠志斌 上海社会科学院互联网研究中心主任/赛博研究院首席研究员

百度MesaTEE通用安全计算通过提供完整的“通用安全计算”软件栈,帮助大数据和AI产业提供下一代数据隐私和安全解决方案,让敏感数据即便在企业外环境和离岸场景下也能安全可控的流通和处理。该技术可以应用于区块链和云服务、安全多方计算、AI模型保护等前沿领域,并具有强大的开放生态,技术思想较为领先,值得业界重点关注。

WITAwards 2019 颁奖盛典 |  CIS 2019 网络安全创新大会即将揭晓

「WitAwards中国网络安全创新年度评选」由国内信息安全新媒体领导者FreeBuf主办,已连续举办四届,自 2016 年举办以来一直饱受赞誉,是业内广受关注的网络安全创新大奖评选。评选周期历时3个多月,将邀请网络安全顶尖行业专家、权威业界媒体、甲方企业安全负责人以及广大安全从业者共同参与甄选,颁奖盛典将在「CIS 2019网络安全创新大会」隆重举行。

本次WIT评选分为「线上报名」、「甲方评委报名」、「大众投票」、「甲方投票」、「评委主席投票」、「现场观众投票及颁奖」六个阶段。

微信图片_20191012132820.png

除年度保障力量外的5大奖项将根据大众投票(15%),甲方投票(30%)、评委主席投票(40%)、现场观众投票(15%)决定归属。最终获奖名单将在「CIS 2019网络安全创新大会」上现场评出并进行颁奖。「WIT2019评选官网」。

wit文章里面的奖项_画板 1 副本 3.jpg

WitAwards 2019年度中国网络安全创新年度评选,旨在发掘全年卓越的安全产品和杰出人物,给予在2019年为安全行业做出贡献的个人、团队及产品以掌声和肯定!

来源:freebuf.com 2019-10-25 18:57:30 by: FB独家

© 版权声明
THE END
喜欢就支持一下吧
点赞0
分享
评论 抢沙发

请登录后发表评论