Skip to main content

Automation GUI for Android App Analysis

Project description

Description

Automation GUI for Android App Analysis

Installation

pip install autoappanalysis

Usage

Create a config file with the following schema:

// config.json
{
  "log": "autoappanalysis.log",                                // Path to log file
  "pkgName": "com.app",                                        // Package Name
  "vm": "app-vm",                                              // Name of the VM
  "user": "admin",                                             // User Name 
  "pw": "admin",                                               // Password
  "input": "/media/sf_avd",                                    // Path to AVD shared folder on VM
  "output": "/media/sf_results",                               // Path to result shared folder on VM
  "outputHost": "C:\\Users\\admin\\results",                   // Path to result shared folder on host
  "snapshot": "C:\\Users\\admin\\.android\\avd\\analysis.avd", // Path to AVD shared folder on host
  "comparison": [                                              // Array of objects to provide different 
        {                                                      // comparison setup. 
            "name": "01_action_install",                       // Each object holds a comparison name,        
            "first": "init",                                   // a starting snapshot (first) to which the other 
            "second": ["install"],                             // snapshots (second) will be compared against
            "noise": "noise"                                   // name of the noise snapshot
        },                                                      
        {
            "name": "02_action_first_start",
            "first": "install",
            "second": ["first_start"],
            "noise": "noise_install"
        },
        {
            "name": "03_action_guest_login",
            "first": "first_start",
            "second": ["continue_as_guest"],
            "noise": "noise_first_start"
        }
  ],
  "files": [                                                  // Full Paths to files which are going to be
        "/data/data/path/to/app/user.db",                     // extracted for each snapshot
        "/data/data/path/to/app/host.db",
        "/data/data/path/to/app/config.json"
  ],
  "search": {
        "files": [                                           // Path to files which shall be searched
                "C:\\Users\\admin\\results\\**\\*.1.test",   // Accepts globe patterns
        ],
        "actions": [                                        // Each action specified here will be
            {                                               // applied to each files listed before
                "name": "All Occurences",
                "method": "or",
                "words": "appname",
                "format": "wln"
            },
            {
                "name": "Interesting FileTypes",
                "method": "or",
                "words": ".db,.json,.xml,.yml",
                "format": "wln"
            }
        ]
  }
}

Example

python -m autoappanalysis -c config.json

Button Description
Root Starts adbd as root
Create Snapshot Create a AVD Snapshot with Snapshot Name and Snapshot Number and extract all files given by AVD Files to be extracted
Decrypt Snapshots Decrypts all snapshots in VM Input Directory and save the .raw in VM Output Directory + /decrypted
Create .idiff Creates .idiff files from the given comparison in config.json and save them in VM Output Directory + /actions
Analyse .idiff Analyses all .idiff in VM Output Directory + /actions and save the results there
Analyse .db Analyse all AVD Files to be extracted sqlite databases based on given comparison rules in config.json
Uninstall Uninstalls the App given by App Package Name
Extract Files Extract all files given by AVD Files to be extracted. In order to work, Root button need to be pushed first.
Search Files Search given files by provided config and save results within the given paths

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

autoappanalysis-2.1.0.tar.gz (9.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

autoappanalysis-2.1.0-py3-none-any.whl (10.2 kB view details)

Uploaded Python 3

File details

Details for the file autoappanalysis-2.1.0.tar.gz.

File metadata

  • Download URL: autoappanalysis-2.1.0.tar.gz
  • Upload date:
  • Size: 9.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.10.8

File hashes

Hashes for autoappanalysis-2.1.0.tar.gz
Algorithm Hash digest
SHA256 7c95328ac4cce3a31e53660da1a2fe3f4a4e95f5d8000f8ae4ec9da313d1adab
MD5 ffe1a8325cc48449e4709101dd3b4cb1
BLAKE2b-256 67db4c89e8ef28c17d24c95228d804bf55fcab949758b18fad784a7a2140eb69

See more details on using hashes here.

File details

Details for the file autoappanalysis-2.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for autoappanalysis-2.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 80cf8ef47ec477ea9645bc3cacadacbcd8c4ff7cba6dbf52c9705b7abc87cf5a
MD5 38a31896a403067a95f9bc6e35db9a59
BLAKE2b-256 2893424ce2f198f2fb0e2d96b399065b273c68bcc819f6ca06165753ca14a54f

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page