电子学报 ›› 2019, Vol. 47 ›› Issue (6): 1194-1200.DOI: 10.3969/j.issn.0372-2112.2019.06.002

• 学术论文 • 上一篇    下一篇

基于符号执行的软件缓存侧信道脆弱性检测技术

杨超, 郭云飞, 扈红超, 刘文彦, 霍树民, 王亚文   

  1. 国家数字交换系统工程技术研究中心, 河南郑州 450003
  • 收稿日期:2018-07-02 修回日期:2018-09-10 出版日期:2019-06-25 发布日期:2019-06-25
  • 通讯作者: 杨超
  • 作者简介:郭云飞 男,1963年出生于河南郑州.现为国家数字交换系统工程技术研究中心教授,博士生导师.主要研究方向为云安全,通信安全和网络安全.E-mail:gyf@mail.ndsc.com.cn;扈红超 男,1982年出生于河南商丘.现为国家数字交换系统工程技术研究中心副教授,硕士生导师.主要研究方向为云计算,软件定义网络和网络安全.E-mail:13633833568@139.com;刘文彦 男,1986年出生于河南省鹿邑县.现为国家数字交换系统工程技术研究中心讲师.主要研究方向为云计算,软件定义网络和网络安全.E-mail:lwyndsc@163.com;霍树民 男,1985年出生于山西长治.现为国家数字交换系统工程技术研究中心讲师.主要研究方向为云计算,软件定义网络和网络安全.E-mail:huoshumin123@163.com;王亚文 男,1990年出生于河南郑州.现为国家数字交换系统工程技术研究中心博士研究生.主要研究方向为云计算,入侵容忍和网络安全.E-mail:15738321455@163.com
  • 基金资助:
    国家自然科学基金创新群体项目(No.61521003);国家自然科学基金项目(No.61602509);国家重点研发计划项目(No.2016YFB0800100,No.2016YFB0800101);河南省科技攻关计划项目(No.172102210615)

Cache-Based Side-Channel Vulnerability Detection Based on Symbolic Execution

YANG Chao, GUO Yun-fei, HU Hong-chao, LIU Wen-yan, HUO Shu-min, WANG Ya-wen   

  1. National Digital Switching System Engineering & Technological Research Center, Zhengzhou, Henan 450003, China
  • Received:2018-07-02 Revised:2018-09-10 Online:2019-06-25 Published:2019-06-25

摘要: 缓存侧信道攻击的基础是程序针对不同敏感信息将访问不同的缓存地址.本文提出基于符号执行的缓存侧信道脆弱性检测技术,通过符号化敏感信息的数据传播过程定位潜在的脆弱点,并通过比较其可能的不同缓存访问地址,判断上述代码在缓存攻击中的可利用性.本文开发了原型系统CSCVulDiscover,并针对RSA等3种密码算法的12类实现代码进行测试,总共发现了125个脆弱点.

关键词: 缓存侧信道攻击, 符号执行, 脆弱性检测, 差分缓存访问, 污点分析, 数据传播, 脆弱点, 可利用性

Abstract: The root cause of cache-based side-channel attacks is that the application will access different cache memory depending on different values of sensitive information.This paper proposes a symbolic-execution-based vulnerability detection technology to identify the code in an application that can be exploited in cache attacks.It analyzes program's data propagation of symbolized sensitive information to locate candidate vulnerabilities,and determines the exploitability through comparison of different possible accessed cache addresses.A prototype system called CSCVulDiscover is developed and tested against 12 kinds of implementation of 3 popular cryptographic algorithms including RSA,and the result shows that 125 vulnerabilities are detected.

Key words: cache-based side-channel attack, vulnerability detection, symbolic execution, differential cache access, taint analysis, data propagation, vulnerabilities, exploitability

中图分类号: