This repository has been archived by the owner on Dec 16, 2022. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 69
Architecture
Seth Art edited this page Jun 16, 2019
·
2 revisions
Under the hood
- Celery - Celery is used to execute your commands asynchronously
- Redis - Celery submits tasks to, and pulls tasks from, a local instance of Redis (binds to localhost)
- Amass/Sublist3r : celerystalk's subdomain command uses amass and Sublist3r to find subdomains
- Aquatone celerystalk's screenshots command uses aquatone to take screenshots of every url identified using any scanner tool
- SQLite is used to persist data and manage workspaces
Basic Workflow
- celerystalk reads your config file
- Celery starts a local worker which spawns 6 worker processes by default (runs 6 concurrent commands)
- celerystalk reads the scan files and creates a celery task for each command it will run against each service. These tasks are sent to Redis
- The Celery worker pulls the tasks from Redis and executes the commands you specified in your config file
- Output is saved to your output directory, but the lots of other good info is saved to the SQLite database locally