Comprehensive Kernel Instrumentation via Dynamic Binary Translation

被引:0
|
作者
Feiner, Peter [1 ]
Brown, Angela Demke [1 ]
Goel, Ashvin [1 ]
机构
[1] Univ Toronto, Toronto, ON M5S 1A1, Canada
基金
加拿大自然科学与工程研究理事会;
关键词
Design; Performance; Dynamic binary translation; operating system instrumentation; Linux; interrupts;
D O I
10.1145/2248487.2150992
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Dynamic binary translation (DBT) is a powerful technique that enables fine-grained monitoring and manipulation of an existing program binary. At the user level, it has been employed extensively to develop various analysis, bug-finding, and security tools. Such tools are currently not available for operating system (OS) binaries since no comprehensive DBT framework exists for the OS kernel. To address this problem, we have developed a DBT framework that runs as a Linux kernel module, based on the user-level DynamoRIO framework. Our approach is unique in that it controls all kernel execution, including interrupt and exception handlers and device drivers, enabling comprehensive instrumentation of the OS without imposing any overhead on user-level code. In this paper, we discuss the key challenges in designing and building an in-kernel DBT framework and how the design differs from user-space. We use our framework to build several sample instrumentations, including simple instruction counting as well as an implementation of shadow memory for the kernel. Using the shadow memory, we build a kernel stack overflow protection tool and a memory addressability checking tool. Qualitatively, the system is fast enough and stable enough to run the normal desktop workload of one of the authors for several weeks.
引用
收藏
页码:135 / 146
页数:12
相关论文
共 50 条
  • [1] Comprehensive Kernel Instrumentation via Dynamic Binary Translation
    Feiner, Peter
    Brown, Angela Demke
    Goel, Ashvin
    ASPLOS XVII: SEVENTEENTH INTERNATIONAL CONFERENCE ON ARCHITECTURAL SUPPORT FOR PROGRAMMING LANGUAGES AND OPERATING SYSTEMS, 2012, : 135 - 146
  • [2] Light-weight kernel instrumentation framework using dynamic binary translation
    Dongwoo Lee
    Inhyuk Kim
    Jeehong Kim
    Hyung Kook Jun
    Won Tae Kim
    Sangwon Lee
    Young Ik Eom
    The Journal of Supercomputing, 2013, 66 : 1613 - 1628
  • [3] Light-weight kernel instrumentation framework using dynamic binary translation
    Lee, Dongwoo
    Kim, Inhyuk
    Kim, Jeehong
    Jun, Hyung Kook
    Kim, Won Tae
    Lee, Sangwon
    Eom, Young Ik
    JOURNAL OF SUPERCOMPUTING, 2013, 66 (03): : 1613 - 1628
  • [4] Fast Dynamic Binary Translation for the Kernel
    Kedia, Piyus
    Bansal, Sorav
    SOSP'13: PROCEEDINGS OF THE TWENTY-FOURTH ACM SYMPOSIUM ON OPERATING SYSTEMS PRINCIPLES, 2013, : 101 - 115
  • [5] Dynamic Binary Translation and Instrumentation Based Function Call Tracing
    Lu S.
    Zhang M.
    Lin Z.
    Li H.
    Kuang X.
    Zhao G.
    Jisuanji Yanjiu yu Fazhan/Computer Research and Development, 2019, 56 (02): : 421 - 430
  • [6] Improving SIMD Parallelism via Dynamic Binary Translation
    Hong, Ding-Yong
    Liu, Yu-Ping
    Fu, Sheng-Yu
    Wu, Jan-Jan
    Hsu, Wei-Chung
    ACM TRANSACTIONS ON EMBEDDED COMPUTING SYSTEMS, 2018, 17 (03)
  • [7] Using dynamic kernel instrumentation for kernel and application tuning
    Tamches, A
    Miller, BP
    INTERNATIONAL JOURNAL OF HIGH PERFORMANCE COMPUTING APPLICATIONS, 1999, 13 (03): : 263 - 276
  • [8] Using dynamic kernel instrumentation for kernel and application tuning
    Tamches, Ariel
    Miller, Barton P.
    International Journal of High Performance Computing Applications, 13 (03): : 263 - 276
  • [9] MIRAGE : Randomizing Large Chunk Allocation Via Dynamic Binary Instrumentation
    Hu, Zhenghao
    Zhang, Yuanyuan
    Wang, Hui
    Li, Juanru
    Yang, Wenbo
    Gu, Dawu
    2017 IEEE CONFERENCE ON DEPENDABLE AND SECURE COMPUTING, 2017, : 98 - 106
  • [10] Enhancing Transactional Memory Execution via Dynamic Binary Translation
    Hong, Ding-Yong
    Lin, Shih-Kai
    Fu, Sheng-Yu
    Wu, Jan-Jan
    Hsu, Wei-Chung
    APPLIED COMPUTING REVIEW, 2019, 19 (01): : 48 - 58