Abstract
Designing efficient branch predictors has always been one of the top priority research tasks in computer architecture. In an embedded processor with support for multi-threaded execution, with multiple different applications executing in different threads, and managed by a single predictor, significant inter-application interference due to sharing of predictor data structures has been acknowledged to be a serious concern. In this paper, we show an attack methodology which exploits these shared structures for performance attacks on a benign application. In particular, we propose a methodology for creating a variant of a benign application, which when dispatched in a concurrently executing thread, can definitively slow down the performance of the benign one. We report the effect of such attacks with experiments on the Siemens software benchmarks.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
Acıiçmez, O., et al.: New branch prediction vulnerabilities in OpenSSL and necessary software countermeasures. In: IMA, pp. 185–203 (2007)
Binkert, N., et al.: The gem5 simulator. ACM SIGARCH Comput. Architect. News 39(2), 1–7 (2011)
Das, M., Sardar, B., Banerjee, A.: Attacks on branch predictors: an empirical exploration. In: Jajodia, S., Mazumdar, C. (eds.) ICISS 2015. LNCS, vol. 9478, pp. 511–520. Springer, Cham (2015). https://doi.org/10.1007/978-3-319-26961-0_30
Das, M., et al.: Attacks on hybrid branch predictors: an empirical exploration. In: CCSN, pp. 139–140 (2016)
Do, H., et al.: Supporting controlled experimentation with testing techniques: an infrastructure and its potential impact. Empir. Softw. Engg. 10(4), 405–435 (2005)
Eggers, S.J., et al.: Simultaneous multithreading: a platform for next-generation processors. IEEE micro 17(5), 12–19 (1997)
Evtyushkin, D., et al.: Understanding and mitigating covert channels through branch predictors. TACO 13(1), 10 (2016)
Fog, A.: The microarchitecture of Intel, AMD and VIA CPUs. An Optimization Guide for Assembly Programmers and Compiler Makers. Copenhagen University College of Engineering (2011)
Henning, J.L.: SPEC CPU2006 benchmark descriptions. ACM SIGARCH Comput Architect. News 34(4), 1–17 (2006)
McFarling, S.: Combining Branch Predictors. Technical Report, TN-36 (1993)
Ramsay, M., et al.: Exploring efficient SMT branch predictor design. In: ISCA, vol. 26 (2003)
Tasher, N., et al.: Protection against side-channel attacks on non-volatile memory. U.S. Patent 9,343,162, 17 May 2016
Tullsen, D.M., et al.: Simultaneous multithreading: maximizing on-chip parallelism. In: ACM SIGARCH Computer Architecture News, vol. 23, pp. 392–403. ACM (1995)
Acknowledgement
This work was partially funded by a research grant from Defence Research and Development Organization, Government of India awarded to Indian Statistical Institute. The authors would like to thank Prof. Sandeep Shukla and Prof. Mainak Chaudhuri of IIT Kanpur for their suggestions on this work.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2017 Springer International Publishing AG
About this paper
Cite this paper
Das, M., Banerjee, A., Singh, N.K., Sardar, B. (2017). Performance Attacks on Branch Predictors in Embedded Processors with SMT Support. In: Shyamasundar, R., Singh, V., Vaidya, J. (eds) Information Systems Security. ICISS 2017. Lecture Notes in Computer Science(), vol 10717. Springer, Cham. https://doi.org/10.1007/978-3-319-72598-7_19
Download citation
DOI: https://doi.org/10.1007/978-3-319-72598-7_19
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-72597-0
Online ISBN: 978-3-319-72598-7
eBook Packages: Computer ScienceComputer Science (R0)