Inspired by popular security frameworks such as Pacu and Metasploit, Stratustryke aims to consolidate cloud security tooling for multiple cloud providers into one easily configurable framework. The Stratustryke framework architecture is based off @rsmusllp's and @zeroSteiner's Termineter, and leverages modified versions of it's various components in addition to new functionality supporting Stratustryke's specific use-cases.
user@linux:~: ./stratustryke.py
______ __ __ __
/ __/ /________ _/ /___ _____ / /_______ __/ /_____
_\ \/ __/ __/ _ `/ __/ // (_-</ __/ __/ // / '_/ -_)
/___/\__/_/ \_,_/\__/\_,_/___/\__/_/ \_, /_/\_\__/
/___/
stratustryke v0.2.1b
Loaded modules: 17
stratustryke >
Strautsryke can be installed with Git and Pip3. The earliest version of Python supported is currently Python3.7. Use of a Python virtual environment is reccomended to prevent dependency issues.
user@linux:~: git clone https://github.com/vexance/Stratustryke.git
user@linux:~: python3 -m venv ./Stratustryke
user@linux:~: source ./Stratustryke/bin/activate
user@linux:~: python3 -m pip install -r ./Stratustryke/requirements.txt
Note: Custom modules and packages added in a user's installation may require additional requirements which should be included in
Stratustryke/stratustryke/modules/custom/requirements.txt
user@linux:~: cp /path/to/CustomStratustrykeContent ./Stratustryke/stratustryke/modules/custom/
user@linux:~: python3 -m pip install -r ./Stratustryke/stratustryke/modules/custom/requirements.txt
Stratustryke supports two primary methods of use - interactive and resource-based. By default, Stratustryke will launch an interactive command interpreter from which the user can configure options, manage credentials, and execute modules. Alternatively, a resource file containing interpreter commands can be specified at launch, which will make Stratustryke execute the commands from the resource file.
# Interactive
user@linux:~: ./stratustryke.py
# From resource file
user@linux:~: ./stratustryke.py -r path/to/file.rc
For a complete list of commands supported by the interpreter, refer to commands.md.
Included within Stratustryke is a directory untracked by git (Stratustryke/stratustryke/modules/custom/
). To load private modules into Stratustryke, simply copy the modules into the custom directory or any sub-directory contained within it. These modules will be loaded so long as the modules implement the requirements detailed in the contribution guidelines.
Stratustryke is implemented with several core components that integrate together to provide an interactive framework for use of modular tools (modules). The following sections provides a brief description regarding the purpose of each component and its interactions with other components.
Stratustryke/stratustryke/modules
directory and providing search and access capabilities for modules after import. The module manager does this by storing an instance of each module class and maintaining a handle to the instance of the object.run
command. In other words, each module is a seperate tool that is included within the framework's capabilties.Stratustryke was built with the intent to facilitate contribution to the framework. For additional details on how to contribute, including an example of how to write a Stratustryke module, refer to contributing.md
If information on this page is inaccurate, missing, or out-of-date, please open a ticket here, tagging it with the 'documentation' and 'question' tags.