摘要: |
云计算作为一种新兴计算模式,近几年来对传统IT架构产生了巨大影响。然而,云计算也面临着新的安全挑战,例如,存储在云虚拟机内存中口令、密钥等易受到云平台内部人员发起的攻击。恶意云运维人员可通过简单命令获取云虚拟机的内存快照,再从内存快照中提取敏感数据(称作内存快照攻击)。本文为保护虚拟机内的加密密钥免受内存快照攻击,提出HCoper方案,HCoper在CPU内部完成所有加密计算,保证密钥不被加载到RAM中。HCoper采用key-encryption-key结构实现密钥动态调度,以支持多应用多密钥场景。主密钥存储在CPU寄存器中,数据加密密钥由主密钥加密后存储在RAM中。HCoper执行加密计算时,数据加密密钥将被解密并直接加载到CPU寄存器进行加密计算。HCoper作为Xen的内核模块,可防止其他进程访问持有密钥的CPU寄存器。HCoper旨在为租户提供加密计算服务,同时保证密钥(即主密钥,数据加密密钥)不受内部恶意人员的攻击。实验结果表明,HCoper可有效地防御内部人员发起的内存快照攻击,其带来的性能开销不影响实用性。 |
关键词: 内存快照攻击 内部人员攻击 密钥保护 云计算 |
DOI:10.19363/J.cnki.cn10-1380/tn.2021.05.12 |
投稿时间:2019-05-31修订日期:2019-09-22 |
基金项目:本课题得到中国科学院网络测评技术重点实验室资助项目,网络安全防护技术北京市重点实验室资助项目,北京市科技计划课题(No.Z191100007119010),国家自然科学基金(No.61772078)资助。 |
|
A Method of Protecting Tenants’ Secret Keys against Insider Attacks |
HE Yun,JIA Xiaoqi,LIU Peng,ZHANG Weijuan |
Institute of Information Engineering, Chinese Academy of Science, Beijing 100093, China;School of Cyber Security, University of Chinese Academy of Science, Beijing 100049, China;Pennsylvania State University, Pennsylvania 16802, U.S. |
Abstract: |
Cloud computing has been seen as the next innovative computing model and has made a tremendous impact on the traditional Information Technology (IT) architecture over the past years. However, cloud computing also faces new security challenges. For example, the cryptographic keys or passwords in the guest VM’s memory are vulnerable to memory-based attacks (e.g., memory dump attacks) launched by malicious insiders. A rogue cloud operator can take a memory dump of the guest VMs by executing simple commands, then extracts sensitive data (e.g., plaintext of secret keys) from the memory dump files. In this paper, to protect the customer’s secret keys against memory dump attacks, we proposed an approach named HCoper, which implements all cryptographic computations entirely within the CPU, without any secret keys loaded into the RAM. HCoper is a key-encryption-key architecture performing dynamic scheduling of secret keys to support multiple keys for multiple applications. The master key is stored in CPU registers, the data-encryption keys are encrypted by the master key and then stored as cipher-text in the RAM. When HCoper is working, the data-encryption keys will be decrypted and then directly loaded into CPU registers for encryption computation. We implement HCoper as a kernel module of Xen to prevent other malicious processes from accessing the CPU registers that hold the master key or data-encryption keys. HCoper provides the tenants with cryptographic computation services that are secure against memory dump attacks launched by malicious insiders. Meanwhile, experiments demonstrate that our implementation of HCoper defends against insider threats effectively and it only introduces reasonable performance overhead. |
Key words: memory dump attacks insider attacks key protection cloud computing |