Skip to content

2. Configuration

projectbtle edited this page Nov 1, 2019 · 1 revision

Configuring Jandroid

There are a number of configuration options available with Jandroid, all of which can be set in the config/jandroid.conf file. The file is structured in the way that .ini files typically are.

Configuration Options

The available configuration options are:

[LOGGING]

  • LOG_LEVEL - One of [CRITICAL, ERROR, WARNING, INFO, DEBUG], in increasing order of verbosity. {Default=INFO}

[ANALYSIS]

  • NUM_ANALYSIS_INSTANCES - An integer value specifying the number of threads to run. A higher number generally means faster execution due to parallel processing, but will of course result in higher RAM use {Default=1}

[NEO4J]

  • URL - The URL to use to connect to the neo4j database. {Default=http://localhost:7474}
  • USERNAME - The username for the neo4j database. {Default=neo4j}
  • PASSWORD - The password for the neo4j database. {Default=n3o4j}
  • NODE_IDENTIFIER - A "primary key" to use for nodes within the graph database. {Default=nodename}

[CODEPARAMS]

  • KEEP_INTERACTIVE_ELEMENTS - True/False. If True, calls from interactive elements such as onClick will be retained. Note that setting this to True could result in a lot of False Positives or unusable points being included. {Default=False}

[TRACEPARAMS]

  • TRACE_LENGTH_MAX - The maximum length for Android trace chains within a single app. {Default=20}

Sample Config File

The default config file for Jandroid is as below:

[LOGGING]
#One of [CRITICAL, ERROR, WARNING, INFO, DEBUG], in increasing order of verbosity.
LOG_LEVEL=INFO

[ANALYSIS]
# A single analysis instance can sometimes use 50 times as much memory as the filesize of the APK that it is analysing, so set this parameter carefully!
NUM_ANALYSIS_INSTANCES=1

[NEO4J]
URL=http://localhost:7474
USERNAME=neo4j
PASSWORD=n3o4j
NODE_IDENTIFIER=nodename

[TRACEPARAMS]
# The maximum length for trace chains within a single app.
TRACE_LENGTH_MAX=20

[CODEPARAMS]
KEEP_INTERACTIVE_ELEMENTS=False