Repository navigation
Architecture
Faraday is composed by the Faraday Server and the Faraday Client with a Server Centric approach. The client talks almost exclusively with the server, and the server is used to syncronize the state of the program between instances.
For the moment, we use the popular No-SQL database CouchDB to provide a few key features needed to improve your workflow, but we're working on replicating those on Faraday Server to simplify the setup.
CouchDB Serves for the following purposes:
- Partial storage
- Notifications feed
- User management
The server provides everything else using a REST API to make queries over sqlite DBs structured according to our Host/Services/Vulnerability model. Our server acts as a web server build upon Twisted.
It is important to remember that, as said, CouchDB will totally be replaced by our Faraday Server in the very near future. All this changes are transparent to the user, nevertheless.
Every user connects to the same Faraday server, which is itself connected to a CouchDB database.
This permits seamless data sharing and syncronization.
The following diagram explains the plugins architecture:
- About
- First steps
- Installation - Server
- Installation - Client
- Using SSL
- Vulnerabilities Database
- Updates
- Usage
- Bug bounties
- Chat and Communication
- Continuous-Scanning
- CSV Exporting & Importing
- Executive Report
- Helpers
- JIRA Integration
- Manage Hosts and Services GUI WEB
- Manage Users
- Manage Workspaces
- Scripts
- Workspace-Diff
- Workspace replication
- Demos
- Architecture
- Plugins
- Burp Proxy Extender
- BeEF
- Evilgrade
- Faraday Plugin
- Immunitys-CANVAS
- Metasploit
- Nessus
- More
- Development
- APIs
- Basic Plugin Development
- Faraday Awards
- FAQ
- Troubleshooting
- Contact us

