Skip to main navigation Skip to search Skip to main content

DCFI-checker: Checking kernel dynamic control flow integrity with performance monitoring counter

  • Wenchang Shi
  • , Hongwei Zhou*
  • , Jinhui Yuan
  • , Bin Liang
  • *Corresponding author for this work
  • School of Information
  • Renmin University of China
  • Information Engineering University

Research output: Contribution to journalArticlepeer-review

Abstract

It is a challenge to verify integrity of dynamic control flows due to their dynamic and volatile nature. To meet the challenge, existing solutions usually implant an "attachment" in each control transfer. However, the attachment introduces additional cost except performance penalty. For example, the attachment must be unique or restrictedly modified. In this paper, we propose a novel approach to detect integrity of dynamic control flows by counting executed branch instructions without involving any attachment. Our solution is based on the following observation. If a control flow is compromised, the number of executed branch instructions will be abnormally increased. The cause is that intruders usually hijack control flows for malicious execution which absolutely introduces additional branch instructions. Inspired by the above observation, in this paper, we devise a novel system named DCFI-Checker, which detect integrity corruption of dynamic control flows with the support of Performance Monitoring Counter (PMC). We have developed a proof-of-concept prototype system of DCFI-Checker on Linux fedora 5. Our experiments with existing kernel rootkits and buffer overflow attack show that DCFI-Checker is effective to detect compromised dynamic control transfer, and performance evaluations indicate that performance penalty induced by DCFI-Checker is acceptable.

Original languageEnglish
Pages (from-to)31-46
Number of pages16
JournalChina Communications
Volume11
Issue number9
DOIs
StatePublished - 1 Sep 2014
Externally publishedYes

Keywords

  • branch
  • dynamic control flow
  • integrity
  • kernel
  • performance monitoring counter

Fingerprint

Dive into the research topics of 'DCFI-checker: Checking kernel dynamic control flow integrity with performance monitoring counter'. Together they form a unique fingerprint.

Cite this