Usage Guide
Run Methods
The easiest and recommended way to run the application is to use the aphids-cli client. This method requires:
- Python
- Docker
- options.yaml
- config.yaml
Steps
The docker container is fairly large as it contains a multitude of pentest tools, wordlists (seclists) etc... It is highly recommended to pull down the container first. The aphids-cli client is dependent on the container and provides a more convenient interface for interacting with the container.
Installation/Setup
- Get the Container
docker pull ghcr.io/darksidesecurity/aphids:latest
- Install CLI
pip install git+https://github.com/darksidesecurity/aphids.git
Config Files
- You can generate an options file in the Hive platform or you can use the sample in these docs.
- Register for the SaaS platform and get your config file for use with the Hive.
Running Aphids
Make sure you have docker running, the container pulled down, and the app installed. It should be as simple as running:
aphids-cli -o options.yaml -c config.yaml
Help
__________________________________________
| |
| Aphids CLI |
|__________________________________________|
version 1.0
usage: aphids-cli.py [-h] -o options.yaml [-c [config.yaml]] [-sp /DevCode/MyApplication/] [-v [VERBOSE]] [-t [TOOL_OUTPUT]] [-d [DEBUG]] [-i IMAGE]
OPTIONS:
-h, --help show this help message and exit
-o options.yaml, --options options.yaml
Options file path (See Sample options.yaml)
-c [config.yaml], --config [config.yaml]
Configuration file path (See Sample config.yaml)
-sp /DevCode/MyApplication/, --static-path /DevCode/MyApplication/
A relative or absolute path for running scans on a local directory, this will become the working directory.
-v [VERBOSE], --verbose [VERBOSE]
Enable verbose mode to see module execution in real time.
-t [TOOL_OUTPUT], --tool-output [TOOL_OUTPUT]
Write individual tool output to working directory.
-d [DEBUG], --debug [DEBUG]
Debug mode.
-i IMAGE, --image IMAGE
Custom Container Name
Example: python aphids-cli.py -o options.yaml -c config.yaml
Arguments
-h, --help
Display the help context
-o, --options options.yaml
This is the file the contains the attack modules to run, and their arguments. In addition, this file contains the base configuration and other operational items required for the SaaS platform.
-c, --config config.yaml
Used for providing identity information to the SaaS platform.
-sp, --static-path /DevCode/MyApplication
Use this to map a separate path than your working directory. This is required for options that are performing static analysis on a folder on the host machine.
WARNING: Output will be written to this directory as well.
Example:
aphids-cli -o options.yaml -c config.yaml -sp /Projects/Development/MyApplicationCode
-v, --verbose
... Not yet implemented
-t, --tool-output
Used to clean up any output generated from the scans. Not yet implemented
-d, --debug
... Not yet implemented.
-i, --image
This is to specify an alternate docker image to use in place of the default for the application. Specifying a custom docker image can allow you to clone the Aphids-Core repository, modify the existing container and run docker build. Using this method you can fully customize the docker container and still use it with our SaaS platform and this command line interface.
Example:
aphids-cli -o ~/Downloads/options.yaml -c ~/Downloads/config.yaml -i aphids-custom:latest