They say a rising tide lifts all boats; unfortunately, the proverb applies to cybercriminals, too. While the inexpensive availability of compute processing power and broadband connectivity has made technologies like virtualization and cloud computing possible, that same ready access makes it possible for even a novice cybercriminal to leverage some of the most advanced malware available today.
All it takes is a laptop, a Bitcoin account, and a willingness to break the law; and anyone can purchase, rent or even download – for free – advanced malware that, even as of a few months ago, wasn’t available. And if the aspiring criminal doesn’t have the ability to use the malware to conduct the attack himself or herself, that person can simply hire the services of a hacker-for-hire.
This is particularly disturbing in light of the fact that advanced malware can increasingly avoid detection by threat intelligence researchers and malware analysis tools.
In cybersecurity, malware analysis, commonly known as “sandboxing,” has been industry-standard practice for years now because much of the truly valuable intelligence about novel malware can only be gleaned by observing host and network activity during detonation. But the cybercriminals know this, and they have developed malware, accordingly, that can actively determine if it’s being observed in a malware analysis environment or on an actual targeted host. If the malware determines it is being watched, it can be crafted to actively attempt to conceal itself or remain dormant, preventing security systems from determining maliciousness or extracting indicators of compromise (IOCs) for prevention. These techniques can range from checking for valid user activity, such as keyboard or mouse input; typing speed; or even looking at environmental details, such as the presence of virtualization technology, number of CPU cores or even screen resolution.
How does the malware tell the difference between virtual and physical environments? It actively looks for clues. For example, most malware analysis tools were developed using open source software, so more advanced malware will look for snippets of that code in a new operating environment; and if it finds them, it remains dormant. Another common technique for malware to detect if it’s in a malware analysis environment is to look at the hardware itself. Virtual machines are often configured to perform as if they have large amounts of system memory, so if the malware sees more memory available than is typically found on a host, it knows it’s likely operating on a virtual machine and won’t activate.
Thankfully, in comparison to the hundreds of millions of less sophisticated malware samples currently in circulation, the amount of malware that can avoid detection is still a very small fraction. But as mentioned above, the barriers to entry for cybercriminals are getting lower every day, so I expect to see the number of malware samples actively avoiding detection grow rapidly in 2017.
So what’s a cybersecurity team supposed to do? I would recommend every security team consider including the following criteria during their selection process for malware identification and prevention:
· Ensure you have an automated malware analysis environment as a core component of your security platform, which can observe, detonate and extract intelligence from unknown samples, all while driving prevention back to the system.
· The malware analysis environment must leverage multiple independent techniques, including static analysis with machine learning, dynamic analysis and bare metal analysis, to ensure all zero-day exploits and malware can be identified.
· During dynamic analysis, the system must not leverage any open source virtualization technology, as attackers have commoditized what are known as “VM evasions.”
· After dynamic analysis, malware samples that appear to be evading detection must be sent to a bare metal environment automatically for execution on hardware systems, preventing attackers from employing VM evasions.
While these recommendations may seem complex at first glance, when implemented as part of a natively-engineered security platform, they can actually reduce the operational burden put on security teams. Now, zero-day exploits and malware can be detected as part of an automated process that will run itself, feeding protections into the system. Consider the time, effort and lowered risk posture you’ll gain by automating static analysis with machine learning, dynamic analysis with evasion resistance and bare metal analysis.