Static analysis based invariant detection for commodity operating systems

被引:3
|
作者
Zhu, Feng [1 ]
Wei, Jinpeng [1 ]
机构
[1] Florida Int Univ, Sch Comp & Informat Sci, Miami, FL 33199 USA
关键词
Integrity modeling; Invariants detection; Malware detection; Static analysis; Tools;
D O I
10.1016/j.cose.2014.02.008
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
Recent interest in runtime attestation requires modeling of a program's runtime behavior to formulate its integrity properties. In this paper, we study the possibility of employing static source code analysis to derive integrity models of a commodity operating systems kernel. We develop a precise and static analysis-based data invariant detection tool that overcomes several technical challenges: field-sensitivity, array-sensitivity, and pointer analysis. We apply our tool to Linux kernel 2.4.32 and Windows Research Kernel (WRK). For Linux kernel 2.4.32, our tool identifies 284,471 data invariants that are critical to its runtime integrity, e.g., we use them to detect ten real-world Linux rootkits. Furthermore, comparison with the result of a dynamic invariant detector reveals 17,182 variables that can cause false alarms for the dynamic detector in the constant invariants category. Our tool also works successfully for WRK and reports 202,992 invariants, which we use to detect nine real-world Windows malware and one synthetic Windows malware. When compared with a dynamic invariant detector, we see similar results in terms of false alarms. Our experience suggests that static analysis is a viable option for automated integrity property derivation, and it can have very low false positive rate and very low false negative rate (e.g., for the constant invariants of WRK, the false positive rate is one out of 100,822 and the false negative rate is 0.007% or seven out of 100,822). (C) 2014 Elsevier Ltd. All rights reserved.
引用
收藏
页码:49 / 63
页数:15
相关论文
共 50 条
  • [21] FPGA Static Timing Analysis Enhancement Based on Real Operating Conditions
    Kacou, Marc Alexandre
    Ghaffari, Fakhreddine
    Romain, Olivier
    Condamin, Bruno
    [J]. IECON 2017 - 43RD ANNUAL CONFERENCE OF THE IEEE INDUSTRIAL ELECTRONICS SOCIETY, 2017, : 3556 - 3561
  • [22] A static analysis of PKI-based systems
    Aziz, B
    Gray, D
    Hamilton, G
    [J]. THEORETICAL COMPUTER SCIENCE, PROCEEDINGS, 2005, 3701 : 51 - 65
  • [23] Static Detection of Loop-Invariant Data Structures
    Xu, Guoqing
    Yan, Dacong
    Rountev, Atanas
    [J]. ECOOP 2012 - OBJECT-ORIENTED PROGRAMMING, 2012, 7313 : 738 - 763
  • [24] Transparent, Lightweight Application Execution Replay on Commodity Multiprocessor Operating Systems
    Laadan, Oren
    Viennot, Nicolas
    Nieh, Jason
    [J]. SIGMETRICS 2010: PROCEEDINGS OF THE 2010 ACM SIGMETRICS INTERNATIONAL CONFERENCE ON MEASUREMENT AND MODELING OF COMPUTER SYSTEMS, 2010, 38 (01): : 155 - 166
  • [25] Transparent checkpoint-restart of multiple processes on commodity operating systems
    Laadan, Oren
    Nieh, Jason
    [J]. USENIX ASSOCIATION PROCEEDINGS OF THE 2007 USENIX ANNUAL TECHNICAL CONFERENCE, 2007, : 323 - 336
  • [26] Secure Integration of Web Content and Applications on Commodity Mobile Operating Systems
    Davidson, Drew
    Chen, Yaohui
    George, Franklin
    Lu, Long
    Jha, Somesh
    [J]. PROCEEDINGS OF THE 2017 ACM ASIA CONFERENCE ON COMPUTER AND COMMUNICATIONS SECURITY (ASIA CCS'17), 2017, : 652 - 665
  • [27] Performance Analysis of Fault Detection Systems Based on Analytically Redundant Linear Time-Invariant Dynamics
    Wheeler, Timothy J.
    Seiler, Peter
    Packard, Andrew K.
    Balas, Gary J.
    [J]. 2011 AMERICAN CONTROL CONFERENCE, 2011, : 214 - 219
  • [28] Network application programming interfaces (APIs) performance on commodity operating systems
    Zeadally, S
    Zhang, L
    Zhu, Z
    Lu, J
    [J]. INFORMATION AND SOFTWARE TECHNOLOGY, 2004, 46 (06) : 397 - 402
  • [29] Static Worst-Case Execution Time analysis tool for embedded operating systems
    Park, H. H.
    Hong, JiMan
    Yang, S. M.
    [J]. COMPUTATIONAL SCIENCE AND ITS APPLICATIONS - ICCSA 2008, PT 1, PROCEEDINGS, 2008, 5072 : 790 - +
  • [30] Improving Invariant Mining via Static Analysis
    Schulze, Christoph
    Cleaveland, Rance
    [J]. ACM TRANSACTIONS ON EMBEDDED COMPUTING SYSTEMS, 2017, 16