Skip to content

abdesslem/malwareHunter

Repository files navigation

MalwareHunter

What is MalwareHunter

In three words, MalwareHunter is a malware analysis application. What does that mean? It simply means that you can throw any suspicious file at it and it will provide you back some static information as well as a detailed results outlining what such file did when executed inside an isolated environment..

Install Requirements

  • Install the latest version of VirtualBox
$ sudo apt-get install virtualbox virtualbox-guest-additions
  • Create a VM running Windows, named 'winxp'
  • Create a read-only shared folder (You can do this using the VirtualBox GUI interface).
$ VBoxManage sharedfolder add “winxp” \
--name “malware” \
--hostpath “/Users/<user>/Desktop/vbox/malware” \
--readonly
  • Map the shared folder to a drive, Log on to the VM and add a static mapping to associate the shared folder with a drive letter.
C:\> net use X: \\vboxsvr\malware /PERSISTENT:YES
  • Take a snapshot
$ VBoxManage snapshot “winxp” take “cleanimg”
  • Install Volatility
$ svn checkout http://volatility.googlecode.com/svn/trunk Volatility
  • Install Snort, Inetsim and tshark
$ apt-get install snort inetsim tshark

Install and Run

$ git clone https://github.com/abdesslem/malwareHunter.git
$ cd malwareHunter  

Run the tools in command line or web application

$ python main.py or python mainGui.py

Purpose

The purpose of the malwareHunter is to determine:

  • Static information (packers, strings, URL,...)
  • The nature and purpose of the malware
  • Interaction with file system
  • Interaction with the registry
  • Interaction with the network

And these functionalities are achieved as follow:

  • Takes sample as input
  • Perform statis analysis
  • Reverts VM to clean snapshot
  • Starts the VM
  • Transfers the malware to VM
  • Runs the monitorings tools
  • Executes the malware for the specified time
  • Stops the monitorings tools
  • Suspends The VM
  • Acquires the memory image
  • Performs memory analysis using Volatility framework
  • Stores the results (Final reports, pcaps and malicious artifacts for later analysis)

Components

Modules

To get some information about the file, such as URL, strings, packers, anti-debug ... we used the peframe modules. This directory contain the code responsible for the static analysis.

Web

The project's web interface is built with Bottle. Bottle is a fast, simple and lightweight WSGI micro web-framework for Python. It isdistributed as a single file module and has no dependencies other than the Python Standard Library.

Sandbox

To be able to collect valuable data, it's important to run the sample in an isolated environement and automate the process of dynamic analysis.

Bitdeli Badge

About

Static and automated/dynamic malware analysis

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages