Dark Reading is part of the Informa Tech Division of Informa PLC

This site is operated by a business or businesses owned by Informa PLC and all copyright resides with them.Informa PLC's registered office is 5 Howick Place, London SW1P 1WG. Registered in England and Wales. Number 8860726.

Attacks/Breaches

12/13/2017
08:20 PM
Connect Directly
Google+
Twitter
RSS
E-Mail
50%
50%

Malware Decompiler Tool Goes Open Source

Avast's RetDec machine-code decompiler now available for free on Github.

Anti-malware vendor Avast has donated its homegrown malware decompiler tool to the open-source community.

Avast's RetDec basically converts a piece of malware into a higher-level programming language and helps malware analysts unmask the inner workings and functions of its code. "It turns it into something that looks like the original source code," says Jakub Kroustek, threat lab team lead at Avast. "It's much easier" and more efficient to sleuth just what the malware can do when it's decompiled, he notes.

"We're facing millions of new samples of malware each day. We're not deeply analyzing all of them, but by using decompilation we can handle some" more closely and quickly, says Kroustek, founder of the tool.

Researchers at Avast used the tool to decompile ransomware strains including Apocalypse, BadBlock, Bart, CrySIS, and TeslaCrypt, and then offer free decryption tools for the ransomware.

Decompiler tools provide static analysis of code, where researchers don't actually run the code but instead study it, up close. Dynamic analysis is another method, where a researcher executes malicious code in the safety of a sandbox environment to study how it runs in action. "Sometimes it's right to use a sandbox, and other times it's beneficial to use a decompiler," he says. "In my case, I usually use both. When you're fighting bad guys, you trying using every leverage" you can, he says.

RetDec was first created in 2011 by researchers at the Czech Republic's Brno University of Technology and AVG Technologies, and the tool became Avast's last year after it acquired AVG. Kroustek says Avast hopes to get other security experts to help further its development as an open source tool, which is aimed at researchers and reverse-engineers.  

Decompilation tools are nothing new. There are commercial products, which can be pricey and limited in customization, Kroustek says, while there are other open-source decompiler tools such as DCC, Boomerang, and Snowman, for example.

"While good decompilation tools are available that deliver good results, many are paid products, however, these cannot be easily extended with custom features," he says. "On the other hand, users can utilize existing, free, open-source decompilers, but these do not always achieve proper stability, code readability and quality."

John Bambanek, threat systems manager with Fidelis Cybersecurity, who also teaches at the University of Illinois at Urbana-Champaign, says an open-source decompiler such as Avast's can be especially helpful for academia. "I have limited funds and buying a bunch of IDA [Hex-Rays decompiler product] seats isn't going to happen. With something open-source, assuming it can get the job done, [the tool can] "provide a great resource for me to produce more reverse engineers," he says.

Avast says the now open-source tool works on multiple architectures, file formats, and operating systems, and can be used for more than decompilation, too. It uses C and Python-type language for output, and runs on Linux and Windows platforms. RetDec source code and related tools are available now on GitHub, under an MIT license.

"If someone isn't focused on decompilers, he or she can just use the libraries for detection of particular patterns" in the malware, for example, Kroustek says.

Related Content:

Kelly Jackson Higgins is the Executive Editor of Dark Reading. 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
 

Recommended Reading:

Comment  | 
Print  | 
More Insights
Comments
Newest First  |  Oldest First  |  Threaded View
REISEN1955
50%
50%
REISEN1955,
User Rank: Ninja
12/15/2017 | 8:29:48 AM
Shareware
Had to laugh at this --- when malware scripting tools show up as shareware (anybody here remember a wonderful catalog PUBLIC BRAND SOFTWARE ) then we are ALL in trouble. 
COVID-19: Latest Security News & Commentary
Dark Reading Staff 9/25/2020
Hacking Yourself: Marie Moe and Pacemaker Security
Gary McGraw Ph.D., Co-founder Berryville Institute of Machine Learning,  9/21/2020
Startup Aims to Map and Track All the IT and Security Things
Kelly Jackson Higgins, Executive Editor at Dark Reading,  9/22/2020
Register for Dark Reading Newsletters
White Papers
Video
Cartoon
Current Issue
Special Report: Computing's New Normal
This special report examines how IT security organizations have adapted to the "new normal" of computing and what the long-term effects will be. Read it and get a unique set of perspectives on issues ranging from new threats & vulnerabilities as a result of remote working to how enterprise security strategy will be affected long term.
Flash Poll
How IT Security Organizations are Attacking the Cybersecurity Problem
How IT Security Organizations are Attacking the Cybersecurity Problem
The COVID-19 pandemic turned the world -- and enterprise computing -- on end. Here's a look at how cybersecurity teams are retrenching their defense strategies, rebuilding their teams, and selecting new technologies to stop the oncoming rise of online attacks.
Twitter Feed
Dark Reading - Bug Report
Bug Report
Enterprise Vulnerabilities
From DHS/US-CERT's National Vulnerability Database
CVE-2020-15208
PUBLISHED: 2020-09-25
In tensorflow-lite before versions 1.15.4, 2.0.3, 2.1.2, 2.2.1 and 2.3.1, when determining the common dimension size of two tensors, TFLite uses a `DCHECK` which is no-op outside of debug compilation modes. Since the function always returns the dimension of the first tensor, malicious attackers can ...
CVE-2020-15209
PUBLISHED: 2020-09-25
In tensorflow-lite before versions 1.15.4, 2.0.3, 2.1.2, 2.2.1 and 2.3.1, a crafted TFLite model can force a node to have as input a tensor backed by a `nullptr` buffer. This can be achieved by changing a buffer index in the flatbuffer serialization to convert a read-only tensor to a read-write one....
CVE-2020-15210
PUBLISHED: 2020-09-25
In tensorflow-lite before versions 1.15.4, 2.0.3, 2.1.2, 2.2.1 and 2.3.1, if a TFLite saved model uses the same tensor as both input and output of an operator, then, depending on the operator, we can observe a segmentation fault or just memory corruption. We have patched the issue in d58c96946b and ...
CVE-2020-15211
PUBLISHED: 2020-09-25
In TensorFlow Lite before versions 1.15.4, 2.0.3, 2.1.2, 2.2.1 and 2.3.1, saved models in the flatbuffer format use a double indexing scheme: a model has a set of subgraphs, each subgraph has a set of operators and each operator has a set of input/output tensors. The flatbuffer format uses indices f...
CVE-2020-15212
PUBLISHED: 2020-09-25
In TensorFlow Lite before versions 2.2.1 and 2.3.1, models using segment sum can trigger writes outside of bounds of heap allocated buffers by inserting negative elements in the segment ids tensor. Users having access to `segment_ids_data` can alter `output_index` and then write to outside of `outpu...