GithubHelp home page GithubHelp logo

themalwarenews / medusa Goto Github PK

View Code? Open in Web Editor NEW

This project forked from ch0pin/medusa

0.0 0.0 0.0 51.82 MB

Binary instrumentation framework based on FRIDA

Home Page: https://github.com/Ch0pin/medusa/wiki

License: GNU General Public License v3.0

Shell 7.47% JavaScript 12.95% Python 79.50% Dockerfile 0.08%

medusa's Introduction

Description

MEDUSA is an extensible and modularized framework that automates processes and techniques practiced during the dynamic analysis of Android Applications.

Installation

  1. Clone this repo
  2. Navigate to the medusa's directory
  3. Run the following command:
$ pip install -r requirements.txt --upgrade

Using docker

You can find the docker file in the medusa/ directory.

  1. Build with
$ docker build -t medusa:tag1 ./
  1. Run with
$ docker run --name medusa --net=host --rm -it medusa:tag1
  1. Run adbd in tcp/ip mode in your physical device or emulator
$ adb tcpip 5555 
  1. Connect to from the image to your device using:
root@docker# adb connect device_ip:5555

System requirements:

  • Linux or macOS (currently medusa doesn't support windows)
  • Python 3 (Use the latest python release and not the one shiped with MacOS to avoid issues with using libedit instead of GNU's readline)
  • Rooted device or emulator
  • adb
  • FRIDA server (running on the mobile device)

Usage

Check our wiki page for usage details.

Demos:

Medusa consists of two main scripts: medusa.py and mango.py:

Using medusa.py

The main idea behind MEDUSA is to be able to add or remove hooks for Java or Native methods in a large scale while keeping the process simple and effective. MEDUSA has more than 90 modules which can be combined, each one of them dedicated to a set of tasks. Indicatively, some of these tasks include:

  • SSL pinning bypass
  • UI restriction bypass (e.g. Flag secure, button enable)
  • Class enumeration
  • Monitoring of:
    • Encryption process (keys, IVs, data to be encrypted)
    • Intents
    • Http communications
    • Websockets
    • Webview events
    • File operations
    • Database interactions
    • Bluetooth operations
    • Clipboard
  • Monitoring of API calls used by malware applications, such as:
    • Spyware
    • Click Fraud
    • Toll Fraud
    • Sms Fraud

Furthermore you can intercept Java or Native methods that belong to 3rd party apps or create complex frida modules with just few simple commands.

Using mango.py

Mango is medusa's twin brother which can be used to:

  • Parse and analyse the Android manifest
  • Enumerate an application's attack entry points (exported activities, deeplinks, services etc.)
  • Keep track of all your analysed applications
  • Automate boring processes like:
    • Set up a MITM
    • Patching
    • Wrap adb commands
    • Set/View/Reset the device's proxy configuration

...and many many more

Updates:

(12/2022) Using the translator script:

  1. Replace the default google_trans_new.py of you google_trans_new python package with the one from the utils/google_trans_new.py
  2. Import it with medusa>use helpers/tranlsator

Contribute by:

  • Making a pull request
  • Creating a medusa module (see how to)
  • Reporting an error/issue
  • Suggesting an improvement
  • Making this project more popular by sharing it or giving a star
  • Buying a treat:

Bitcoin (BTC) Address: bc1qhun6a7chkav6mn8fqz3924mr8m3v0wq4r7jchz

Ethereum (ETH) Address: 0x0951D1DD2C9F57a9401BfE7D972D0D5A65e71dA4

Screenshots

- SSL Unpinning

ssl unpinning

- Intent Monitoring

Intent monitoring

- Webview Monitoring

Webview monitoring

- File/Content provider monitoring

File and content providers

- Native Libraries Enumeration

Screenshot 2020-09-22 at 16 41 10

- Memory READ/WRITE/SEARCH (interactive mode):

Screenshot 2020-09-22 at 16 41 10

- Personal information exfiltration monitoring

Hooks api calls which found to be common for this kind of malware, including:

  • Contact exfiltration
  • Call log exfiltration
  • Camera usage
  • Microphone usage
  • Location tracking
  • File uploading
  • Media recording
  • Clipboard tracking
  • Device recon
  • Screenshot capture

- Translation

Translates the application's UI by hooking 'setText' calls

CREDITS:

medusa's People

Contributors

ch0pin avatar rscloura avatar giorgosioak avatar laikash avatar erev0s avatar yazgoo avatar pingmeonsaturday 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.