Vulnerabilities / Threats
8/4/2014
03:20 PM
Connect Directly
Google+
Twitter
RSS
E-Mail
100%
0%

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 DarkReading.com. 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
Cartoon
Current Issue
Dark Reading December Tech Digest
Experts weigh in on the pros and cons of end-user security training.
Flash Poll
Video
Slideshows
Twitter Feed
Dark Reading - Bug Report
Bug Report
Enterprise Vulnerabilities
From DHS/US-CERT's National Vulnerability Database
CVE-2014-4807
Published: 2014-11-22
Sterling Order Management in IBM Sterling Selling and Fulfillment Suite 9.3.0 before FP8 allows remote authenticated users to cause a denial of service (CPU consumption) via a '\0' character.

CVE-2014-6183
Published: 2014-11-22
IBM Security Network Protection 5.1 before 5.1.0.0 FP13, 5.1.1 before 5.1.1.0 FP8, 5.1.2 before 5.1.2.0 FP9, 5.1.2.1 before FP5, 5.2 before 5.2.0.0 FP5, and 5.3 before 5.3.0.0 FP1 on XGS devices allows remote authenticated users to execute arbitrary commands via unspecified vectors.

CVE-2014-8626
Published: 2014-11-22
Stack-based buffer overflow in the date_from_ISO8601 function in ext/xmlrpc/libxmlrpc/xmlrpc.c in PHP before 5.2.7 allows remote attackers to cause a denial of service (application crash) or possibly execute arbitrary code by including a timezone field in a date, leading to improper XML-RPC encoding...

CVE-2014-8710
Published: 2014-11-22
The decompress_sigcomp_message function in epan/sigcomp-udvm.c in the SigComp UDVM dissector in Wireshark 1.10.x before 1.10.11 allows remote attackers to cause a denial of service (buffer over-read and application crash) via a crafted packet.

CVE-2014-8711
Published: 2014-11-22
Multiple integer overflows in epan/dissectors/packet-amqp.c in the AMQP dissector in Wireshark 1.10.x before 1.10.11 and 1.12.x before 1.12.2 allow remote attackers to cause a denial of service (application crash) via a crafted amqp_0_10 PDU in a packet.

Best of the Web
Dark Reading Radio
Archived Dark Reading Radio
Now that the holiday season is about to begin both online and in stores, will this be yet another season of nonstop gifting to cybercriminals?