Gateway

Contrôles d’audit de sécurité

openclaw security audit émet des constats structurés indexés par checkId. Cette page est le catalogue de référence pour ces ID. Pour le modèle de menace général et les recommandations de durcissement, consultez Sécurité.

Valeurs checkId à forte valeur informative que vous verrez très probablement dans des déploiements réels (liste non exhaustive):

checkId Gravité Pourquoi c’est important Clé/chemin de correction principal Correction automatique
fs.state_dir.perms_world_writable critique D’autres utilisateurs/processus peuvent modifier tout l’état OpenClaw permissions du système de fichiers sur ~/.openclaw oui
fs.state_dir.perms_group_writable avertissement Les utilisateurs du groupe peuvent modifier tout l’état OpenClaw permissions du système de fichiers sur ~/.openclaw oui
fs.state_dir.perms_readable avertissement Le répertoire d’état est lisible par d’autres permissions du système de fichiers sur ~/.openclaw oui
fs.state_dir.symlink avertissement La cible du répertoire d’état devient une autre frontière de confiance disposition du système de fichiers du répertoire d’état non
fs.config.perms_writable critique D’autres peuvent modifier la politique d’authentification/d’outils/la configuration permissions du système de fichiers sur ~/.openclaw/openclaw.json oui
fs.config.symlink avertissement Les fichiers de configuration liés par symlink ne sont pas pris en charge en écriture et ajoutent une autre frontière de confiance remplacer par un fichier de configuration standard ou pointer OPENCLAW_CONFIG_PATH vers le vrai fichier non
fs.config.perms_group_readable avertissement Les utilisateurs du groupe peuvent lire les jetons/paramètres de configuration permissions du système de fichiers sur le fichier de configuration oui
fs.config.perms_world_readable critique La configuration peut exposer des jetons/paramètres permissions du système de fichiers sur le fichier de configuration oui
fs.config_include.perms_writable critique Le fichier inclus de configuration peut être modifié par d’autres permissions du fichier inclus référencé depuis openclaw.json oui
fs.config_include.perms_group_readable avertissement Les utilisateurs du groupe peuvent lire les secrets/paramètres inclus permissions du fichier inclus référencé depuis openclaw.json oui
fs.config_include.perms_world_readable critique Les secrets/paramètres inclus sont lisibles par tout le monde permissions du fichier inclus référencé depuis openclaw.json oui
fs.auth_profiles.perms_writable critique D’autres peuvent injecter ou remplacer des identifiants de modèle stockés permissions de agents/<agentId>/agent/auth-profiles.json oui
fs.auth_profiles.perms_readable avertissement D’autres peuvent lire les clés API et les jetons OAuth permissions de agents/<agentId>/agent/auth-profiles.json oui
fs.credentials_dir.perms_writable critique D’autres peuvent modifier l’état d’appairage/d’identifiants du canal permissions du système de fichiers sur ~/.openclaw/credentials oui
fs.credentials_dir.perms_readable avertissement D’autres peuvent lire l’état des identifiants du canal permissions du système de fichiers sur ~/.openclaw/credentials oui
fs.sessions_store.perms_readable avertissement D’autres peuvent lire les transcriptions/métadonnées de session permissions du stockage de sessions oui
fs.log_file.perms_readable avertissement D’autres peuvent lire des journaux expurgés mais encore sensibles permissions du fichier journal du Gateway oui
fs.synced_dir avertissement L’état/la configuration dans iCloud/Dropbox/Drive élargit l’exposition des jetons/transcriptions déplacer la configuration/l’état hors des dossiers synchronisés non
gateway.bind_no_auth critique Liaison distante sans secret partagé gateway.bind, gateway.auth.* non
gateway.loopback_no_auth critique Un loopback avec proxy inverse peut devenir non authentifié gateway.auth.*, configuration du proxy non
gateway.trusted_proxies_missing avertissement Des en-têtes de proxy inverse sont présents mais ne sont pas approuvés gateway.trustedProxies non
gateway.http.no_auth avertissement/critique API HTTP du Gateway accessibles avec auth.mode="none" gateway.auth.mode, gateway.http.endpoints.* non
gateway.http.session_key_override_enabled info Les appelants de l’API HTTP peuvent remplacer sessionKey gateway.http.allowSessionKeyOverride non
gateway.tools_invoke_http.dangerous_allow avertissement/critique Réactive des outils dangereux via l’API HTTP gateway.tools.allow non
gateway.nodes.allow_commands_dangerous avertissement/critique Active des commandes de nœud à fort impact (caméra/écran/contacts/calendrier/SMS) gateway.nodes.allowCommands non
gateway.nodes.deny_commands_ineffective avertissement Les entrées de refus de type motif ne correspondent ni au texte shell ni aux groupes gateway.nodes.denyCommands non
gateway.tailscale_funnel critique Exposition à l’Internet public gateway.tailscale.mode non
gateway.tailscale_serve info L’exposition au tailnet est activée via Serve gateway.tailscale.mode non
gateway.control_ui.allowed_origins_required critique Control UI non-loopback sans liste d’autorisation explicite des origines de navigateur gateway.controlUi.allowedOrigins non
gateway.control_ui.allowed_origins_wildcard avertissement/critique allowedOrigins=["*"] désactive la liste d’autorisation des origines de navigateur gateway.controlUi.allowedOrigins non
gateway.control_ui.host_header_origin_fallback avertissement/critique Active le repli d’origine par en-tête Host (affaiblissement du durcissement contre le DNS rebinding) gateway.controlUi.dangerouslyAllowHostHeaderOriginFallback non
gateway.control_ui.insecure_auth avertissement Le commutateur de compatibilité d’authentification non sécurisée est activé gateway.controlUi.allowInsecureAuth non
gateway.control_ui.device_auth_disabled critique Désactive la vérification d’identité de l’appareil gateway.controlUi.dangerouslyDisableDeviceAuth non
gateway.real_ip_fallback_enabled avertissement/critique Faire confiance au repli X-Real-IP peut permettre l’usurpation d’IP source via une mauvaise configuration du proxy gateway.allowRealIpFallback, gateway.trustedProxies non
gateway.token_too_short avertissement Un jeton partagé court est plus facile à forcer par brute force gateway.auth.token non
gateway.auth_no_rate_limit avertissement Une authentification exposée sans limitation de débit augmente le risque de brute force gateway.auth.rateLimit non
gateway.trusted_proxy_auth critique L’identité du proxy devient désormais la frontière d’authentification gateway.auth.mode="trusted-proxy" non
gateway.trusted_proxy_no_proxies critique L’authentification par proxy de confiance sans IP de proxy de confiance est dangereuse gateway.trustedProxies non
gateway.trusted_proxy_no_user_header critique L’authentification par proxy de confiance ne peut pas résoudre l’identité utilisateur en toute sécurité gateway.auth.trustedProxy.userHeader non
gateway.trusted_proxy_no_allowlist avertissement L’authentification par proxy de confiance accepte tout utilisateur amont authentifié gateway.auth.trustedProxy.allowUsers non
gateway.trusted_proxy_allow_loopback avertissement L’authentification trusted-proxy accepte des sources de proxy loopback explicitement autorisées gateway.auth.trustedProxy.allowLoopback non
gateway.probe_auth_secretref_unavailable avertissement La sonde approfondie n’a pas pu résoudre les SecretRefs d’authentification dans ce chemin de commande source d’authentification deep-probe / disponibilité de SecretRef non
gateway.probe_failed avertissement/critique La sonde Gateway en direct a échoué joignabilité/authentification du gateway non
discovery.mdns_full_mode avertissement/critique Le mode complet mDNS annonce les métadonnées cliPath/sshPort sur le réseau local discovery.mdns.mode, gateway.bind non
config.insecure_or_dangerous_flags avertissement Des indicateurs de débogage non sécurisés/dangereux sont activés plusieurs clés (voir le détail du constat) non
config.secrets.gateway_password_in_config avertissement Le mot de passe du Gateway est stocké directement dans la configuration gateway.auth.password non
config.secrets.hooks_token_in_config avertissement Le jeton bearer de hook est stocké directement dans la configuration hooks.token non
hooks.token_reuse_gateway_token critique Le jeton d’entrée du hook déverrouille aussi l’authentification du Gateway hooks.token, gateway.auth.token non
hooks.token_too_short avertissement Force brute plus facile sur l’entrée du hook hooks.token non
hooks.default_session_key_unset avertissement Les exécutions de l’agent de hook se dispersent dans des sessions générées par requête hooks.defaultSessionKey non
hooks.allowed_agent_ids_unrestricted avertissement/critique Les appelants de hook authentifiés peuvent router vers n’importe quel agent configuré hooks.allowedAgentIds non
hooks.request_session_key_enabled avertissement/critique L’appelant externe peut choisir sessionKey hooks.allowRequestSessionKey non
hooks.request_session_key_prefixes_missing avertissement/critique Aucune limite sur les formes de clés de session externes hooks.allowedSessionKeyPrefixes non
hooks.path_root critique Le chemin du hook est /, ce qui rend l’entrée plus facile à faire entrer en collision ou à mal router hooks.path non
hooks.installs_unpinned_npm_specs avertissement Les enregistrements d’installation de hook ne sont pas épinglés à des spécifications npm immuables métadonnées d’installation de hook non
hooks.installs_missing_integrity avertissement Les enregistrements d’installation de hook n’ont pas de métadonnées d’intégrité métadonnées d’installation de hook non
hooks.installs_version_drift avertissement Les enregistrements d’installation de hook divergent des paquets installés métadonnées d’installation de hook non
logging.redact_off avertissement Des valeurs sensibles fuitent dans les journaux/statuts logging.redactSensitive oui
browser.control_invalid_config avertissement La configuration du contrôle du navigateur est invalide avant l’exécution browser.* non
browser.control_no_auth critique Contrôle du navigateur exposé sans authentification par jeton/mot de passe gateway.auth.* non
browser.remote_cdp_http avertissement Le CDP distant sur HTTP en clair n’a pas de chiffrement du transport profil de navigateur cdpUrl non
browser.remote_cdp_private_host avertissement Le CDP distant cible un hôte privé/interne profil de navigateur cdpUrl, browser.ssrfPolicy.* non
sandbox.docker_config_mode_off avertissement Configuration Docker du bac à sable présente mais inactive agents.*.sandbox.mode non
sandbox.bind_mount_non_absolute avertissement Les montages liés relatifs peuvent se résoudre de façon imprévisible agents.*.sandbox.docker.binds[] non
sandbox.dangerous_bind_mount critique Le montage lié du bac à sable cible des chemins système, d’identifiants ou de socket Docker bloqués agents.*.sandbox.docker.binds[] non
sandbox.dangerous_network_mode critique Le réseau Docker du bac à sable utilise le mode de jonction d’espace de noms host ou container:* agents.*.sandbox.docker.network non
sandbox.dangerous_seccomp_profile critique Le profil seccomp du bac à sable affaiblit l’isolation du conteneur agents.*.sandbox.docker.securityOpt non
sandbox.dangerous_apparmor_profile critique Le profil AppArmor du bac à sable affaiblit l’isolation du conteneur agents.*.sandbox.docker.securityOpt non
sandbox.browser_cdp_bridge_unrestricted avertissement Le pont navigateur du bac à sable est exposé sans restriction de plage source sandbox.browser.cdpSourceRange non
sandbox.browser_container.non_loopback_publish critique Le conteneur de navigateur existant publie CDP sur des interfaces non-loopback configuration de publication du conteneur de bac à sable du navigateur non
sandbox.browser_container.hash_label_missing avertissement Le conteneur de navigateur existant est antérieur aux libellés de hachage de configuration actuels openclaw sandbox recreate --browser --all non
sandbox.browser_container.hash_epoch_stale avertissement Le conteneur de navigateur existant est antérieur à l’époque de configuration du navigateur actuelle openclaw sandbox recreate --browser --all non
tools.exec.host_sandbox_no_sandbox_defaults avertissement exec host=sandbox échoue fermé lorsque le bac à sable est désactivé tools.exec.host, agents.defaults.sandbox.mode non
tools.exec.host_sandbox_no_sandbox_agents avertissement exec host=sandbox par agent échoue fermé lorsque le bac à sable est désactivé agents.list[].tools.exec.host, agents.list[].sandbox.mode non
tools.exec.security_full_configured avertissement/critique L’exécution hôte fonctionne avec security="full" tools.exec.security, agents.list[].tools.exec.security non
tools.exec.auto_allow_skills_enabled avertissement Les approbations d’exécution font implicitement confiance aux bins de Skills ~/.openclaw/exec-approvals.json non
tools.exec.allowlist_interpreter_without_strict_inline_eval avertissement Les listes d’autorisation d’interpréteurs permettent l’évaluation en ligne sans réapprobation forcée tools.exec.strictInlineEval, agents.list[].tools.exec.strictInlineEval, liste d’autorisation des approbations d’exécution non
tools.exec.safe_bins_interpreter_unprofiled avertissement Les bins d’interpréteur/exécution dans safeBins sans profils explicites élargissent le risque d’exécution tools.exec.safeBins, tools.exec.safeBinProfiles, agents.list[].tools.exec.* non
tools.exec.safe_bins_broad_behavior avertissement Les outils au comportement large dans safeBins affaiblissent le modèle de confiance à faible risque du filtre stdin tools.exec.safeBins, agents.list[].tools.exec.safeBins non
tools.exec.safe_bin_trusted_dirs_risky avertissement safeBinTrustedDirs inclut des répertoires mutables ou risqués tools.exec.safeBinTrustedDirs, agents.list[].tools.exec.safeBinTrustedDirs non
skills.workspace.symlink_escape avertissement Workspace skills/**/SKILL.md se résout hors de la racine du workspace (dérive de chaîne de liens symboliques) état du système de fichiers workspace skills/** non
plugins.extensions_no_allowlist avertissement Les Plugins sont installés sans liste d’autorisation de plugins explicite plugins.allowlist non
plugins.installs_unpinned_npm_specs warn Les enregistrements de l’index des Plugin ne sont pas épinglés à des spécifications npm immuables métadonnées d’installation des Plugin no
plugins.installs_missing_integrity warn Les enregistrements de l’index des Plugin ne contiennent pas de métadonnées d’intégrité métadonnées d’installation des Plugin no
plugins.installs_version_drift warn Les enregistrements de l’index des Plugin divergent des packages installés métadonnées d’installation des Plugin no
plugins.code_safety warn/critical L’analyse du code du Plugin a trouvé des motifs suspects ou dangereux code du Plugin / source d’installation no
plugins.code_safety.entry_path warn Le chemin d’entrée du Plugin pointe vers des emplacements cachés ou des emplacements node_modules entry du manifeste du Plugin no
plugins.code_safety.entry_escape critical L’entrée du Plugin s’échappe du répertoire du Plugin entry du manifeste du Plugin no
plugins.code_safety.scan_failed warn L’analyse du code du Plugin n’a pas pu se terminer chemin du Plugin / environnement d’analyse no
skills.code_safety warn/critical Les métadonnées/le code de l’installateur de Skill contiennent des motifs suspects ou dangereux source d’installation du Skill no
skills.code_safety.scan_failed warn L’analyse du code du Skill n’a pas pu se terminer environnement d’analyse du Skill no
security.exposure.open_channels_with_exec warn/critical Les salons partagés/publics peuvent atteindre des agents avec exec activé channels.*.dmPolicy, channels.*.groupPolicy, tools.exec.*, agents.list[].tools.exec.* no
security.exposure.open_groups_with_elevated critical Les groupes ouverts + les outils élevés créent des chemins d’injection de prompt à fort impact channels.*.groupPolicy, tools.elevated.* no
security.exposure.open_groups_with_runtime_or_fs critical/warn Les groupes ouverts peuvent atteindre des outils de commande/fichier sans protections de sandbox/espace de travail channels.*.groupPolicy, tools.profile/deny, tools.fs.workspaceOnly, agents.*.sandbox.mode no
security.trust_model.multi_user_heuristic warn La configuration semble multi-utilisateur alors que le modèle de confiance du Gateway est celui d’un assistant personnel limites de confiance séparées, ou durcissement utilisateur partagé (sandbox.mode, refus d’outils/portée d’espace de travail) no
tools.profile_minimal_overridden warn Les remplacements de l’agent contournent le profil minimal global agents.list[].tools.profile no
plugins.tools_reachable_permissive_policy warn Les outils d’extension sont accessibles dans des contextes permissifs tools.profile + autorisation/refus d’outils no
models.legacy warn Des familles de modèles héritées sont encore configurées sélection du modèle no
models.weak_tier warn Les modèles configurés sont sous les niveaux actuellement recommandés sélection du modèle no
models.small_params critical/info Les petits modèles + les surfaces d’outils non sûres augmentent le risque d’injection choix du modèle + politique de sandbox/outils no
summary.attack_surface info Résumé global de la posture d’authentification, de canal, d’outil et d’exposition plusieurs clés (voir le détail du constat) no

Articles connexes