Malware is software. Thus it contains bugs. And like software, sometimes when deployed in production, it does not work.

Im not going to ponder the question if non-functioning malware is actually malware. And Im not going to address the difficulties of detecting non-functioning malware.

But in first instance its good news for the target: the target was not compromised. And many will leave it at that. But not malware analysts. We want to know what the malware was designed to do. For example to determine if it was a targeted attack.

Your analysis options of non-functioning malware are restricted. Dynamic analysis will not work, since the malware will not exhibit its malicious behavior. Unless you can identify the bug and easily fix it.

Most of the time you will need to resort to static analysis, provided your tools are designed for it. Or else you will need to make changes to the malware so that your static analysis tools can handle it.

I have some features in my malware analysis tools that help you deal with non-functioning malware. The following video is an example where I show how oledump can analyze a corrupt malicious Word document:

Each time I analyze malfunctioning malware, I have to suppress the urge to call out the criminals on social media: Hey stupid, look at your bug, this is how I fix it. Its better not to educate them.

Didier Stevens
SANS ISC Handler
Microsoft MVP Consumer Security
blog.DidierStevens.com DidierStevensLabs.com
IT Security consultant at Contraste Europe.

(c) SANS Internet Storm Center. https://isc.sans.edu Creative Commons Attribution-Noncommercial 3.0 United States License.
Internet Storm Center Infocon Status