Security researchers have developed an attack technique they say can circumvent dozens of anti-virus products used to protect Windows desktops, including McAfee, Sophos and Symantec’s Norton anti-virus.
Researchers at Matousec.com call the technique an “argument-switch” attack. Many security vendors alter the kernel part of system call mechanism implementation by modifying contents of the System Service Descriptor Table (SSDT), a process called SSDT hooking. Essentially, the attack switches out safe code given the green light by security software for malicious code. If the timing is perfect, the malicious code can sneak by without triggering anti-virus alerts.
“When the faker thread gets its time slice, it tampers the contents of the parameters to values that would never pass the checks of the hook handler,” the researchers wrote. “If the tampering operation occurs after the security checks are done but before the original service, which does the main work, is called, the attack is successful.”
All totaled, Matousec.com listed more than 30 anti-virus products vulnerable to the attack, including AVG Internet Security 9.0.791, Norton Internet Security 2010 188.8.131.52 and McAfee Total Protection 2010 10.0.580. A full list of the products tested by Matousec.com can be found in the researchers’ document.
In order to work, the malicious code would already have to be on the targeted machine, and the attacker would need the ability to run a binary on the computer.
“The attack technique in the form it was presented in the article is not remote,” Matousec.com explained in an e-mail to eWEEK. “This means that execution of a code on the target machine is required…Here a local attack can be used to disable the security protection or bypass it in any other way.”
Among the products reportedly affected by the situation is Sophos Endpoint Security and Control 9.0.5. According to Sophos, the company only utilizes SSDT hooking on legacy platforms, so Sophos users running Windows 7 or Windows Vista SP1 and higher are unaffected by this attack.
“We do not use SSDT in Sophos products for anything other than our HIPS (Host Intrusion Prevention System) on those legacy platforms,” explained Chester Wisniewski, senior security adviser at Sophos.
In addition, he added that the user would have to be running a system with a multicore processor and the attacker would need malware capable of bypassing protection mechanisms such as on-access scanning and the client firewall.
“At this point you could then attempt to create a race condition that could bypass our behavioral HIPS technology,” he said. “Of course for this to occur the malware would need to already be allowed to run on the system bypassing all other defenses.”
At Symantec, Vincent Weafer, vice president of Symantec Security Response, said the company adds multiple layers of security to prevent malicious code from getting onto users’ computers in the first place.
“In particular, Symantec’s Intrusion Prevention (IPS) and Reputation-Based Security play a large role in blocking these types of threats,” he said. “These additional layers of defenses were not examined as part of the matousec.com investigation.”
However, this technique could be used in combination with an exploit targeting another piece of software.
“This problem is strictly on the side of third-party software vendors and does not need any action from Microsoft,” Matousec.com told eWEEK. “Microsoft put their effort (into creating) kernel space protection in 64-bit versions of Windows with PatchGuard, which limits attempts of software vendors to make such hooks, but (the) 32-bit platform is not protected that way and the software vendors do use kernel mode hooks quite often…In (the) case of some security features there are documented ways by Microsoft. In other cases the solution is specific to the particular feature.”
This story was updated to add comment from Sophos.