
Interfaccia a riga di comando di Faraday
Usa Faraday direttamente dal tuo terminale preferito

faraday-cli è il client ufficiale che rende più semplice automatizzare i tuoi flussi di lavoro di sicurezza.
Prima di installare, consigliamo di creare e attivare un ambiente virtuale Python per evitare di influire sui pacchetti Python del sistema. Ad esempio:
python3 -m venv .venv
source .venv/bin/activate
Puoi anche usare virtualenv se preferisci. Una volta attivo l'ambiente virtuale, esegui i comandi di installazione riportati di seguito.
pip install faraday-cli
git clone https://github.com/infobyte/faraday-cli.git
cd faraday-cli
pip install .
Per maggiori informazioni puoi consultare la nostra documentazione
Configura l'autenticazione per farday-cli
$ faraday-cli auth

Quando crei un workspace, per impostazione predefinita viene selezionato come attivo, a meno che tu non utilizzi il flag "-d"
$ faraday-cli workspace create some_name
✔ Created workspace: some_name
$ faraday-cli workspace select some_name
✔ Selected workspace: some_name
$ faraday-cli list_ws
NAME HOSTS SERVICES VULNS ACTIVE PUBLIC READONLY
--------- ------- ---------- ------- -------- -------- ----------
some_name 14 13 39 True False False
$ faraday-cli host list
ID IP OS HOSTNAMES SERVICES VULNS
---- ----------- ------- --------------- ---------- -------
574 127.0.0.1 unknown 1 3
566 127.0.0.10 unknown 1 3
569 127.0.0.11 unknown 1 3
568 127.0.0.12 unknown 1 3
570 127.0.0.13 unknown 1 3
576 127.0.0.2 unknown 1 3
565 127.0.0.3 unknown 1 3
572 127.0.0.4 unknown 1 3
573 127.0.0.5 unknown 1 3
567 127.0.0.6 unknown 1 3
571 127.0.0.7 unknown 1 3
564 127.0.0.8 unknown 1 3
575 127.0.0.9 unknown 1 3
590 58.76.184.4 unknown www.googlec.com 0 -
$ faraday-cli host get 574
$ faraday-cli host get 574
Host:
ID IP OS HOSTNAMES OWNER OWNED VULNS
---- --------- ------- ----------- ------- ------- -------
574 127.0.0.1 unknown faraday False 3
Services:
ID NAME DESCRIPTION PROTOCOL PORT VERSION STATUS VULNS
---- ------ ------------- ---------- ------ --------- -------- -------
2638 ssh tcp 22 unknown open 2
Vulnerabilities:
ID NAME SEVERITY STATUS CONFIRMED TOOL
----- ---------------------------------------- ---------- -------- ----------- -------
13509 SSH Weak Encryption Algorithms Supported MED opened False Openvas
13510 SSH Weak MAC Algorithms Supported LOW opened False Openvas
13511 TCP timestamps LOW opened False Openvas
$ faraday-cli host create -d \''[{"ip": "stan.local", "description": "some server"}]'\'
Oppure passalo tramite pipe
$ echo '[{"ip": "1.1.1.5", "description": "some text"}]' | faraday-cli host create --stdin
L'escaping delle virgolette singole (\') è necessario solo quando lo si utilizza come comando. Nella shell o usando le pipe non è necessario
$ faraday-cli tool report "/path/to/report.xml"

$ faraday-cli ping -c 1 www.google.com

Faraday Agent locali (i runner del dispatcher). Accessibili come agent, agents,
runner o runners (tutti equivalenti).
$ faraday-cli agent list
id name active status executors
---- -------- -------- -------- -----------
8 internal True online nmap
$ faraday-cli agent run -a 1 -e nmap -p \''{"target": "www.google.com"}'\'
Run executor: internal/nmap [{'successful': True}]
I cloud agent sono scanner di sicurezza lato server (l'API v3/cloud_agents),
distinti dai runner locali descritti sopra. FaradAI è uno di questi scanner, con un proprio
comando e scorciatoie di primo livello.
# Quick FaradAI pentest (standard tier — 20 rounds)
$ faraday-cli pentest --target https://example.com
# Deeper audit (80 rounds), and watch it until it finishes
$ faraday-cli pentest --target https://example.com --advanced --watch
# Triage the existing findings of a workspace
$ faraday-cli triage -w my_workspace --severities critical,high --reproduce
Elenca ed esegui qualsiasi cloud agent in modo generico:
$ faraday-cli scanners list
ID NAME SLUG CATEGORY LAST_RUN
---- -------------- -------------- --------- ----------
2 FaradAI faradai pentest -
4 FaradAI Triage faradai-triage triage -
$ faraday-cli scanners run --agent faradai -w my_workspace \
--param TARGET=https://example.com --param ROUNDS=20
Nessun server Faraday connesso?
pentest/triagericadono sul SaaS FaradAI-scan e ti guidano nella creazione di un account al primo utilizzo. Consulta la documentazione FaradAI per la registrazione e i dettagli su--standalone.
Faraday-cli può essere usato come una shell e disporre degli stessi comandi che hai come cli

Ad esempio, esegui nmap per tutti gli host in faraday che ascoltano sulla porta 443 e importa i risultati in faraday
$ faraday-cli host list --port 443 -ip | nmap -iL - -oX /tmp/nmap.xml && faraday-cli process_report /tmp/nmap.xml
Usa uno strumento come assetfinder per eseguire una ricerca dei domini, scansionarli con nmap e inviare i risultati a faraday
$ assetfinder -subs-only example.com| sort | uniq |awk 'BEGIN { ORS = ""; print " {\"target\":\""}
{ printf "%s%s", separator, $1, $2
separator = ","}END { print "\"}" }' | faraday-cli agent run -a 1 -e nmap --stdin