• DocumentCode
    63763
  • Title

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

  • Author

    Shi Wenchang ; Zhou Hongwei ; Yuan Jinhui ; Liang Bin

  • Author_Institution
    Sch. of Inf., Renmin Univ. of China, Beijing, China
  • Volume
    11
  • Issue
    9
  • fYear
    2014
  • fDate
    Sept. 2014
  • Firstpage
    31
  • Lastpage
    46
  • 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.
  • Keywords
    Linux; buffer storage; data flow analysis; data integrity; program verification; security of data; system monitoring; DCFI-Checker; Linux fedora 5; PMC; dynamic control flow integrity; executed branch instructions; integrity corruption; intruders; malicious execution; performance evaluations; performance monitoring counter; performance penalty; Dynamic control; Kernel; Linux; Monitoring; Performance evaluation; Radiation detectors; branch; dynamic control flow; integrity; kernel; performance monitoring counter;
  • fLanguage
    English
  • Journal_Title
    Communications, China
  • Publisher
    ieee
  • ISSN
    1673-5447
  • Type

    jour

  • DOI
    10.1109/CC.2014.6969709
  • Filename
    6969709