Detailed Tracking of Program Control Flow Using Analog Side-Channel Signals: A Promise for IoT Malware Detection and a Threat for Many Cryptographic Implementations

被引:15
作者
Khan, Haider Adnan [1 ]
Alam, Monjur [2 ]
Zajic, Alenka [1 ]
Prvulovic, Milos [2 ]
机构
[1] Georgia Inst Technol, Sch Elect & Comp Engn, Atlanta, GA 30332 USA
[2] Georgia Inst Technol, Sch Comp Sci, Atlanta, GA 30332 USA
来源
CYBER SENSING 2018 | 2018年 / 10630卷
关键词
cryptanalysis; side-channels; RSA; program execution monitoring; control-flow tracking; POWER ANALYSIS; ATTACKS;
D O I
10.1117/12.2304382
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
Side-channel signals have long been used in cryptanalysis, and recently they have also been utilized as a way to monitor program execution without involving the monitored system in its own monitoring. Both of these use-cases for side-channel analysis have seen steady improvement, allowing ever-smaller deviations in program behavior to be monitored (to track program behavior and/or identify anomalies) or exploited (to steal sensitive information). However, there is still very little intuition about where the limits for this are, e.g. whether a single-instruction or a single-bit difference can realistically be recovered from the signal. In this paper, we use a popular open-source cryptographic software package as a test subject to demonstrate that, with enough training data, enough signal bandwidth, and enough signal-to-noise ratio, the decision of branch instructions that cause even single-instruction-differences in program execution can be recovered from the electromagnetic (EM) emanations of an IoT/embedded system. We additionally show that, in cryptographic implementations where branch decisions contain information about the secret key, nearly all such information can be extracted from the signal that corresponds to only a single cryptographic operation (e.g. encryption). Finally, we analyze how the received signal bandwidth, the amount of training, and the signal-to-noise ratio (SNR) affect the accuracy of side-channel-based reconstruction of individual branch decisions that occur during program execution.
引用
收藏
页数:14
相关论文
共 37 条
[1]  
Agrawal D, 2002, LECT NOTES COMPUT SC, V2523, P29
[2]  
Agrawal Dakshi., 2003, RSA LAB CRYPTOBYTES, V6, P20
[3]  
[Anonymous], 2008, PROC 41 ANN HAWAII I, DOI [10.1109/HICSS.2008.319, DOI 10.1109/HICSS.2008.319]
[4]  
[Anonymous], 2007, P 2 ACM S INFORM COM, DOI DOI 10.1145/1229285.1266999
[5]  
[Anonymous], N9020A MXA SPECTR AN
[6]  
[Anonymous], A13 OL MICR MAN
[7]  
[Anonymous], 2003, COMPROMISING EMANATI
[8]  
[Anonymous], 2005, P BSDCAN
[9]  
ARM, ARM CORT A8 PROC MAN
[10]  
BACKES M., 2010, P USENIX SEC S