Testing malware detectors

Mihai Christodorescu and Somesh Jha.

In International Symposium on Software Testing and Analysis (ISSTA)

Boston, Massachusetts, July 2004.

Received ACM SIGSOFT Distinguished Paper Award.

In today's interconnected world, malware, such as worms and viruses, can cause havoc. A malware detector (commonly known as virus scanner) attempts to identify malware. In spite of the importance of malware detectors, there is a dearth of testing techniques for evaluating them. We present a technique based on program obfuscation for generating tests for malware detectors. Our technique is geared towards evaluating the resilience of malware detectors to various obfuscation transformations commonly used by hackers to disguise malware. We also demonstrate that a hacker can leverage a malware detector's weakness in handling obfuscation transformations and can extract the signature used by a detector for a specific malware. We evaluate three widely-used commercial virus scanners using our techniques and discover that the resilience of these scanners to various obfuscations is very poor.

Paper: [pdf] [ps]
Slides: [pdf]

This page updated October 14, 2005.