Researchers blow past all protections in Microsoft's EMET anti-exploitation tool
Security researchers managed to bypass the protections offered by Microsoft’s Enhanced Mitigation Experience Toolkit (EMET), a utility designed to detect and block software exploits, and concluded that the tool would not be effective against determined attackers.
EMET can be used to apply 12 different security mitigations to other programs running on the computer. These mitigations are designed to block common techniques used in software exploits, like Return Oriented Programming (ROP), a technique that exploit authors use to defeat security defenses and execute malicious code on the system.
Researchers from Bromium, a company that develops security technologies based on micro-virtualization, investigated the protections offered by EMET and found that all of them can be bypassed if the attacker is determined enough.
“We found that EMET was very good at stopping pre-existing memory corruption attacks (a type of hacker exploit),” said Jared DeMott, principal security researcher at Bromium, Monday in a blog post. “But we wondered: is it possible for a slightly more technical attacker to bypass the protections offered in EMET? And yes, we found ways to bypass all of the protections in EMET.”
DeMott was one of the three finalists in Microsoft’s BlueHat Prize competition in 2012 through which the company rewarded security researchers for developing defensive techniques against software exploits.
Clean sweep of dirty tricks
While other researchers have documented methods of bypassing some EMET protections before, DeMott and the Bromium team investigated ways to defeat all of them. They presented their findings in a research paper published Monday and used the techniques to modify a known browser exploit previously blocked by EMET to bypass all defenses in the latest version of the toolkit—version 4.1.
“We provided our research to Microsoft before speaking about these problems publically,” DeMott said. “We also provided recommendations to upgrade the protections where possible.”
Microsoft did not immediately respond to a request for comment.
According to DeMott, the company will recognize their work in the next EMET release—version 5.
That version of the utility might also include some of the fixes recommended by the Bromium researchers. However, even if that happens, there’s a deeper problem that prevents EMET from being a truly effective at stopping exploits—the fact that it runs from user space and not at the kernel level.
“Many of the weaknesses are generic in nature and unlikely to be sufficiently addressed by userland protection technologies like EMET,” the Bromium researchers said in their paper.
“The impact of this study shows that technologies that operate on the same plane of execution as potentially malicious code offer little lasting protection,” DeMott said. “This is true of EMET and other similar userland protections. That’s because a defense that is running in the same space as potentially malicious code can typically be bypassed, since there’s no ‘higher’ ground advantage as there would be from a kernel or hypervisor protection.”
Microsoft acknowledges in EMET’s documentation that the tool blocks common exploitation techniques, but does not guarantee that vulnerabilities cannot be exploited. According to the EMET mitigation guidelines, the mitigations in EMET work as additional obstacles that an exploit author would have defeat in order to exploit vulnerabilities, so the goal of these obstacles is to make exploitation as difficult as possible to perform.
The real question is not whether EMET can be bypassed, but whether it sufficiently raises the cost of exploitation, the Bromium researchers said in their paper. “The answer to that is likely dependent upon the value of the data being protected. For organizations with data of significant value, we submit that EMET does not sufficiently stop customized exploits.”