openclaw security
Strumenti di sicurezza (audit + correzioni facoltative).
Correlati:
- Guida alla sicurezza: Security
Audit
session.dmScope="per-channel-peer" (oppure per-account-channel-peer per i canali multi-account) per le inbox condivise.
Questo serve per l’hardening di inbox cooperative/condivise. Un singolo gateway condiviso da operatori reciprocamente non fidati/avversari non è una configurazione consigliata; separa i confini di fiducia con gateway distinti (o utenti/host OS separati).
Emette anche security.trust_model.multi_user_heuristic quando la configurazione suggerisce un probabile ingresso condiviso da più utenti (ad esempio policy DM/gruppo aperta, target di gruppo configurati o regole mittente wildcard), e ricorda che il modello di fiducia predefinito di OpenClaw è quello di un assistente personale.
Per configurazioni intenzionalmente multiutente, la guida dell’audit consiste nel sandboxare tutte le sessioni, mantenere l’accesso al filesystem limitato al workspace e tenere identità o credenziali personali/private fuori da quel runtime.
Avvisa inoltre quando vengono usati modelli piccoli (<=300B) senza sandboxing e con strumenti web/browser abilitati.
Per l’ingresso webhook, avvisa quando hooks.token riutilizza il token del gateway, quando hooks.token è corto, quando hooks.path="/", quando hooks.defaultSessionKey non è impostato, quando hooks.allowedAgentIds non è limitato, quando sono abilitati gli override della sessionKey della richiesta e quando gli override sono abilitati senza hooks.allowedSessionKeyPrefixes.
Avvisa inoltre quando sono configurate impostazioni sandbox Docker mentre la modalità sandbox è disattivata, quando gateway.nodes.denyCommands usa voci inefficaci simili a pattern/sconosciute (solo corrispondenza esatta sul nome del comando del nodo, non filtraggio del testo shell), quando gateway.nodes.allowCommands abilita esplicitamente comandi nodo pericolosi, quando tools.profile="minimal" globale viene sovrascritto da profili strumenti a livello agente, quando gruppi aperti espongono strumenti runtime/filesystem senza protezioni sandbox/workspace e quando gli strumenti dei plugin di estensione installati potrebbero essere raggiungibili con una policy strumenti permissiva.
Segnala anche gateway.allowRealIpFallback=true (rischio di spoofing degli header se i proxy sono configurati male) e discovery.mdns.mode="full" (perdita di metadati tramite record TXT mDNS).
Avvisa inoltre quando il browser sandbox usa la rete Docker bridge senza sandbox.browser.cdpSourceRange.
Segnala anche modalità di rete sandbox Docker pericolose (incluse unioni di namespace host e container:*).
Avvisa inoltre quando i container Docker esistenti del browser sandbox hanno etichette hash mancanti/obsolete (ad esempio container precedenti alla migrazione senza openclaw.browserConfigEpoch) e consiglia openclaw sandbox recreate --browser --all.
Avvisa inoltre quando i record di installazione di plugin/hook basati su npm non sono fissati a una versione, non hanno metadati di integrità o divergono dalle versioni dei pacchetti attualmente installate.
Avvisa quando le allowlist dei canali si basano su nomi/email/tag modificabili invece che su ID stabili (Discord, Slack, Google Chat, Microsoft Teams, Mattermost, ambiti IRC ove applicabile).
Avvisa quando gateway.auth.mode="none" lascia le API HTTP del gateway raggiungibili senza un segreto condiviso (/tools/invoke più qualunque endpoint /v1/* abilitato).
Le impostazioni con prefisso dangerous/dangerously sono override espliciti dell’operatore da usare in casi estremi; abilitarne una non costituisce, di per sé, una segnalazione di vulnerabilità di sicurezza.
Per l’inventario completo dei parametri pericolosi, vedi la sezione “Insecure or dangerous flags summary” in Security.
Comportamento di SecretRef:
security auditrisolve i SecretRef supportati in modalità sola lettura per i relativi percorsi target.- Se un SecretRef non è disponibile nel percorso di comando corrente, l’audit continua e riporta
secretDiagnostics(invece di andare in crash). --tokene--passwordsovrascrivono solo l’autenticazione per la probe approfondita per quell’invocazione del comando; non riscrivono la configurazione né le mappature SecretRef.
Output JSON
Usa--json per controlli CI/policy:
--fix e --json sono combinati, l’output include sia le azioni di correzione sia il report finale:
Cosa cambia --fix
--fix applica rimedi sicuri e deterministici:
- cambia i comuni
groupPolicy="open"ingroupPolicy="allowlist"(incluse le varianti per account nei canali supportati) - quando la policy di gruppo di WhatsApp viene cambiata in
allowlist, inizializzagroupAllowFromdal fileallowFrommemorizzato quando tale elenco esiste e la configurazione non definisce giàallowFrom - imposta
logging.redactSensitiveda"off"a"tools" - rende più restrittivi i permessi per file di stato/configurazione e file sensibili comuni
(
credentials/*.json,auth-profiles.json,sessions.json, sessione*.jsonl) - rende inoltre più restrittivi i file inclusi nella configurazione referenziati da
openclaw.json - usa
chmodsugli host POSIX e reseticaclssu Windows
--fix non:
- ruota token/password/chiavi API
- disabilita strumenti (
gateway,cron,exec, ecc.) - modifica le scelte di bind/auth/esposizione di rete del gateway
- rimuove o riscrive plugin/Skills