Last Updated: 2015-12-26 15:15:08 UTC
by Didier Stevens (Version: 1)
Malware is software. Thus it contains bugs. And like software, sometimes when deployed "in production", it does not work.
I'm not going to ponder the question if non-functioning malware is actually malware. And I'm not going to address the difficulties of detecting non-functioning malware.
But in first instance it's 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. It's better not to educate them.