FAME – friendly malware evaluation framework

CERT Société Générale, France

Copyright © 2017 Virus Bulletin


 

(This paper was presented as a last-minute Small Talk at VB2017.)

Abstract

FAME is a recursive acronym meaning 'FAME Automates Malware Evaluation'. The FAME framework is intended to facilitate analysis of malicious files, leveraging as much knowledge as possible in order to speed up and automate end-to-end analysis of malware.

 

Introduction

At CERT Société Générale, which is a banking computer emergency response team based in France, we have our fair share of malware to analyse: banking malware that targets the bank's customers, and all kinds of malware that targets our users.

We realized that there were two main issues with the process of malware analysis within our team:

  1. It was taking too long to complete an analysis. Let's consider the example of a banking trojan. Even if the analyst already recognized the malware family from the spam run, he still had to submit the sample to a sandbox, wait for the sandbox analysis to be completed, download a memory dump, extract the configuration from memory, and compare the configuration with our perimeter in order to determine if we were targeted. It the malware family was unknown, the process was even more complicated.
  2. Not every analyst had the same level of malware analysis skills.

In order to address these problems, we developed FAME, a malware analysis pipeline that will chain the execution of modules in order to perform end-to-end analysis. In the best‑case scenario, an analyst will submit a sample, and within a few minutes FAME will be able to recognize the malware family, extract its configuration, and identify how the malware is targeting our organization.

 

Not a sandbox

FAME is not a malware analysis sandbox, and it will not be very useful if it is not combined with one. It already has support for both Cuckoo Sandbox (the cuckoo-modified version) and Joe Sandbox.

 

A framework

FAME should be seen as a framework. Instead of developing various malware analysis scripts, FAME modules can be created that are able to interact with each other. As shown in Figure 1, creating a FAME module is as simple as creating a Python class.

FAME-1.pngFigure 1: Creating a FAME module.

FAME also comes with some useful modules out-of-the-box (see [1] for the list of currently available modules). One of these is the office_macros module, which leverages oletools [2] to analyse Office macros.

FAME-2.pngFigure 2: The office_macros module analyses Office macros.

 

Threat intelligence integration

Threat intelligence modules are used automatically by FAME to enrich the analysis with tags and indicators from threat intelligence platforms.

FAME-3.png

Figure 3: Observables can be added to a threat intelligence platform directly from FAME.

Observables can also be added to a threat intelligence platform directly from FAME. Currently, FAME comes with support for the YETI [3] threat intelligence platform.

FAME-4.pngFigure 4: FAME comes with support for YETI.

YETI was born out of the frustration of constantly having to answer the question 'where have I seen this artifact before?' or having to Google shady domains in order to tie them to a malware family.

In a nutshell, YETI allows an analyst to:

  • Submit observables and get a pretty good guess as to the nature of the threat.
  • Inversely, focus on a threat and quickly list all TTPs, observables, and associated malware.
  • Skip the 'Google the artifact' stage of incident response.
  • Focus on adding intelligence rather than worrying about machine-readable export formats.
  • Visualize relationship graphs between different threats.

From an operational standpoint, YETI offers the possibility to search instantly through millions of observables while easily tracking campaigns linking to related observables, malware toolsets, threat actors and their TTPs.

FAME-5.pngFigure 5: YETI offers the possibility to search instantly through millions of observables.

There is even the possibility to enrich investigations by generating visually pleasing maps illustrating the relationships, such as the one shown in Figure 6.

FAME-6.pngFigure 6: Relationship maps.

 

Open source

We were particularly pleased with our open-sourcing experience with the FIR (Fast Incident Response) incident management platform [4] (see Figure 7), and as a result of this we decided to release FAME – hoping it will help other incident response teams with their malware analysis needs.

FAME-7.pngFigure 7: Open-sourcing with the FIR (Fast Incident Response) incident management platform [4].

We are looking forward to hearing ideas from the open‑source community, and to using some of the awesome modules that we are sure will be created. More details can be found on the FAME Community page [5].

If you are involved in incident response or malware analysis, or if it simply sounds tempting, you can get a custom‑tailored FAME framework today from the CERT Société Générale GitHub [6], with all the accompanying documents at [7].

FAME-8.pngFigure 8: CERT Société Générale GitHub.

 

References

[1] fame_modules repository. https://github.com/certsocietegenerale/fame_modules.

[2] oletools. https://github.com/decalage2/oletools.

[3] YETI. https://yeti-platform.github.io.

[4] FIR – Fast Incident Response incident management platform. https://github.com/certsocietegenerale/FIR.

[5] FAME community page. https://certsocietegenerale.github.io/fame/community.

[6] CERT Société Générale GitHub. https://github.com/certsocietegenerale/fame.

[7] https://fame.readthedocs.io.

Download PDF

twitter.png
fb.png
linkedin.png
googleplus.png
reddit.png

 

Latest articles:

VB2017 paper: The (testing) world turned upside down

We often hear that anti-virus is dead, but if that is really so, where does it leave anti-malware product testing?

FAME – friendly malware evaluation framework

The FAME framework is intended to facilitate analysis of malicious files, leveraging as much knowledge as possible in order to speed up and automate end-to-end analysis of malware.

VB2017 paper: Crypton - exposing malware's deepest secrets

As malware researchers, a significant part of our work is dedicated to reverse engineering various cryptographic algorithms in order to extract malware’s encrypted content. Julia Karpin and Anna Dorfman describe an automated approach, based on a…

VB2017 paper: Walking in your enemy’s shadow: when fourth‑party collection becomes attribution hell

Attribution is complicated under the best of circumstances. Sparse attributory indicators and the possibility of overt manipulation have proven enough for many researchers to shy away from the attribution space. And yet, we haven’t even discussed the…

Throwback Thursday: CARO: a personal view

As a founding member of CARO (Computer Antivirus Research Organization), Fridrik Skulason was well placed, in August 1994, to shed some light on what might have seemed something of an elitist organisation, and to explain CARO's activities and…


Bulletin Archive