Mobile security firm Zimperium has launched an exploit acquisition program that aims to bring undisclosed attack code for already patched vulnerabilities out in the open.
Paying for old exploits might seem like a waste of money, but there are technical and business arguments to justify such an acquisition system and they ultimately have to do with the difference between exploits and vulnerabilities.
A vulnerability is a software defect with potential security implications, while an exploit is the actual code that takes advantage of that bug to achieve a specific malicious goal, often by bypassing other security barriers along the way.
In practice, many vulnerabilities that get reported to vendors are not accompanied by working exploits. Showing that a programming error can lead to memory corruption is typically enough for the vendor to understand its potential implications -- for example, arbitrary code execution.
If the software vendor understands the bug and commits to patching it, there's usually no point in taking the time to write a full-blown exploit that also bypasses sandboxes or OS security mechanisms like SELinux, DEP and ASLR in order to prove malicious code execution.
That's not the case, though, for the so-called weaponized exploits that are being sold behind closed doors to malicious hackers or to government agencies for a lot of money. These need to be fully functional and reliable and, in most cases, target unpatched vulnerabilities that users have no defense for, which is why they're known as zero-day exploits.
But what happens when exploits lose their zero-day status because the vulnerabilities they use are discovered independently and get patched by vendors? Does that attack code become public? Not always.
There's really no way to know how many zero-day exploits have been burned by vendor fixes over the years, and have remained private to this day. Or how many exploit writers hang on to what were previously zero-day exploits in hopes that they might still have some value against older devices.
It's worth keeping in mind that not every hacker is a bug hunter and not every bug hunter is an exploit writer. These are actions that require different skill sets. There are many successful bug hunters that don't have the necessary programming skills to write full-blown exploit chains that work reliably on various OS versions.
"Security research and exploitation is in our heart and what led Zimperium to this point," Zimperium's founder and CTO Zuk Avraham said in a blog post Tuesday. "We appreciate the art of exploitation, and appreciate cool tricks in order to write an exploit development, bypass ASLR/KASLR, achieve persistency, etc. We humbly believe that we can learn from any exploit and as a result offer better security for our customers and partners."
The company's mobile security technology is used by carriers and handset vendors for very large deployments of tens of millions of users and needs to offer protection even for older mobile devices that are no longer supported and don't receive security updates. It's on such devices where the older "N-days" exploits, as Zimperium calls them, can still have value for attackers.
"For us, supporting old devices is a key decision to help where the update policy have failed the consumers," Avraham said.
The company will acquire exploits for both remotely and locally exploitable vulnerabilities, as well as for bugs that can lead to information disclosure. The exploits can target any version of Android or iOS aside from the latest ones.
Zimperium has not disclosed prices for the different types of exploits it plans to acquire, as each one will be evaluated individually by a special committee. However, the company has allocated $1.5 million for the program.
Exploit developers can even analyze the monthly patches of mobile OS makers, write working exploits for the patched vulnerabilities and submit them to the program, because the existence of working exploits could drive patch adoption in the ecosystem.
"Multiple Zimperium Handset Alliance (ZHA) partners explained to us that without proof of exploitability, it’s hard to convince the security teams to allocate resources needed for a complete patch cycle, even for known issues," Avraham said.
Zimperium will use the exploits to enhance its z9 mobile protection engine, which uses machine learning to detect and block network, local and application attacks. It will also share the exploits with the ZHA, which includes security team members from more than 30 global device manufacturers and carriers.
Zimperiuym also plans to release the exploits publicly after three months unless their authors specifically asks the company not to.
"Our goal is to help the community, penetration testers, mobility and IT Admins to better evaluate their security and protect their devices," Avraham said.