Coder Social home page Coder Social logo

mohammadnassiri / mama Goto Github PK

View Code? Open in Web Editor NEW
1.0 1.0 0.0 103 KB

Multi Agent Malware Analyzer Framework

Python 74.00% CSS 3.16% HTML 22.84%
malware malware-analysis malware-analyzer malware-research django winapioverride pintool dynamic-analysis

mama's Introduction

MAMA

Multi Agent Malware Analyzer Framework. MAMA can control virtual machines and send malware to them for analyzing. After malware analyzed, its behavior logs and screenshots will sent to the server. This framework can be used to automating malware dynamic analysis was done by researchers manually. Each client as a virtual machine can run an agent. Agents do malware tracing and have communication protocol to the server. One of the agents, developed to use pintool and winapioverride, can be accessed from MAMA-Agent.

Install

The server has been written on Django framework and you can install it by this way:

git clone https://github.com/mohammadnassiri/MAMA.git
cd MAMA
pip3 install -r requirements.txt
python3 manage.py serve

Config

Configuration can be made from .env file. First, generate new secret key:

python3 -c "import string,random; uni=string.ascii_letters+string.digits+string.punctuation; print(repr(''.join([random.SystemRandom().choice(uni) for i in range(random.randint(45,50))])))"

Also .env file has below properties:

  • MACHINE_FILE_TIMEOUT: Virtual machine will revert after this time if script isn't responding (minutes).
  • MACHINE_HW_TIMEOUT: Virtual machine will revert after this time if machine isn't responding (minutes).
  • MACHINE_SLEEP_POWEROFF: Time to sleep after machine powered off (seconds).
  • MACHINE_SLEEP_RESTORE: Time to sleep before restore from snapshot (seconds).
  • MACHINE_RESTORE_RETRY_LIMIT: Limit of efforts to wakeup the machine.
  • MACHIN_POWERON_WAIT: Time to sleep after machine powered on (seconds).

Server

MAMA's server can:

  • Send or receive samples and traced logs.
  • Control virtual machines through VBoxManage.exe
  • Add or remove virtual machines dynamically.
  • Save results and states in the database.
  • Check client's status periodically.

We will happy to listen issues and suggestions.

mama's People

Contributors

mohammadnassiri avatar

Stargazers

 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.