南科大张殷乾、张锋巍团队联合在机密计算方向取得多项研究成果
2022年11月04日 科研新闻

       近日,南方科技大学计算机科学与工程系、斯发基斯可信自主系统研究院信息安全研究中心教授张殷乾、张锋巍的研究团队在机密计算研究领域取得突破进展,以南科大为第一单位在国际计算机安全学术顶级会议上(IEEE Symposium on Security and Privacy , ACM Conference on Computer and Communications Security, Usenix Security Symposium)发表了多篇重量级文章,合作单位包括杜克大学,香港科技大学,乔治梅森大学,俄亥俄州立大学, 香港理工大学,新加坡管理大学,湖南大学,范德堡大学,广州大学以及蚂蚁集团等国内外科研机构。研究成果涵盖分布式机密计算安全框架,GPU可信执行环境,以及针对机密计算的安全分析与防护的关键技术。

微信图片_20221115105130.jpg

分布式机密计算安全框架。拜占庭容错(BFT)是具有高可靠性的分布式协议,在区块链和分布式文件系统中有重要应用,但是其性能瓶颈和低可扩展性一直制约着它的应用。相比之下,崩溃容错协议(CFT)虽然具有更好的性能,但是其对分布式系统可能出现的错误仅限于系统崩溃,不支持区块链等去中心化信任架构下的应用。团队实现了机密计算与分布式系统的结合,利用可信执行环境(TEE)对代码完整性的保护,用高效的CFT协议实现了高安全性的BFT容错。然而,简单的CFT与TEE的融合并不等于BFT。研究团队首次尝试使用模型检测(modelchecking)这一形式化验证方法来检查“CFT+TEE=BFT”这一假设的正确性,并且发现了基于TEE的Raft协议的安全性(safety)和活性(liveness)漏洞。这是模型检验在Raft协议上的首次成功应用。基于模型检验结果,团队设计了ENGRAFT系统,第一个基于TEE的Raft安全实现。ENGRAFT包含TIKS(Trustworthy distributed In-memory Key-value Storage)(图1)和MLD(Malicious Leader Detector)两套子系统,对Raft协议在可信执行环境中的安全性和活性漏洞进行了修复。ENGRAFT系统的提出为安全的“CFT+TEE”设计范式提供了参考,可作为联盟链的底层共识算法使用。上述工作以“ENGRAFT: Enclave-guarded Raft on Byzantine Faulty Nodes”为题,发表在国际安全顶会ACM Conference on Computer and Communications Security(ACM CCS 2022)上。

研究团队在分布式机密计算安全框架方向的另一项工作是利用分布式系统来保证机密计算系统免受分叉攻击与回滚攻击。目前许多公有云平台如阿里云、微软云都采用可信执行环境技术如Intel SGX,AMD SEV等为用户应用提供机密计算服务。但是,运行在云上可信执行环境内部的应用仍然面临着状态回滚和分叉攻击威胁,进而导致程序的状态连续遭到破坏。比如,在一个支付应用中,如果用户交易状态能够发生混滚,就会使得用户可以使用账户余额进行多次支付,这也被称为双花攻击。已有的可信执行环境状态连续性保护方案存在严重的性能瓶颈和较强的安全假设,无法用于云上可信执行环境的状态连续性保护。针对上述问题,团队提出了一种安全的云上可信执行环境状态连续性保护框架(Narrator)。Narrator构架(图2)有两个关键的设计:1)基于区块链等去中心化系统去初始化云上提供状态连续性保护的系统,保证该系统可以抵抗状态分叉攻击;2)设计和实现一个分布式系统的安全存储,能够为用户受保护的应用提供高效的状态连续性服务,进而抵御状态回滚攻击。上述工作以“Narrator: Secure and Practical State Continuity forTrusted Execution in the Cloud”为题,发表在ACM Conference on Computer and Communications Security(ACM CCS 2022)上。

图1.png

图1:TIKS消息交互示意图

图2.jpg

图2:Narrator系统框架

GPU可信执行环境。为了满足急剧增加的计算性能需求,当前服务器和边缘端设备主要使用GPU去处理若干高性能计算,例如神经网络训练和推理、3D游戏等。然而,由于当前GPU完全受控于操作系统,并且现在的Linux等操作系统存在较多漏洞。一旦攻击者攻破该操作系统,就可以直接威胁GPU中处理的数据。因此,现在的服务器和边缘端亟需为GPU构建可信执行环境来确保数据安全。而当前的GPU TEE主要基于x86架构,并在含有独立显存的GPU上(如NVIDIA)部署,它们可以利用GPU的硬件隔离来确保计算安全。但边缘端GPU(如Arm Mali)需要与系统共享内存,也没有这样的硬件隔离,这意味着需要用更严格的防御机制来保护边缘端GPU的计算。此外,当前GPU TEE的设计主要依赖于x86的硬件特性(如Intel SGX)以及硬件改动,难以直接移植到以Arm架构为主的边缘端设备上。基于上述问题,团队提出了一种Arm边缘端设备上的GPU TEE——StrongBox。StrongBox是国内首个轻量化的GPU TEE,它复用操作系统中的GPU驱动来执行内存资源分配、计算调度等不需要直接访问数据的操作,而将代码量较小的、用于安全验证的组件(图3左侧的GPU Guard和Task Protector)部署在可信执行环境中(图3左侧的EL3)。同时,StrongBox利用Arm架构的硬件特性(如图3右侧的S-2地址转换和TZASC)制定了对GPU计算的精密保护,但不需要修改当前硬件,具有较好的兼容性。实验结果表明,StrongBox以较小的性能开销为代价确保了GPU计算的安全性。 相关研究成果以“StrongBox: A GPU TEE on Arm Endpoints” 为题发表在ACM Conference on Computer and Communications Security(ACM CCS 2022)上。

图3.png

图3:StrongBox系统架构图

针对机密计算的安全分析与防护的关键技术。在云平台部署的诸多应用服务(如机器学习)普遍采用Intel SGX的硬件隔离机制来保护敏感数据和代码,达到安全计算的目的。但SGX技术仍然存在漏洞,并且用户难以通过常规的内存检测方法判断SGX保护内存的状态。其主要原因有1)SGX技术使用了硬件隔离并加密,来阻止外部程序访问受保护的区域(飞地);2)用户和飞地之间缺乏可信的验证通道。此外,其他攻击手段,如侧信道和重放攻击也阻碍用户的诊断。研究团队针对上述问题,提出了一种安全的飞地运行时内存自省方法(SMILE)。SMILE和SGX服务共同部署在基于x86架构的云平台中。SMILE通过平台硬件辅助特性--系统管理模式(SMM)增加自省代理,构建系统限制执行环境,并在飞地中引入内部自省模块,从而实现飞地内存运行时的可信自省功能(图4)。SMILE在自省过程中不破坏SGX自身的安全性,且自省代理不能获取飞地内的机密信息,因此不引入额外的安全风险。实验结果证明,SMILE可以在较小的性能开销下,实现了对飞地的自省,确保了结果的真实性。上述工作以“SMILE: Secure Memory Introspection for Live Enclave”为题发表在IEEE Symposium on Security and Privacy (S&P 2022)上。

研究团队在机密计算的安全分析与防护方向的另一项工作是提出了针对密文侧信道漏洞的自动化检测框架。 作为一种新型的侧信道攻击手段,近期提出的密文侧信道利用可信执行环境的确定性内存加密方式,对可信执行环境的安全性带来严重威胁。已经有研究表明,密文侧信道攻击在包括AMD SEV-SNP在内的几乎所有采用确定性内存加密模式的可信执行环境都上都能实现。针对此,团队提出一种针对密文侧信道的自动化检测框架(CipherH)。CipherH(图5)首先针对密文侧信道进行了定性的建模。定性建模采用符号约束,从攻击者的视角判断连续的内存写入操作是否会导致密文侧信道的发生。同时,基于定性模型,其设计并实现了自动化检测工具。具体来说,首先基于动态污点跟踪分析私密信息在程序中可能的传播路径,得到被“污染”的函数。之后,对这些函数进行过程内与过程间的符号执行,定位可能的漏洞程序点。该工作对三个主流的加密算法库进行了分析,发现了多个漏洞程序点,攻击者通过这些漏洞程序点能够成功发起密文侧信道攻击。这些发现已经报告给相应的开发社区,得到积极回复与确认,并收到署名致谢。同时,开发社区也采用了其所提出的软件防御方案来抵御密文侧信道威胁。上述工作以”CIPHERH: Automated Detection of Ciphertext Side-channel Vulnerabilities in Cryptographic Implementations”为题,发表在Usenix Security Symposium (Usenix Security 2023)上。

图4.png

图4:SMILE基于系统管理模式的限制执行环境设计 

图5.png

图5:针对密文侧信道的自动化检测框架

 

 

论文链接:

1. https://github.com/teecertlab/papers/tree/main/engraft 

2. https://github.com/teecertlab/papers/tree/main/Narrator 

3. https://fengweiz.github.io/paper/strongbox-ccs22.pdf 

4. https://cse.sustech.edu.cn/faculty/~zhangfw/paper/smile-sp22.pdf 

5. https://github.com/teecertlab/papers/tree/main/CipherH 

 

供稿:计算机科学与工程系

通讯员:潘伟英

主图:丘妍

编辑:朱增光


推荐阅读
查看更多 >>
FOLLOW US @SOCIAL MEDIA
关注社交媒体上的我们
  • 国家安全部官方微信

  • 南方科技大学微信

  • 南方科技大学视频号

  • 南方科技大学抖音号

  • 南方科技大学快手号

  • 南方科技大学头条号

  • 南方科技大学南方+