SoK: The Challenges, Pitfalls, and Perils of Using Hardware Performance Counters for Security

被引:78
|
作者
Das, Sanjeev [1 ]
Werner, Jan [1 ]
Antonakakis, Manos [2 ]
Polychronakis, Michalis [3 ]
Monrose, Fabian [1 ]
机构
[1] Univ N Carolina, Chapel Hill, NC 27515 USA
[2] Georgia Inst Technol, Atlanta, GA 30332 USA
[3] SUNY Stony Brook, Stony Brook, NY 11794 USA
基金
美国国家科学基金会;
关键词
Hardware Performance Counters; Malware Detection; Exploit Defense; Non-determinism; EFFICIENT;
D O I
10.1109/SP.2019.00021
中图分类号
TP301 [理论、方法];
学科分类号
081202 ;
摘要
Hardware Performance Counters (HPCs) have been available in processors for more than a decade. These counters can be used to monitor and measure events that occur at the CPU level. Modern processors provide hundreds of hardware events that can be monitored, and with each new processor architecture more are added. Yet, there has been little in the way of systematic studies on how performance counters can best be utilized to accurately monitor events in real-world settings. Especially when it comes to the use of HPCs for security applications, measurement imprecisions or incorrect assumptions regarding the measured values can undermine the offered protection. To shed light on this issue, we embarked on a year-long effort to (i) study the best practices for obtaining accurate measurement of events using performance counters, (ii) understand the challenges and pitfalls of using HPCs in various settings, and (iii) explore ways to obtain consistent and accurate measurements across different settings and architectures. Additionally, we then empirically evaluated the way HPCs have been used throughout a wide variety of papers. Not wanting to stop there, we explored whether these widely used techniques are in fact obtaining performance counter data correctly. As part of that assessment, we (iv) extended the seminal work of Weaver and McKee from almost 10 years ago on non-determinism in HPCs, and applied our findings to 56 papers across various application domains. In that follow-up study, we found the acceptance of HPCs in security applications is in stark contrast to other application areas - especially in the last five years. Given that, we studied an additional representative set of 41 works from the security literature that rely on HPCs, to better elucidate how the intricacies we discovered can impact the soundness and correctness of their approaches and conclusions. Toward that goal, we (i) empirically evaluated how failure to accommodate for various subtleties in the use of HPCs can undermine the effectiveness of security applications, specifically in the case of exploit prevention and malware detection. Lastly, we showed how (ii) an adversary can manipulate HPCs to bypass certain security defenses.
引用
收藏
页码:20 / 38
页数:19
相关论文
共 50 条
  • [1] Why We Need a Theory of Maliciousness: Hardware Performance Counters in Security
    Botacin, Marcus
    Gregio, Andre
    INFORMATION SECURITY, ISC 2022, 2022, 13640 : 381 - 389
  • [2] On the Performance of Malware Detection Classifiers Using Hardware Performance Counters
    Zeraatkar, Alireza Abolhasani
    Kamran, Parnian Shabani
    Kaur, Inderpreet
    Ramu, Nagabindu
    Sheaves, Tyler
    Al-Asaad, Hussain
    2024 INTERNATIONAL CONFERENCE ON SMART APPLICATIONS, COMMUNICATIONS AND NETWORKING, SMARTNETS-2024, 2024,
  • [3] Benefits and Challenges of Utilizing Hardware Performance Counters for COPPA Violation Detection
    Kuruvila, Abraham Peedikayil
    Arunachalam, Ayush
    Basu, Kanad
    PROCEEDINGS OF THE 2020 IEEE INTERNATIONAL CONFERENCE ON PHYSICAL ASSURANCE AND INSPECTION ON ELECTRONICS (PAINE), 2020,
  • [4] Detecting Spectre Attacks Using Hardware Performance Counters
    Li, Congmiao
    Gaudiot, Jean-Luc
    IEEE TRANSACTIONS ON COMPUTERS, 2022, 71 (06) : 1320 - 1331
  • [5] OpenMP application tuning using hardware performance counters
    Smeds, N
    OPENMP SHARED MEMORY PARALLEL PROGRAMMING, 2003, 2716 : 260 - 270
  • [6] Exploiting hardware performance counters
    Uhsadel, Leif
    Georges, Andy
    Verbauwhede, Ingrid
    FDTC 2008: FAULT DIAGNOSIS AND TOLERANCE IN CRYPTOGRAPHY, PROCEEDINGS, 2008, : 59 - +
  • [7] Using Hardware Performance Counters to Detect Control Hijacking Attacks
    Yu, Miao
    Halak, Basel
    Zwolinski, Mark
    2019 IEEE 4TH INTERNATIONAL VERIFICATION AND SECURITY WORKSHOP (IVSW 2019), 2019, : 1 - 6
  • [8] Using Hardware Performance Counters to support infield GPU Testing
    Guerrero-Balaguera, Juan-David
    Condia, Josie E. Rodriguez
    Reorda, Matteo Sonza
    2021 28TH IEEE INTERNATIONAL CONFERENCE ON ELECTRONICS, CIRCUITS, AND SYSTEMS (IEEE ICECS 2021), 2021,
  • [9] System execution path profiling using hardware performance counters
    Giraldeau, Francis
    Ezzati-Jivan, Naser
    Dagenais, Michel R.
    2021 15TH ANNUAL IEEE INTERNATIONAL SYSTEMS CONFERENCE (SYSCON 2021), 2021,
  • [10] Can Hardware Performance Counters be Trusted?
    Weaver, Vincent M.
    Mckee, Sally A.
    2008 IEEE INTERNATIONAL SYMPOSIUM ON WORKLOAD CHARACTERIZATION, 2008, : 131 - 140