Capturing Malware Propagations with Code Injections and Code-Reuse Attacks

被引:26
|
作者
Korczynski, David [1 ,2 ]
Yin, Heng [2 ]
机构
[1] Univ Oxford, Oxford, England
[2] Univ Calif Riverside, Riverside, CA 92521 USA
基金
美国国家科学基金会;
关键词
Malware; Taint Analysis; Security; Code Injection;
D O I
10.1145/3133956.3134099
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
Defending against malware involves analysing large amounts of suspicious samples. To deal with such quantities we rely heavily on automatic approaches to determine whether a sample is malicious or not. Unfortunately, complete and precise automatic analysis of malware is far from an easy task. This is because malware is often designed to contain several techniques and countermeasures specifically to hinder analysis. One of these techniques is for the malware to propagate through the operating system so as to execute in the context of benign processes. The malware does this by writing memory to a given process and then proceeds to have this memory execute. In some cases these propagations are trivial to capture because they rely on well-known techniques. However, in the cases where malware deploys novel code injection techniques, rely on code-reuse attacks and potentially deploy dynamically generated code, the problem of capturing a complete and precise view of the malware execution is non-trivial. In this paper we present a unified approach to tracing malware propagations inside the host in the context of code injections and code-reuse attacks. We also present, to the knowledge of the authors, the first approach to identifying dynamically generated code based on information-flow analysis. We implement our techniques in a system called Tartarus and match Tartarus with both synthetic applications and real-world malware. We compare Tartarus to previous works and show that our techniques substantially improve the precision for collecting malware execution traces, and that our approach can capture intrinsic characteristics of novel code injection techniques.
引用
收藏
页码:1691 / 1708
页数:18
相关论文
共 50 条
  • [1] A Method for Analyzing Code-Reuse Attacks
    A. V. Vishnyakov
    A. R. Nurmukhametov
    Sh. F. Kurmangaleev
    S. S. Gaisaryan
    Programming and Computer Software, 2019, 45 : 473 - 484
  • [2] A Method for Analyzing Code-Reuse Attacks
    Vishnyakov, A. V.
    Nurmukhametov, A. R.
    Kurmangaleev, Sh F.
    Gaisaryan, S. S.
    PROGRAMMING AND COMPUTER SOFTWARE, 2019, 45 (08) : 473 - 484
  • [3] ROPocop - Dynamic mitigation of code-reuse attacks
    Follner, Andreas
    Bodden, Eric
    JOURNAL OF INFORMATION SECURITY AND APPLICATIONS, 2016, 29 : 16 - 26
  • [4] Exception-oriented programming: retrofitting code-reuse attacks to construct kernel malware
    Deng, Liang
    Zeng, Qingkai
    IET INFORMATION SECURITY, 2016, 10 (06) : 418 - 424
  • [5] Preventing Kernel Code-Reuse Attacks Through Disclosure Resistant Code Diversification
    Gionta, Jason
    Enck, William
    Larsen, Per
    2016 IEEE CONFERENCE ON COMMUNICATIONS AND NETWORK SECURITY (CNS), 2016, : 189 - 197
  • [6] ROPMEMU: A Framework for the Analysis of Complex Code-Reuse Attacks
    Graziano, Mariano
    Balzarotti, Davide
    Zidouemba, Alain
    ASIA CCS'16: PROCEEDINGS OF THE 11TH ACM ASIA CONFERENCE ON COMPUTER AND COMMUNICATIONS SECURITY, 2016, : 47 - 58
  • [7] μShield Configurable Code-Reuse Attacks Mitigation For Embedded Systems
    Abbasi, Ali
    Wetzels, Jos
    Bokslag, Wouter
    Zambon, Emmanuele
    Etalle, Sandro
    NETWORK AND SYSTEM SECURITY, 2017, 10394 : 694 - 709
  • [8] Mitigating Code-Reuse Attacks on CISC Architectures in a Hardware Approach
    Zhang, Zhijiao
    Lu, Yashuai
    Chen, Yu
    Lu, Yongqiang
    Shi, Yuanchun
    ICT SYSTEMS SECURITY AND PRIVACY PROTECTION, 2015, 455 : 431 - 445
  • [9] Mitigating Code-Reuse Attacks with Control-Flow Locking
    Bletsch, Tyler
    Jiang, Xuxian
    Freeh, Vince
    27TH ANNUAL COMPUTER SECURITY APPLICATIONS CONFERENCE (ACSAC 2011), 2011, : 353 - 362
  • [10] Code Shredding: Byte-Granular Randomization of Program Layout for Detecting Code-Reuse Attacks
    Shioji, Eitaro
    Kawakoya, Yuhei
    Iwamura, Makoto
    Hariu, Takeo
    28TH ANNUAL COMPUTER SECURITY APPLICATIONS CONFERENCE (ACSAC 2012), 2012, : 309 - 318