Vulnerabilities / Threats
03:20 PM
Connect Directly

How Malware Writers Cheat AV Zero-Day Detection

A researcher reverse engineers AVG's code emulation engine after easily bypassing other major antivirus software products.

As an experiment, Kyle Adams wrote what he describes as "ridiculously obvious" malware that most major antivirus products ultimately failed to detect. The only AV product that caught his malware was the freebie AVG, whose code-emulation feature sniffed it out.

So Adams, chief software architect for Junos Webapp Secure at Juniper Networks, kicked it up a notch and reverse engineered AVG's code emulation engine. Then he was able to bypass AVG's engine, as well, but he also noticed what attackers could do in that situatoin. On Tuesday, Aug. 5, at BSides Las Vegas, Adams will demonstrate how he cheated various AV products and how AV's code emulation feature for catching zero-day exploits has some weaknesses of its own.

"You start to realize things [the engines] can't handle, and if you explore them, you start to uncover compromises they didn't recognize," Adams says. However, "I didn't find anything that let me compromise the [code emulation engine] simply by [having the malware] scanned."

He plans to expose some of the engine weaknesses and name some of the major AV products his malware cheated in the first phase of his experiment. "If you know how the engine works, you can get around it."

His research shows that code emulation needs to be improved in AV products. "In some aspects, how code emulation works could be grounds for new exploits."

Adams says he's definitely not the first person to cheat an AV engine -- bad guys do it regularly -- but he wants to educate the security community on the problem. "I'd like to show how the malware authors approach the problem. I'm going to show building a virus from scratch… and testing it against the AV products like attackers do as they try to figure out how not to get detected."

His research shows that code emulation and sandboxing aren't really working anymore. "Now you can start to attack code emulators and sandboxes" themselves. At least 10% of attacks are attempting this today.

The malware Adams wrote and will demonstrate is a command-and-control bot. The JavaScript malcode he wrote runs on Windows. "It could be put together by anyone."

What can AV vendors do to beef up their code emulation? For one thing, "they should start penetration-testing their own AV software."

Adams will propose other solutions for improving code emulation. And he says he's definitely not picking on AVG, which he tried to contact before his presentation. "This is not a jab against AVG, as they get enormous credit for including such a powerful tool in a free antivirus client," he wrote in an abstract for his BSides talk.

Kelly Jackson Higgins is Executive Editor at She is an award-winning veteran technology and business journalist with more than two decades of experience in reporting and editing for various publications, including Network Computing, Secure Enterprise ... View Full Bio

Comment  | 
Print  | 
More Insights
Register for Dark Reading Newsletters
White Papers
Current Issue
E-Commerce Security: What Every Enterprise Needs to Know
The mainstream use of EMV smartcards in the US has experts predicting an increase in online fraud. Organizations will need to look at new tools and processes for building better breach detection and response capabilities.
Flash Poll
Twitter Feed
Dark Reading - Bug Report
Bug Report
Enterprise Vulnerabilities
From DHS/US-CERT's National Vulnerability Database
Published: 2015-10-15
The Direct Rendering Manager (DRM) subsystem in the Linux kernel through 4.x mishandles requests for Graphics Execution Manager (GEM) objects, which allows context-dependent attackers to cause a denial of service (memory consumption) via an application that processes graphics data, as demonstrated b...

Published: 2015-10-15
netstat in IBM AIX 5.3, 6.1, and 7.1 and VIOS 2.2.x, when a fibre channel adapter is used, allows local users to gain privileges via unspecified vectors.

Published: 2015-10-15
Cross-site request forgery (CSRF) vulnerability in eXtplorer before 2.1.8 allows remote attackers to hijack the authentication of arbitrary users for requests that execute PHP code.

Published: 2015-10-15
Directory traversal vulnerability in QNAP QTS before 4.1.4 build 0910 and 4.2.x before 4.2.0 RC2 build 0910, when AFP is enabled, allows remote attackers to read or write to arbitrary files by leveraging access to an OS X (1) user or (2) guest account.

Published: 2015-10-15
Cisco Application Policy Infrastructure Controller (APIC) 1.1j allows local users to gain privileges via vectors involving addition of an SSH key, aka Bug ID CSCuw46076.

Dark Reading Radio