deRop: removing return-oriented programming from malware

  • Authors:
  • Kangjie Lu;Dabi Zou;Weiping Wen;Debin Gao

  • Affiliations:
  • Peking University, China, Singapore Management, University, Singapore;Singapore Management, University, Singapore;Peking University, China;Singapore Management, University, Singapore

  • Venue:
  • Proceedings of the 27th Annual Computer Security Applications Conference
  • Year:
  • 2011

Quantified Score

Hi-index 0.00

Visualization

Abstract

Over the last few years, malware analysis has been one of the hottest areas in security research. Many techniques and tools have been developed to assist in automatic analysis of malware. This ranges from basic tools like disassemblers and decompilers, to static and dynamic tools that analyze malware behaviors, to automatic malware clustering and classification techniques, to virtualization technologies to assist malware analysis, to signature- and anomaly-based malware detection, and many others. However, most of these techniques and tools would not work on new attacking techniques, e.g., attacks that use return-oriented programming (ROP). In this paper, we look into the possibility of enabling existing defense technologies designed for normal malware to cope with malware using return-oriented programming. We discuss difficulties in removing ROP from malware, and design and implement an automatic converter, called deRop, that converts an ROP exploit into shellcode that is semantically equivalent with the original ROP exploit but does not use ROP, which could then be analyzed by existing malware defense technologies. We apply deRop on four real ROP malwares and demonstrate success in using deRop for the automatic conversion. We further discuss applicability and limitations of deRop.