---
read_when:
    - Hai visto uno specifico `checkId` nell'output di `openclaw security audit` e vuoi sapere cosa significa
    - Ti serve la chiave/il percorso della correzione per un dato rilievo
    - Stai facendo il triage della severità in un'esecuzione di audit di sicurezza
summary: Catalogo di riferimento dei checkId emessi da openclaw security audit
title: Controlli di audit di sicurezza
x-i18n:
    generated_at: "2026-04-23T08:29:09Z"
    model: gpt-5.4
    provider: openai
    source_hash: b53a8dc798ecc8c37be43758b741c68772b10c92323ab3d26592d7b3cc2c795e
    source_path: gateway/security/audit-checks.md
    workflow: 15
---

# Controlli di audit di sicurezza

`openclaw security audit` emette rilievi strutturati identificati da `checkId`. Questa
pagina è il catalogo di riferimento per quegli ID. Per il modello di minaccia di alto livello
e le indicazioni di hardening, vedi [Sicurezza](/it/gateway/security).

Valori `checkId` ad alto segnale che vedrai più probabilmente in deployment reali (non
esaustivo):

| `checkId`                                                     | Severità      | Perché è importante                                                                  | Chiave/percorso principale di correzione                                                             | Correzione automatica |
| ------------------------------------------------------------- | ------------- | ------------------------------------------------------------------------------------ | ---------------------------------------------------------------------------------------------------- | --------------------- |
| `fs.state_dir.perms_world_writable`                           | critical      | Altri utenti/processi possono modificare l'intero stato di OpenClaw                  | permessi del filesystem su `~/.openclaw`                                                             | sì                    |
| `fs.state_dir.perms_group_writable`                           | warn          | Gli utenti del gruppo possono modificare l'intero stato di OpenClaw                  | permessi del filesystem su `~/.openclaw`                                                             | sì                    |
| `fs.state_dir.perms_readable`                                 | warn          | La directory di stato è leggibile da altri                                           | permessi del filesystem su `~/.openclaw`                                                             | sì                    |
| `fs.state_dir.symlink`                                        | warn          | La destinazione della directory di stato diventa un altro confine di fiducia         | layout del filesystem della directory di stato                                                       | no                    |
| `fs.config.perms_writable`                                    | critical      | Altri possono modificare autenticazione/policy degli strumenti/configurazione        | permessi del filesystem su `~/.openclaw/openclaw.json`                                               | sì                    |
| `fs.config.symlink`                                           | warn          | I file di configurazione symlinkati non sono supportati per la scrittura e aggiungono un altro confine di fiducia | sostituisci con un normale file di configurazione o punta `OPENCLAW_CONFIG_PATH` al file reale      | no                    |
| `fs.config.perms_group_readable`                              | warn          | Gli utenti del gruppo possono leggere token/impostazioni della configurazione        | permessi del filesystem sul file di configurazione                                                   | sì                    |
| `fs.config.perms_world_readable`                              | critical      | La configurazione può esporre token/impostazioni                                     | permessi del filesystem sul file di configurazione                                                   | sì                    |
| `fs.config_include.perms_writable`                            | critical      | Il file include della configurazione può essere modificato da altri                  | permessi del file include referenziato da `openclaw.json`                                            | sì                    |
| `fs.config_include.perms_group_readable`                      | warn          | Gli utenti del gruppo possono leggere secret/impostazioni inclusi                    | permessi del file include referenziato da `openclaw.json`                                            | sì                    |
| `fs.config_include.perms_world_readable`                      | critical      | Secret/impostazioni inclusi sono leggibili da tutti                                  | permessi del file include referenziato da `openclaw.json`                                            | sì                    |
| `fs.auth_profiles.perms_writable`                             | critical      | Altri possono iniettare o sostituire credenziali modello memorizzate                 | permessi di `agents/<agentId>/agent/auth-profiles.json`                                              | sì                    |
| `fs.auth_profiles.perms_readable`                             | warn          | Altri possono leggere chiavi API e token OAuth                                       | permessi di `agents/<agentId>/agent/auth-profiles.json`                                              | sì                    |
| `fs.credentials_dir.perms_writable`                           | critical      | Altri possono modificare stato di pairing/credenziali del canale                     | permessi del filesystem su `~/.openclaw/credentials`                                                 | sì                    |
| `fs.credentials_dir.perms_readable`                           | warn          | Altri possono leggere lo stato delle credenziali del canale                          | permessi del filesystem su `~/.openclaw/credentials`                                                 | sì                    |
| `fs.sessions_store.perms_readable`                            | warn          | Altri possono leggere trascrizioni/metadati delle sessioni                           | permessi dell'archivio sessioni                                                                      | sì                    |
| `fs.log_file.perms_readable`                                  | warn          | Altri possono leggere log redatti ma comunque sensibili                              | permessi del file di log del gateway                                                                 | sì                    |
| `fs.synced_dir`                                               | warn          | Stato/configurazione in iCloud/Dropbox/Drive amplia l'esposizione di token/trascrizioni | sposta configurazione/stato fuori dalle cartelle sincronizzate                                    | no                    |
| `gateway.bind_no_auth`                                        | critical      | Bind remoto senza secret condiviso                                                   | `gateway.bind`, `gateway.auth.*`                                                                     | no                    |
| `gateway.loopback_no_auth`                                    | critical      | Il loopback con reverse proxy può diventare non autenticato                          | `gateway.auth.*`, configurazione proxy                                                               | no                    |
| `gateway.trusted_proxies_missing`                             | warn          | Gli header del reverse proxy sono presenti ma non attendibili                        | `gateway.trustedProxies`                                                                             | no                    |
| `gateway.http.no_auth`                                        | warn/critical | Le API HTTP del Gateway sono raggiungibili con `auth.mode="none"`                    | `gateway.auth.mode`, `gateway.http.endpoints.*`                                                      | no                    |
| `gateway.http.session_key_override_enabled`                   | info          | I chiamanti delle API HTTP possono sovrascrivere `sessionKey`                        | `gateway.http.allowSessionKeyOverride`                                                               | no                    |
| `gateway.tools_invoke_http.dangerous_allow`                   | warn/critical | Riabilita strumenti pericolosi tramite API HTTP                                      | `gateway.tools.allow`                                                                                | no                    |
| `gateway.nodes.allow_commands_dangerous`                      | warn/critical | Abilita comandi Node ad alto impatto (camera/schermo/contatti/calendario/SMS)        | `gateway.nodes.allowCommands`                                                                        | no                    |
| `gateway.nodes.deny_commands_ineffective`                     | warn          | Le voci deny simili a pattern non corrispondono al testo shell o ai gruppi           | `gateway.nodes.denyCommands`                                                                         | no                    |
| `gateway.tailscale_funnel`                                    | critical      | Esposizione su internet pubblico                                                     | `gateway.tailscale.mode`                                                                             | no                    |
| `gateway.tailscale_serve`                                     | info          | L'esposizione tailnet è abilitata tramite Serve                                      | `gateway.tailscale.mode`                                                                             | no                    |
| `gateway.control_ui.allowed_origins_required`                 | critical      | Control UI non-loopback senza allowlist esplicita degli origin del browser           | `gateway.controlUi.allowedOrigins`                                                                   | no                    |
| `gateway.control_ui.allowed_origins_wildcard`                 | warn/critical | `allowedOrigins=["*"]` disabilita l'allowlisting degli origin del browser            | `gateway.controlUi.allowedOrigins`                                                                   | no                    |
| `gateway.control_ui.host_header_origin_fallback`              | warn/critical | Abilita il fallback origin da header Host (downgrade dell'hardening contro DNS rebinding) | `gateway.controlUi.dangerouslyAllowHostHeaderOriginFallback`                                     | no                    |
| `gateway.control_ui.insecure_auth`                            | warn          | Toggle di compatibilità con autenticazione insicura abilitato                        | `gateway.controlUi.allowInsecureAuth`                                                                | no                    |
| `gateway.control_ui.device_auth_disabled`                     | critical      | Disabilita il controllo dell'identità del dispositivo                                | `gateway.controlUi.dangerouslyDisableDeviceAuth`                                                     | no                    |
| `gateway.real_ip_fallback_enabled`                            | warn/critical | Fidarsi del fallback `X-Real-IP` può permettere spoofing dell'IP sorgente tramite misconfigurazione del proxy | `gateway.allowRealIpFallback`, `gateway.trustedProxies`                                  | no                    |
| `gateway.token_too_short`                                     | warn          | Un token condiviso corto è più facile da forzare con brute force                     | `gateway.auth.token`                                                                                 | no                    |
| `gateway.auth_no_rate_limit`                                  | warn          | Autenticazione esposta senza rate limiting aumenta il rischio di brute force         | `gateway.auth.rateLimit`                                                                             | no                    |
| `gateway.trusted_proxy_auth`                                  | critical      | L'identità del proxy diventa ora il confine di autenticazione                        | `gateway.auth.mode="trusted-proxy"`                                                                  | no                    |
| `gateway.trusted_proxy_no_proxies`                            | critical      | L'autenticazione trusted-proxy senza IP proxy attendibili non è sicura               | `gateway.trustedProxies`                                                                             | no                    |
| `gateway.trusted_proxy_no_user_header`                        | critical      | L'autenticazione trusted-proxy non può risolvere in sicurezza l'identità dell'utente | `gateway.auth.trustedProxy.userHeader`                                                               | no                    |
| `gateway.trusted_proxy_no_allowlist`                          | warn          | L'autenticazione trusted-proxy accetta qualsiasi utente upstream autenticato         | `gateway.auth.trustedProxy.allowUsers`                                                               | no                    |
| `checkId`                                                     | Severità      | Perché è importante                                                                  | Chiave/percorso principale di correzione                                                             | Correzione automatica |
| ------------------------------------------------------------- | ------------- | ------------------------------------------------------------------------------------ | ---------------------------------------------------------------------------------------------------- | --------------------- |
| `gateway.probe_auth_secretref_unavailable`                    | warn          | La probe approfondita non ha potuto risolvere i SecretRef di autenticazione in questo percorso del comando | sorgente auth della probe approfondita / disponibilità di SecretRef                           | no                    |
| `gateway.probe_failed`                                        | warn/critical | La probe live del Gateway è fallita                                                  | raggiungibilità/autenticazione del gateway                                                          | no                    |
| `discovery.mdns_full_mode`                                    | warn/critical | La modalità mDNS full pubblicizza metadati `cliPath`/`sshPort` sulla rete locale     | `discovery.mdns.mode`, `gateway.bind`                                                                | no                    |
| `config.insecure_or_dangerous_flags`                          | warn          | Sono abilitati flag di debug insicuri/pericolosi                                    | più chiavi (vedi dettaglio del rilievo)                                                             | no                    |
| `config.secrets.gateway_password_in_config`                   | warn          | La password del Gateway è memorizzata direttamente nella configurazione              | `gateway.auth.password`                                                                              | no                    |
| `config.secrets.hooks_token_in_config`                        | warn          | Il token bearer degli hook è memorizzato direttamente nella configurazione           | `hooks.token`                                                                                        | no                    |
| `hooks.token_reuse_gateway_token`                             | critical      | Il token di ingresso degli hook sblocca anche l'autenticazione del Gateway           | `hooks.token`, `gateway.auth.token`                                                                  | no                    |
| `hooks.token_too_short`                                       | warn          | Brute force più facile sull'ingresso hook                                            | `hooks.token`                                                                                        | no                    |
| `hooks.default_session_key_unset`                             | warn          | Le esecuzioni dell'agente via hook si distribuiscono su sessioni generate per richiesta | `hooks.defaultSessionKey`                                                                         | no                    |
| `hooks.allowed_agent_ids_unrestricted`                        | warn/critical | I chiamanti hook autenticati possono instradare verso qualsiasi agente configurato   | `hooks.allowedAgentIds`                                                                              | no                    |
| `hooks.request_session_key_enabled`                           | warn/critical | Il chiamante esterno può scegliere `sessionKey`                                      | `hooks.allowRequestSessionKey`                                                                       | no                    |
| `hooks.request_session_key_prefixes_missing`                  | warn/critical | Nessun limite sulle forme delle chiavi di sessione esterne                           | `hooks.allowedSessionKeyPrefixes`                                                                    | no                    |
| `hooks.path_root`                                             | critical      | Il percorso hook è `/`, rendendo più facile la collisione o l'errato instradamento dell'ingresso | `hooks.path`                                                                                | no                    |
| `hooks.installs_unpinned_npm_specs`                           | warn          | I record di installazione degli hook non sono fissati a specifiche npm immutabili    | metadati di installazione hook                                                                       | no                    |
| `hooks.installs_missing_integrity`                            | warn          | I record di installazione degli hook non hanno metadati di integrità                 | metadati di installazione hook                                                                       | no                    |
| `hooks.installs_version_drift`                                | warn          | I record di installazione degli hook divergono dai pacchetti installati              | metadati di installazione hook                                                                       | no                    |
| `logging.redact_off`                                          | warn          | Valori sensibili fuoriescono in log/status                                           | `logging.redactSensitive`                                                                            | sì                    |
| `browser.control_invalid_config`                              | warn          | La configurazione del browser control non è valida prima del runtime                 | `browser.*`                                                                                          | no                    |
| `browser.control_no_auth`                                     | critical      | Browser control esposto senza autenticazione token/password                          | `gateway.auth.*`                                                                                     | no                    |
| `browser.remote_cdp_http`                                     | warn          | Il CDP remoto su HTTP semplice non ha cifratura del trasporto                        | `cdpUrl` del profilo browser                                                                         | no                    |
| `browser.remote_cdp_private_host`                             | warn          | Il CDP remoto punta a un host privato/interno                                        | `cdpUrl` del profilo browser, `browser.ssrfPolicy.*`                                                 | no                    |
| `sandbox.docker_config_mode_off`                              | warn          | La configurazione Docker sandbox è presente ma inattiva                              | `agents.*.sandbox.mode`                                                                              | no                    |
| `sandbox.bind_mount_non_absolute`                             | warn          | I bind mount relativi possono risolversi in modo imprevedibile                       | `agents.*.sandbox.docker.binds[]`                                                                    | no                    |
| `sandbox.dangerous_bind_mount`                                | critical      | La destinazione del bind mount sandbox punta a percorsi di sistema, credenziali o socket Docker bloccati | `agents.*.sandbox.docker.binds[]`                                                        | no                    |
| `sandbox.dangerous_network_mode`                              | critical      | La rete Docker sandbox usa `host` o la modalità di unione namespace `container:*`    | `agents.*.sandbox.docker.network`                                                                    | no                    |
| `sandbox.dangerous_seccomp_profile`                           | critical      | Il profilo seccomp sandbox indebolisce l'isolamento del container                    | `agents.*.sandbox.docker.securityOpt`                                                                | no                    |
| `sandbox.dangerous_apparmor_profile`                          | critical      | Il profilo AppArmor sandbox indebolisce l'isolamento del container                   | `agents.*.sandbox.docker.securityOpt`                                                                | no                    |
| `sandbox.browser_cdp_bridge_unrestricted`                     | warn          | Il bridge browser sandbox è esposto senza restrizione dell'intervallo sorgente       | `sandbox.browser.cdpSourceRange`                                                                     | no                    |
| `sandbox.browser_container.non_loopback_publish`              | critical      | Il container browser esistente pubblica CDP su interfacce non loopback               | configurazione di pubblicazione del container sandbox browser                                        | no                    |
| `sandbox.browser_container.hash_label_missing`                | warn          | Il container browser esistente precede le attuali etichette hash di configurazione   | `openclaw sandbox recreate --browser --all`                                                          | no                    |
| `sandbox.browser_container.hash_epoch_stale`                  | warn          | Il container browser esistente precede l'epoca corrente della configurazione browser | `openclaw sandbox recreate --browser --all`                                                          | no                    |
| `tools.exec.host_sandbox_no_sandbox_defaults`                 | warn          | `exec host=sandbox` fallisce in modalità fail-closed quando il sandbox è disattivato | `tools.exec.host`, `agents.defaults.sandbox.mode`                                                    | no                    |
| `tools.exec.host_sandbox_no_sandbox_agents`                   | warn          | Il `exec host=sandbox` per agente fallisce in modalità fail-closed quando il sandbox è disattivato | `agents.list[].tools.exec.host`, `agents.list[].sandbox.mode`                             | no                    |
| `tools.exec.security_full_configured`                         | warn/critical | L'host exec è in esecuzione con `security="full"`                                    | `tools.exec.security`, `agents.list[].tools.exec.security`                                           | no                    |
| `tools.exec.auto_allow_skills_enabled`                        | warn          | Le approvazioni exec considerano attendibili implicitamente i bin delle Skills       | `~/.openclaw/exec-approvals.json`                                                                    | no                    |
| `tools.exec.allowlist_interpreter_without_strict_inline_eval` | warn          | Le allowlist degli interpreti consentono eval inline senza riapprovazione forzata    | `tools.exec.strictInlineEval`, `agents.list[].tools.exec.strictInlineEval`, allowlist delle approvazioni exec | no              |
| `tools.exec.safe_bins_interpreter_unprofiled`                 | warn          | I bin interprete/runtime in `safeBins` senza profili espliciti ampliano il rischio exec | `tools.exec.safeBins`, `tools.exec.safeBinProfiles`, `agents.list[].tools.exec.*`                | no                    |
| `tools.exec.safe_bins_broad_behavior`                         | warn          | Gli strumenti a comportamento ampio in `safeBins` indeboliscono il modello di fiducia a basso rischio basato sul filtro stdin | `tools.exec.safeBins`, `agents.list[].tools.exec.safeBins` | no                    |
| `tools.exec.safe_bin_trusted_dirs_risky`                      | warn          | `safeBinTrustedDirs` include directory modificabili o rischiose                      | `tools.exec.safeBinTrustedDirs`, `agents.list[].tools.exec.safeBinTrustedDirs`                       | no                    |
| `skills.workspace.symlink_escape`                             | warn          | `skills/**/SKILL.md` del workspace si risolve fuori dalla root del workspace (deriva della catena di symlink) | stato del filesystem del workspace `skills/**`                                           | no                    |
| `plugins.extensions_no_allowlist`                             | warn          | I plugin sono installati senza una allowlist esplicita dei plugin                    | `plugins.allowlist`                                                                                  | no                    |
| `plugins.installs_unpinned_npm_specs`                         | warn          | I record di installazione dei plugin non sono fissati a specifiche npm immutabili    | metadati di installazione plugin                                                                     | no                    |
| `checkId`                                                     | Severità      | Perché è importante                                                                  | Chiave/percorso principale di correzione                                                             | Correzione automatica |
| ------------------------------------------------------------- | ------------- | ------------------------------------------------------------------------------------ | ---------------------------------------------------------------------------------------------------- | --------------------- |
| `plugins.installs_missing_integrity`                          | warn          | I record di installazione dei plugin non hanno metadati di integrità                | metadati di installazione plugin                                                                     | no                    |
| `plugins.installs_version_drift`                              | warn          | I record di installazione dei plugin divergono dai pacchetti installati             | metadati di installazione plugin                                                                     | no                    |
| `plugins.code_safety`                                         | warn/critical | La scansione di sicurezza del codice plugin ha trovato pattern sospetti o pericolosi | codice plugin / sorgente di installazione                                                            | no                    |
| `plugins.code_safety.entry_path`                              | warn          | Il percorso di entry del plugin punta a posizioni nascoste o in `node_modules`      | `entry` del manifest del plugin                                                                      | no                    |
| `plugins.code_safety.entry_escape`                            | critical      | L'entry del plugin esce dalla directory del plugin                                  | `entry` del manifest del plugin                                                                      | no                    |
| `plugins.code_safety.scan_failed`                             | warn          | La scansione di sicurezza del codice plugin non è riuscita a completarsi            | percorso del plugin / ambiente di scansione                                                          | no                    |
| `skills.code_safety`                                          | warn/critical | I metadati/codice dell'installer delle Skills contengono pattern sospetti o pericolosi | sorgente di installazione delle Skills                                                            | no                    |
| `skills.code_safety.scan_failed`                              | warn          | La scansione del codice delle Skills non è riuscita a completarsi                   | ambiente di scansione delle Skills                                                                   | no                    |
| `security.exposure.open_channels_with_exec`                   | warn/critical | Stanze pubbliche/condivise possono raggiungere agenti con exec abilitato            | `channels.*.dmPolicy`, `channels.*.groupPolicy`, `tools.exec.*`, `agents.list[].tools.exec.*`      | no                    |
| `security.exposure.open_groups_with_elevated`                 | critical      | Gruppi aperti + strumenti elevati creano percorsi di prompt injection ad alto impatto | `channels.*.groupPolicy`, `tools.elevated.*`                                                      | no                    |
| `security.exposure.open_groups_with_runtime_or_fs`            | critical/warn | I gruppi aperti possono raggiungere strumenti di comando/file senza protezioni sandbox/workspace | `channels.*.groupPolicy`, `tools.profile/deny`, `tools.fs.workspaceOnly`, `agents.*.sandbox.mode` | no                    |
| `security.trust_model.multi_user_heuristic`                   | warn          | La configurazione sembra multiutente mentre il modello di fiducia del gateway è da assistente personale | separa i confini di fiducia, oppure hardening per utenti condivisi (`sandbox.mode`, deny degli strumenti/scoping workspace) | no |
| `tools.profile_minimal_overridden`                            | warn          | Gli override dell'agente aggirano il profilo globale minimal                        | `agents.list[].tools.profile`                                                                        | no                    |
| `plugins.tools_reachable_permissive_policy`                   | warn          | Gli strumenti dell'estensione sono raggiungibili in contesti permissivi             | `tools.profile` + allow/deny degli strumenti                                                         | no                    |
| `models.legacy`                                               | warn          | Sono ancora configurate famiglie di modelli legacy                                  | selezione del modello                                                                                | no                    |
| `models.weak_tier`                                            | warn          | I modelli configurati sono sotto i livelli attualmente consigliati                  | selezione del modello                                                                                | no                    |
| `models.small_params`                                         | critical/info | Modelli piccoli + superfici strumenti non sicure aumentano il rischio di injection  | scelta del modello + policy sandbox/strumenti                                                       | no                    |
| `summary.attack_surface`                                      | info          | Riepilogo aggregato della postura di autenticazione, canale, strumenti ed esposizione | più chiavi (vedi dettaglio del rilievo)                                                            | no                    |

## Correlati

- [Sicurezza](/it/gateway/security)
- [Configurazione](/it/gateway/configuration)
- [Autenticazione trusted proxy](/it/gateway/trusted-proxy-auth)
