메인 콘텐츠로 건너뛰기

보안 감사 검사

openclaw security auditcheckId를 키로 하는 구조화된 발견 항목을 출력합니다. 이 페이지는 해당 ID의 참조 카탈로그입니다. 상위 수준의 위협 모델과 보안 강화 지침은 Security를 참조하세요. 실제 배포에서 가장 자주 보게 될 가능성이 높은 신호성 높은 checkId 값들(전체 목록은 아님):
checkId심각도중요한 이유기본 수정 키/경로자동 수정
fs.state_dir.perms_world_writablecritical다른 사용자/프로세스가 전체 OpenClaw 상태를 수정할 수 있음~/.openclaw의 파일시스템 권한yes
fs.state_dir.perms_group_writablewarn같은 그룹의 사용자가 전체 OpenClaw 상태를 수정할 수 있음~/.openclaw의 파일시스템 권한yes
fs.state_dir.perms_readablewarn상태 디렉터리를 다른 사용자가 읽을 수 있음~/.openclaw의 파일시스템 권한yes
fs.state_dir.symlinkwarn상태 디렉터리 대상이 또 다른 신뢰 경계가 됨상태 디렉터리 파일시스템 레이아웃no
fs.config.perms_writablecritical다른 사용자가 인증/도구 정책/config를 변경할 수 있음~/.openclaw/openclaw.json의 파일시스템 권한yes
fs.config.symlinkwarn심볼릭 링크된 config 파일은 쓰기에 지원되지 않으며 또 다른 신뢰 경계를 추가함일반 config 파일로 교체하거나 OPENCLAW_CONFIG_PATH를 실제 파일로 지정no
fs.config.perms_group_readablewarn같은 그룹의 사용자가 config 토큰/설정을 읽을 수 있음config 파일의 파일시스템 권한yes
fs.config.perms_world_readablecriticalconfig가 토큰/설정을 노출할 수 있음config 파일의 파일시스템 권한yes
fs.config_include.perms_writablecriticalconfig include 파일을 다른 사용자가 수정할 수 있음openclaw.json에서 참조하는 include 파일의 권한yes
fs.config_include.perms_group_readablewarn같은 그룹의 사용자가 포함된 비밀/설정을 읽을 수 있음openclaw.json에서 참조하는 include 파일의 권한yes
fs.config_include.perms_world_readablecritical포함된 비밀/설정이 모든 사용자에게 읽기 가능함openclaw.json에서 참조하는 include 파일의 권한yes
fs.auth_profiles.perms_writablecritical다른 사용자가 저장된 모델 자격 증명을 주입하거나 교체할 수 있음agents/<agentId>/agent/auth-profiles.json 권한yes
fs.auth_profiles.perms_readablewarn다른 사용자가 API 키와 OAuth 토큰을 읽을 수 있음agents/<agentId>/agent/auth-profiles.json 권한yes
fs.credentials_dir.perms_writablecritical다른 사용자가 채널 페어링/자격 증명 상태를 수정할 수 있음~/.openclaw/credentials의 파일시스템 권한yes
fs.credentials_dir.perms_readablewarn다른 사용자가 채널 자격 증명 상태를 읽을 수 있음~/.openclaw/credentials의 파일시스템 권한yes
fs.sessions_store.perms_readablewarn다른 사용자가 세션 transcript/메타데이터를 읽을 수 있음세션 저장소 권한yes
fs.log_file.perms_readablewarn다른 사용자가 마스킹되었지만 여전히 민감한 로그를 읽을 수 있음gateway 로그 파일 권한yes
fs.synced_dirwarniCloud/Dropbox/Drive의 상태/config는 토큰/transcript 노출 범위를 넓힘config/상태를 동기화 폴더 밖으로 이동no
gateway.bind_no_authcritical공유 비밀 없이 원격 바인딩됨gateway.bind, gateway.auth.*no
gateway.loopback_no_authcriticalreverse-proxy된 loopback이 인증 없이 노출될 수 있음gateway.auth.*, 프록시 설정no
gateway.trusted_proxies_missingwarnreverse-proxy 헤더는 존재하지만 신뢰되지 않음gateway.trustedProxiesno
gateway.http.no_authwarn/criticalauth.mode="none"일 때 Gateway HTTP API에 도달 가능함gateway.auth.mode, gateway.http.endpoints.*no
gateway.http.session_key_override_enabledinfoHTTP API 호출자가 sessionKey를 재정의할 수 있음gateway.http.allowSessionKeyOverrideno
gateway.tools_invoke_http.dangerous_allowwarn/criticalHTTP API를 통해 위험한 도구를 다시 활성화함gateway.tools.allowno
gateway.nodes.allow_commands_dangerouswarn/critical고위험 Node 명령(camera/screen/contacts/calendar/SMS)을 활성화함gateway.nodes.allowCommandsno
gateway.nodes.deny_commands_ineffectivewarn패턴 형태의 deny 항목이 셸 텍스트나 그룹과 일치하지 않음gateway.nodes.denyCommandsno
gateway.tailscale_funnelcritical퍼블릭 인터넷에 노출됨gateway.tailscale.modeno
gateway.tailscale_serveinfoServe를 통해 Tailnet 노출이 활성화됨gateway.tailscale.modeno
gateway.control_ui.allowed_origins_requiredcriticalloopback이 아닌 Control UI에서 명시적 브라우저 origin 허용 목록이 없음gateway.controlUi.allowedOriginsno
gateway.control_ui.allowed_origins_wildcardwarn/criticalallowedOrigins=["*"]가 브라우저 origin 허용 목록 적용을 비활성화함gateway.controlUi.allowedOriginsno
gateway.control_ui.host_header_origin_fallbackwarn/criticalHost 헤더 origin fallback을 활성화함(DNS rebinding 보안 강화 약화)gateway.controlUi.dangerouslyAllowHostHeaderOriginFallbackno
gateway.control_ui.insecure_authwarn비보안 인증 호환성 토글이 활성화됨gateway.controlUi.allowInsecureAuthno
gateway.control_ui.device_auth_disabledcritical디바이스 신원 확인을 비활성화함gateway.controlUi.dangerouslyDisableDeviceAuthno
gateway.real_ip_fallback_enabledwarn/criticalX-Real-IP fallback 신뢰는 프록시 오구성 시 소스 IP 스푸핑을 가능하게 할 수 있음gateway.allowRealIpFallback, gateway.trustedProxiesno
gateway.token_too_shortwarn짧은 공유 토큰은 무차별 대입 공격이 더 쉬움gateway.auth.tokenno
gateway.auth_no_rate_limitwarn노출된 인증에 속도 제한이 없으면 무차별 대입 위험이 증가함gateway.auth.rateLimitno
gateway.trusted_proxy_authcritical이제 프록시 신원이 인증 경계가 됨gateway.auth.mode="trusted-proxy"no
gateway.trusted_proxy_no_proxiescritical신뢰된 프록시 IP 없이 trusted-proxy 인증을 사용하면 안전하지 않음gateway.trustedProxiesno
gateway.trusted_proxy_no_user_headercriticaltrusted-proxy 인증이 사용자 신원을 안전하게 확인할 수 없음gateway.auth.trustedProxy.userHeaderno
gateway.trusted_proxy_no_allowlistwarntrusted-proxy 인증이 인증된 모든 업스트림 사용자를 허용함gateway.auth.trustedProxy.allowUsersno
checkId심각도중요한 이유기본 수정 키/경로자동 수정
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
gateway.probe_auth_secretref_unavailablewarn이 명령 경로에서 Deep probe가 인증 SecretRef를 해석하지 못했음deep-probe 인증 소스 / SecretRef 가용성no
gateway.probe_failedwarn/critical라이브 Gateway probe 실패gateway 도달 가능성/인증no
discovery.mdns_full_modewarn/criticalmDNS 전체 모드가 로컬 네트워크에 cliPath/sshPort 메타데이터를 광고함discovery.mdns.mode, gateway.bindno
config.insecure_or_dangerous_flagswarn비보안/위험한 디버그 플래그가 하나라도 활성화됨여러 키(발견 항목 세부 정보 참조)no
config.secrets.gateway_password_in_configwarnGateway 비밀번호가 config에 직접 저장되어 있음gateway.auth.passwordno
config.secrets.hooks_token_in_configwarnHook bearer 토큰이 config에 직접 저장되어 있음hooks.tokenno
hooks.token_reuse_gateway_tokencriticalHook 수신 토큰이 Gateway 인증 해제에도 사용됨hooks.token, gateway.auth.tokenno
hooks.token_too_shortwarnHook 수신에 대한 무차별 대입 공격이 쉬워짐hooks.tokenno
hooks.default_session_key_unsetwarnHook 에이전트 실행이 요청별 생성 세션으로 분산됨hooks.defaultSessionKeyno
hooks.allowed_agent_ids_unrestrictedwarn/critical인증된 Hook 호출자가 구성된 모든 에이전트로 라우팅할 수 있음hooks.allowedAgentIdsno
hooks.request_session_key_enabledwarn/critical외부 호출자가 sessionKey를 선택할 수 있음hooks.allowRequestSessionKeyno
hooks.request_session_key_prefixes_missingwarn/critical외부 session key 형식에 대한 제한이 없음hooks.allowedSessionKeyPrefixesno
hooks.path_rootcriticalHook 경로가 /여서 수신이 충돌하거나 잘못 라우팅되기 쉬움hooks.pathno
hooks.installs_unpinned_npm_specswarnHook 설치 기록이 변경 불가능한 npm 스펙에 고정되어 있지 않음Hook 설치 메타데이터no
hooks.installs_missing_integritywarnHook 설치 기록에 무결성 메타데이터가 없음Hook 설치 메타데이터no
hooks.installs_version_driftwarnHook 설치 기록이 설치된 패키지와 어긋남Hook 설치 메타데이터no
logging.redact_offwarn민감한 값이 로그/상태에 노출됨logging.redactSensitiveyes
browser.control_invalid_configwarn브라우저 제어 config가 런타임 이전부터 잘못되어 있음browser.*no
browser.control_no_authcritical브라우저 제어가 토큰/비밀번호 인증 없이 노출됨gateway.auth.*no
browser.remote_cdp_httpwarn평문 HTTP를 통한 원격 CDP에는 전송 암호화가 없음브라우저 프로필 cdpUrlno
browser.remote_cdp_private_hostwarn원격 CDP가 private/internal 호스트를 대상으로 함브라우저 프로필 cdpUrl, browser.ssrfPolicy.*no
sandbox.docker_config_mode_offwarnSandbox Docker config는 존재하지만 비활성 상태임agents.*.sandbox.modeno
sandbox.bind_mount_non_absolutewarn상대 경로 bind mount는 예측 불가능하게 해석될 수 있음agents.*.sandbox.docker.binds[]no
sandbox.dangerous_bind_mountcriticalSandbox bind mount 대상이 차단된 시스템, 자격 증명 또는 Docker 소켓 경로임agents.*.sandbox.docker.binds[]no
sandbox.dangerous_network_modecriticalSandbox Docker 네트워크가 host 또는 container:* namespace-join 모드를 사용함agents.*.sandbox.docker.networkno
sandbox.dangerous_seccomp_profilecriticalSandbox seccomp 프로필이 컨테이너 격리를 약화시킴agents.*.sandbox.docker.securityOptno
sandbox.dangerous_apparmor_profilecriticalSandbox AppArmor 프로필이 컨테이너 격리를 약화시킴agents.*.sandbox.docker.securityOptno
sandbox.browser_cdp_bridge_unrestrictedwarnSandbox 브라우저 브리지가 소스 범위 제한 없이 노출됨sandbox.browser.cdpSourceRangeno
sandbox.browser_container.non_loopback_publishcritical기존 브라우저 컨테이너가 loopback이 아닌 인터페이스에 CDP를 게시함브라우저 sandbox 컨테이너 게시 configno
sandbox.browser_container.hash_label_missingwarn기존 브라우저 컨테이너가 현재 config 해시 레이블 이전 버전임openclaw sandbox recreate --browser --allno
sandbox.browser_container.hash_epoch_stalewarn기존 브라우저 컨테이너가 현재 브라우저 config epoch 이전 버전임openclaw sandbox recreate --browser --allno
tools.exec.host_sandbox_no_sandbox_defaultswarnsandbox가 꺼져 있으면 exec host=sandbox는 실패 시 닫힌 상태로 동작함tools.exec.host, agents.defaults.sandbox.modeno
tools.exec.host_sandbox_no_sandbox_agentswarnsandbox가 꺼져 있으면 에이전트별 exec host=sandbox는 실패 시 닫힌 상태로 동작함agents.list[].tools.exec.host, agents.list[].sandbox.modeno
tools.exec.security_full_configuredwarn/critical호스트 exec가 security="full"로 실행 중임tools.exec.security, agents.list[].tools.exec.securityno
tools.exec.auto_allow_skills_enabledwarnexec 승인이 skill bin을 암묵적으로 신뢰함~/.openclaw/exec-approvals.jsonno
tools.exec.allowlist_interpreter_without_strict_inline_evalwarn인터프리터 허용 목록이 강제 재승인 없이 인라인 eval을 허용함tools.exec.strictInlineEval, agents.list[].tools.exec.strictInlineEval, exec approvals allowlistno
tools.exec.safe_bins_interpreter_unprofiledwarnsafeBins의 인터프리터/런타임 bin이 명시적 프로필 없이 exec 위험을 넓힘tools.exec.safeBins, tools.exec.safeBinProfiles, agents.list[].tools.exec.*no
tools.exec.safe_bins_broad_behaviorwarnsafeBins의 광범위 동작 도구가 저위험 stdin 필터 신뢰 모델을 약화시킴tools.exec.safeBins, agents.list[].tools.exec.safeBinsno
tools.exec.safe_bin_trusted_dirs_riskywarnsafeBinTrustedDirs에 변경 가능하거나 위험한 디렉터리가 포함됨tools.exec.safeBinTrustedDirs, agents.list[].tools.exec.safeBinTrustedDirsno
skills.workspace.symlink_escapewarn작업공간 skills/**/SKILL.md가 작업공간 루트 밖으로 해석됨(심볼릭 링크 체인 드리프트)작업공간 skills/** 파일시스템 상태no
plugins.extensions_no_allowlistwarn명시적 plugin 허용 목록 없이 Plugin이 설치됨plugins.allowlistno
plugins.installs_unpinned_npm_specswarnPlugin 설치 기록이 변경 불가능한 npm 스펙에 고정되어 있지 않음Plugin 설치 메타데이터no
checkId심각도중요한 이유기본 수정 키/경로자동 수정
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
plugins.installs_missing_integritywarnPlugin 설치 기록에 무결성 메타데이터가 없음Plugin 설치 메타데이터no
plugins.installs_version_driftwarnPlugin 설치 기록이 설치된 패키지와 어긋남Plugin 설치 메타데이터no
plugins.code_safetywarn/criticalPlugin 코드 스캔에서 수상하거나 위험한 패턴이 발견됨Plugin 코드 / 설치 소스no
plugins.code_safety.entry_pathwarnPlugin 엔트리 경로가 숨김 위치 또는 node_modules 위치를 가리킴Plugin manifest entryno
plugins.code_safety.entry_escapecriticalPlugin 엔트리가 Plugin 디렉터리 밖으로 벗어남Plugin manifest entryno
plugins.code_safety.scan_failedwarnPlugin 코드 스캔을 완료할 수 없었음Plugin 경로 / 스캔 환경no
skills.code_safetywarn/criticalSkill 설치 메타데이터/코드에 수상하거나 위험한 패턴이 포함됨Skill 설치 소스no
skills.code_safety.scan_failedwarnSkill 코드 스캔을 완료할 수 없었음Skill 스캔 환경no
security.exposure.open_channels_with_execwarn/critical공유/공개 룸이 exec 활성화 에이전트에 도달할 수 있음channels.*.dmPolicy, channels.*.groupPolicy, tools.exec.*, agents.list[].tools.exec.*no
security.exposure.open_groups_with_elevatedcritical공개 그룹 + 권한 상승 도구 조합은 고위험 프롬프트 인젝션 경로를 만듦channels.*.groupPolicy, tools.elevated.*no
security.exposure.open_groups_with_runtime_or_fscritical/warn공개 그룹이 sandbox/작업공간 보호 없이 명령/파일 도구에 도달할 수 있음channels.*.groupPolicy, tools.profile/deny, tools.fs.workspaceOnly, agents.*.sandbox.modeno
security.trust_model.multi_user_heuristicwarnconfig는 다중 사용자처럼 보이지만 gateway 신뢰 모델은 개인 비서 기준임신뢰 경계 분리 또는 공유 사용자 보안 강화(sandbox.mode, tool deny/workspace 범위 지정)no
tools.profile_minimal_overriddenwarn에이전트 재정의가 전역 minimal 프로필을 우회함agents.list[].tools.profileno
plugins.tools_reachable_permissive_policywarn확장 도구가 완화된 컨텍스트에서 도달 가능함tools.profile + 도구 allow/denyno
models.legacywarn레거시 모델 계열이 아직 구성되어 있음모델 선택no
models.weak_tierwarn구성된 모델이 현재 권장 티어보다 낮음모델 선택no
models.small_paramscritical/info작은 모델과 비안전 도구 표면의 조합은 인젝션 위험을 높임모델 선택 + sandbox/도구 정책no
summary.attack_surfaceinfo인증, 채널, 도구, 노출 상태에 대한 요약 정보여러 키(발견 항목 세부 정보 참조)no

관련