Gateway
بررسیهای ممیزی امنیتی
openclaw security audit یافتههای ساختاریافتهای را خروجی میدهد که با checkId کلیدگذاری شدهاند. این
صفحه کاتالوگ مرجع آن شناسهها است. برای مدل تهدید در سطح کلان
و راهنمای مقاومسازی، امنیت را ببینید.
مقادیر پراهمیت checkId که بهاحتمال زیاد در استقرارهای واقعی میبینید (فهرست
جامع نیست):
checkId |
شدت | چرا اهمیت دارد | کلید/مسیر اصلاح اصلی | اصلاح خودکار |
|---|---|---|---|---|
fs.state_dir.perms_world_writable |
بحرانی | کاربران/فرایندهای دیگر میتوانند کل وضعیت OpenClaw را تغییر دهند | مجوزهای فایلسیستم روی ~/.openclaw |
بله |
fs.state_dir.perms_group_writable |
هشدار | کاربران گروه میتوانند کل وضعیت OpenClaw را تغییر دهند | مجوزهای فایلسیستم روی ~/.openclaw |
بله |
fs.state_dir.perms_readable |
هشدار | پوشه وضعیت برای دیگران خواندنی است | مجوزهای فایلسیستم روی ~/.openclaw |
بله |
fs.state_dir.symlink |
هشدار | هدف پوشه وضعیت به مرز اعتماد دیگری تبدیل میشود | چیدمان فایلسیستم پوشه وضعیت | خیر |
fs.config.perms_writable |
بحرانی | دیگران میتوانند سیاست/پیکربندی احراز هویت یا ابزار را تغییر دهند | مجوزهای فایلسیستم روی ~/.openclaw/openclaw.json |
بله |
fs.config.symlink |
هشدار | فایلهای پیکربندی symlink شده برای نوشتن پشتیبانی نمیشوند و مرز اعتماد دیگری اضافه میکنند | با یک فایل پیکربندی معمولی جایگزین کنید یا OPENCLAW_CONFIG_PATH را به فایل واقعی اشاره دهید |
خیر |
fs.config.perms_group_readable |
هشدار | کاربران گروه میتوانند توکنها/تنظیمات پیکربندی را بخوانند | مجوزهای فایلسیستم روی فایل پیکربندی | بله |
fs.config.perms_world_readable |
بحرانی | پیکربندی میتواند توکنها/تنظیمات را افشا کند | مجوزهای فایلسیستم روی فایل پیکربندی | بله |
fs.config_include.perms_writable |
بحرانی | فایل include پیکربندی میتواند توسط دیگران تغییر کند | مجوزهای فایل include که از openclaw.json ارجاع شده است |
بله |
fs.config_include.perms_group_readable |
هشدار | کاربران گروه میتوانند اسرار/تنظیمات include شده را بخوانند | مجوزهای فایل include که از openclaw.json ارجاع شده است |
بله |
fs.config_include.perms_world_readable |
بحرانی | اسرار/تنظیمات include شده برای همه خواندنی هستند | مجوزهای فایل include که از openclaw.json ارجاع شده است |
بله |
fs.auth_profiles.perms_writable |
بحرانی | دیگران میتوانند اعتبارنامههای مدل ذخیرهشده را تزریق یا جایگزین کنند | مجوزهای agents/<agentId>/agent/auth-profiles.json |
بله |
fs.auth_profiles.perms_readable |
هشدار | دیگران میتوانند کلیدهای API و توکنهای OAuth را بخوانند | مجوزهای agents/<agentId>/agent/auth-profiles.json |
بله |
fs.credentials_dir.perms_writable |
بحرانی | دیگران میتوانند وضعیت جفتسازی/اعتبارنامه کانال را تغییر دهند | مجوزهای فایلسیستم روی ~/.openclaw/credentials |
بله |
fs.credentials_dir.perms_readable |
هشدار | دیگران میتوانند وضعیت اعتبارنامه کانال را بخوانند | مجوزهای فایلسیستم روی ~/.openclaw/credentials |
بله |
fs.sessions_store.perms_readable |
هشدار | دیگران میتوانند رونوشتها/فراداده نشست را بخوانند | مجوزهای ذخیرهگاه نشست | بله |
fs.log_file.perms_readable |
هشدار | دیگران میتوانند لاگهای ویرایششده اما همچنان حساس را بخوانند | مجوزهای فایل لاگ Gateway | بله |
fs.synced_dir |
هشدار | وضعیت/پیکربندی در iCloud/Dropbox/Drive دامنه افشای توکن/رونوشت را گسترش میدهد | پیکربندی/وضعیت را از پوشههای همگامشده خارج کنید | خیر |
gateway.bind_no_auth |
بحرانی | اتصال راه دور بدون راز مشترک | gateway.bind, gateway.auth.* |
خیر |
gateway.loopback_no_auth |
بحرانی | local loopback پشت reverse proxy ممکن است بدون احراز هویت شود | gateway.auth.*, راهاندازی proxy |
خیر |
gateway.trusted_proxies_missing |
هشدار | هدرهای reverse-proxy وجود دارند اما مورد اعتماد نیستند | gateway.trustedProxies |
خیر |
gateway.http.no_auth |
هشدار/بحرانی | APIهای HTTP مربوط به Gateway با auth.mode="none" قابل دسترسی هستند |
gateway.auth.mode, gateway.http.endpoints.* |
خیر |
gateway.http.session_key_override_enabled |
اطلاعرسانی | فراخوانهای HTTP API میتوانند sessionKey را بازنویسی کنند |
gateway.http.allowSessionKeyOverride |
خیر |
gateway.tools_invoke_http.dangerous_allow |
هشدار/بحرانی | ابزارهای خطرناک را دوباره روی HTTP API فعال میکند | gateway.tools.allow |
خیر |
gateway.nodes.allow_commands_dangerous |
هشدار/بحرانی | فرمانهای پراثر Node را فعال میکند (دوربین/صفحهنمایش/مخاطبان/تقویم/SMS) | gateway.nodes.allowCommands |
خیر |
gateway.nodes.deny_commands_ineffective |
هشدار | ورودیهای deny شبیه الگو با متن shell یا گروهها مطابقت ندارند | gateway.nodes.denyCommands |
خیر |
gateway.tailscale_funnel |
بحرانی | قرارگیری در معرض اینترنت عمومی | gateway.tailscale.mode |
خیر |
gateway.tailscale_serve |
اطلاعرسانی | قرارگیری در معرض Tailnet از طریق Serve فعال است | gateway.tailscale.mode |
خیر |
gateway.control_ui.allowed_origins_required |
بحرانی | رابط کاربری کنترل غیر local loopback بدون allowlist صریح برای origin مرورگر | gateway.controlUi.allowedOrigins |
خیر |
gateway.control_ui.allowed_origins_wildcard |
هشدار/بحرانی | allowedOrigins=["*"]، allowlisting مربوط به origin مرورگر را غیرفعال میکند |
gateway.controlUi.allowedOrigins |
خیر |
gateway.control_ui.host_header_origin_fallback |
هشدار/بحرانی | fallback مبتنی بر origin هدر Host را فعال میکند (کاهش سختسازی در برابر DNS rebinding) | gateway.controlUi.dangerouslyAllowHostHeaderOriginFallback |
خیر |
gateway.control_ui.insecure_auth |
هشدار | سوییچ سازگاری احراز هویت ناامن فعال است | gateway.controlUi.allowInsecureAuth |
خیر |
gateway.control_ui.device_auth_disabled |
بحرانی | بررسی هویت دستگاه را غیرفعال میکند | gateway.controlUi.dangerouslyDisableDeviceAuth |
خیر |
gateway.real_ip_fallback_enabled |
هشدار/بحرانی | اعتماد به fallback مربوط به X-Real-IP میتواند با پیکربندی نادرست proxy جعل source-IP را ممکن کند |
gateway.allowRealIpFallback, gateway.trustedProxies |
خیر |
gateway.token_too_short |
هشدار | توکن مشترک کوتاهتر سادهتر با brute force شکسته میشود | gateway.auth.token |
خیر |
gateway.auth_no_rate_limit |
هشدار | احراز هویت در معرض دسترس بدون rate limiting خطر brute-force را افزایش میدهد | gateway.auth.rateLimit |
خیر |
gateway.trusted_proxy_auth |
بحرانی | هویت proxy اکنون به مرز احراز هویت تبدیل میشود | gateway.auth.mode="trusted-proxy" |
خیر |
gateway.trusted_proxy_no_proxies |
بحرانی | احراز هویت trusted-proxy بدون IPهای proxy مورد اعتماد ناامن است | gateway.trustedProxies |
خیر |
gateway.trusted_proxy_no_user_header |
بحرانی | احراز هویت trusted-proxy نمیتواند هویت کاربر را بهصورت ایمن تعیین کند | gateway.auth.trustedProxy.userHeader |
خیر |
gateway.trusted_proxy_no_allowlist |
هشدار | احراز هویت trusted-proxy هر کاربر upstream احراز هویتشدهای را میپذیرد | gateway.auth.trustedProxy.allowUsers |
خیر |
gateway.trusted_proxy_allow_loopback |
هشدار | احراز هویت پروکسیِ مورد اعتماد، منابع پروکسی local loopback مجازِ صریح را میپذیرد | gateway.auth.trustedProxy.allowLoopback |
خیر |
gateway.probe_auth_secretref_unavailable |
هشدار | کاوش عمیق نتوانست SecretRefهای احراز هویت را در این مسیر فرمان حل کند | منبع احراز هویت deep-probe / دسترسپذیری SecretRef | خیر |
gateway.probe_failed |
هشدار/بحرانی | کاوش زنده Gateway ناموفق بود | دسترسپذیری/احراز هویت Gateway | خیر |
discovery.mdns_full_mode |
هشدار/بحرانی | حالت کامل mDNS فرادادههای cliPath/sshPort را در شبکه محلی تبلیغ میکند |
discovery.mdns.mode, gateway.bind |
خیر |
config.insecure_or_dangerous_flags |
هشدار | هرگونه پرچم اشکالزدایی ناامن/خطرناک فعال شده باشد | چندین کلید (جزئیات یافته را ببینید) | خیر |
config.secrets.gateway_password_in_config |
هشدار | گذرواژه Gateway مستقیماً در پیکربندی ذخیره شده است | gateway.auth.password |
خیر |
config.secrets.hooks_token_in_config |
هشدار | توکن حامل هوک مستقیماً در پیکربندی ذخیره شده است | hooks.token |
خیر |
hooks.token_reuse_gateway_token |
بحرانی | توکن ورودی هوک، احراز هویت Gateway را هم باز میکند | hooks.token, gateway.auth.token |
خیر |
hooks.token_too_short |
هشدار | حمله جستوجوی فراگیر به ورودی هوک آسانتر میشود | hooks.token |
خیر |
hooks.default_session_key_unset |
هشدار | اجراهای عامل هوک در نشستهای تولیدشده برای هر درخواست پخش میشوند | hooks.defaultSessionKey |
خیر |
hooks.allowed_agent_ids_unrestricted |
هشدار/بحرانی | فراخوانهای احراز هویتشده هوک میتوانند به هر عامل پیکربندیشده مسیریابی کنند | hooks.allowedAgentIds |
خیر |
hooks.request_session_key_enabled |
هشدار/بحرانی | فراخوان خارجی میتواند sessionKey را انتخاب کند | hooks.allowRequestSessionKey |
خیر |
hooks.request_session_key_prefixes_missing |
هشدار/بحرانی | هیچ محدودیتی برای شکلهای کلید نشست خارجی وجود ندارد | hooks.allowedSessionKeyPrefixes |
خیر |
hooks.path_root |
بحرانی | مسیر هوک / است و برخورد یا مسیریابی نادرست ورودی را آسانتر میکند |
hooks.path |
خیر |
hooks.installs_unpinned_npm_specs |
هشدار | رکوردهای نصب هوک به مشخصات تغییرناپذیر npm سنجاق نشدهاند | فراداده نصب هوک | خیر |
hooks.installs_missing_integrity |
هشدار | رکوردهای نصب هوک فاقد فراداده یکپارچگی هستند | فراداده نصب هوک | خیر |
hooks.installs_version_drift |
هشدار | رکوردهای نصب هوک با بستههای نصبشده دچار انحراف نسخه هستند | فراداده نصب هوک | خیر |
logging.redact_off |
هشدار | مقادیر حساس به لاگها/وضعیت نشت میکنند | logging.redactSensitive |
بله |
browser.control_invalid_config |
هشدار | پیکربندی کنترل مرورگر پیش از زمان اجرا نامعتبر است | browser.* |
خیر |
browser.control_no_auth |
بحرانی | کنترل مرورگر بدون احراز هویت توکن/گذرواژه در معرض دسترس قرار گرفته است | gateway.auth.* |
خیر |
browser.remote_cdp_http |
هشدار | CDP راهدور روی HTTP ساده فاقد رمزنگاری انتقال است | پروفایل مرورگر cdpUrl |
خیر |
browser.remote_cdp_private_host |
هشدار | CDP راهدور یک میزبان خصوصی/داخلی را هدف میگیرد | پروفایل مرورگر cdpUrl, browser.ssrfPolicy.* |
خیر |
sandbox.docker_config_mode_off |
هشدار | پیکربندی Docker Sandbox وجود دارد اما غیرفعال است | agents.*.sandbox.mode |
خیر |
sandbox.bind_mount_non_absolute |
هشدار | mountهای bind نسبی میتوانند بهصورت پیشبینیناپذیر حل شوند | agents.*.sandbox.docker.binds[] |
خیر |
sandbox.dangerous_bind_mount |
بحرانی | mount bind Sandbox مسیرهای سامانهای، اعتبارنامهای یا سوکت Docker مسدودشده را هدف میگیرد | agents.*.sandbox.docker.binds[] |
خیر |
sandbox.dangerous_network_mode |
بحرانی | شبکه Docker Sandbox از حالت host یا حالت پیوستن به namespace از نوع container:* استفاده میکند |
agents.*.sandbox.docker.network |
خیر |
sandbox.dangerous_seccomp_profile |
بحرانی | پروفایل seccomp در Sandbox ایزولهسازی کانتینر را تضعیف میکند | agents.*.sandbox.docker.securityOpt |
خیر |
sandbox.dangerous_apparmor_profile |
بحرانی | پروفایل AppArmor در Sandbox ایزولهسازی کانتینر را تضعیف میکند | agents.*.sandbox.docker.securityOpt |
خیر |
sandbox.browser_cdp_bridge_unrestricted |
هشدار | پل مرورگر Sandbox بدون محدودیت بازه منبع در معرض دسترس قرار گرفته است | sandbox.browser.cdpSourceRange |
خیر |
sandbox.browser_container.non_loopback_publish |
بحرانی | کانتینر مرورگر موجود CDP را روی رابطهای غیر local loopback منتشر میکند | پیکربندی انتشار کانتینر Sandbox مرورگر | خیر |
sandbox.browser_container.hash_label_missing |
هشدار | کانتینر مرورگر موجود پیش از برچسبهای هش پیکربندی فعلی ساخته شده است | openclaw sandbox recreate --browser --all |
خیر |
sandbox.browser_container.hash_epoch_stale |
هشدار | کانتینر مرورگر موجود پیش از دوره پیکربندی مرورگر فعلی ساخته شده است | openclaw sandbox recreate --browser --all |
خیر |
tools.exec.host_sandbox_no_sandbox_defaults |
هشدار | وقتی Sandbox خاموش است، exec host=sandbox بهصورت بسته شکست میخورد |
tools.exec.host, agents.defaults.sandbox.mode |
خیر |
tools.exec.host_sandbox_no_sandbox_agents |
هشدار | وقتی Sandbox خاموش است، exec host=sandbox برای هر عامل بهصورت بسته شکست میخورد |
agents.list[].tools.exec.host, agents.list[].sandbox.mode |
خیر |
tools.exec.security_full_configured |
هشدار/بحرانی | اجرای میزبان با security="full" در حال اجراست |
tools.exec.security, agents.list[].tools.exec.security |
خیر |
tools.exec.auto_allow_skills_enabled |
هشدار | تأییدهای اجرا به باینریهای Skills بهطور ضمنی اعتماد میکنند | ~/.openclaw/exec-approvals.json |
خیر |
tools.exec.allowlist_interpreter_without_strict_inline_eval |
هشدار | فهرستهای مجاز مفسرها، eval درونخطی را بدون تأیید دوباره اجباری مجاز میکنند | tools.exec.strictInlineEval, agents.list[].tools.exec.strictInlineEval, فهرست مجاز تأییدهای اجرا |
خیر |
tools.exec.safe_bins_interpreter_unprofiled |
هشدار | باینریهای مفسر/زمان اجرا در safeBins بدون پروفایلهای صریح، ریسک اجرا را گسترش میدهند |
tools.exec.safeBins, tools.exec.safeBinProfiles, agents.list[].tools.exec.* |
خیر |
tools.exec.safe_bins_broad_behavior |
هشدار | ابزارهای با رفتار گسترده در safeBins مدل اعتماد کمریسکِ فیلتر stdin را تضعیف میکنند |
tools.exec.safeBins, agents.list[].tools.exec.safeBins |
خیر |
tools.exec.safe_bin_trusted_dirs_risky |
هشدار | safeBinTrustedDirs شامل دایرکتوریهای قابل تغییر یا پرریسک است |
tools.exec.safeBinTrustedDirs, agents.list[].tools.exec.safeBinTrustedDirs |
خیر |
skills.workspace.symlink_escape |
هشدار | Workspace skills/**/SKILL.md به بیرون از ریشه workspace حل میشود (انحراف زنجیره symlink) |
وضعیت فایلسیستم workspace skills/** |
خیر |
plugins.extensions_no_allowlist |
هشدار | Pluginها بدون فهرست مجاز صریح Plugin نصب شدهاند | plugins.allowlist |
خیر |
plugins.installs_unpinned_npm_specs |
warn | رکوردهای شاخص Plugin به مشخصات npm تغییرناپذیر سنجاق نشدهاند | فراداده نصب Plugin | no |
plugins.installs_missing_integrity |
warn | رکوردهای شاخص Plugin فاقد فراداده یکپارچگی هستند | فراداده نصب Plugin | no |
plugins.installs_version_drift |
warn | رکوردهای شاخص Plugin از بستههای نصبشده فاصله گرفتهاند | فراداده نصب Plugin | no |
plugins.code_safety |
warn/critical | اسکن کد Plugin الگوهای مشکوک یا خطرناک پیدا کرد | کد Plugin / منبع نصب | no |
plugins.code_safety.entry_path |
warn | مسیر ورودی Plugin به مکانهای پنهان یا node_modules اشاره میکند |
entry مانیفست Plugin |
no |
plugins.code_safety.entry_escape |
critical | ورودی Plugin از دایرکتوری Plugin خارج میشود | entry مانیفست Plugin |
no |
plugins.code_safety.scan_failed |
warn | اسکن کد Plugin نتوانست کامل شود | مسیر Plugin / محیط اسکن | no |
skills.code_safety |
warn/critical | فراداده/کد نصبکننده Skill شامل الگوهای مشکوک یا خطرناک است | منبع نصب Skill | no |
skills.code_safety.scan_failed |
warn | اسکن کد Skill نتوانست کامل شود | محیط اسکن Skill | no |
security.exposure.open_channels_with_exec |
warn/critical | اتاقهای مشترک/عمومی میتوانند به عاملهای دارای exec دسترسی پیدا کنند | channels.*.dmPolicy, channels.*.groupPolicy, tools.exec.*, agents.list[].tools.exec.* |
no |
security.exposure.open_groups_with_elevated |
critical | گروههای باز + ابزارهای دارای امتیاز بالاتر، مسیرهای تزریق پرامپت با اثر بالا ایجاد میکنند | channels.*.groupPolicy, tools.elevated.* |
no |
security.exposure.open_groups_with_runtime_or_fs |
critical/warn | گروههای باز میتوانند بدون محافظهای sandbox/workspace به ابزارهای فرمان/فایل دسترسی پیدا کنند | channels.*.groupPolicy, tools.profile/deny, tools.fs.workspaceOnly, agents.*.sandbox.mode |
no |
security.trust_model.multi_user_heuristic |
warn | پیکربندی چندکاربره به نظر میرسد، در حالی که مدل اعتماد Gateway دستیار شخصی است | مرزهای اعتماد را جدا کنید، یا سختسازی کاربر مشترک (sandbox.mode، رد ابزار/محدودسازی دامنه workspace) |
no |
tools.profile_minimal_overridden |
warn | بازنویسیهای Agent پروفایل حداقلی سراسری را دور میزنند | agents.list[].tools.profile |
no |
plugins.tools_reachable_permissive_policy |
warn | ابزارهای افزونه در زمینههای permissive قابل دسترسی هستند | tools.profile + مجاز/رد کردن ابزار |
no |
models.legacy |
warn | خانوادههای مدل قدیمی هنوز پیکربندی شدهاند | انتخاب مدل | no |
models.weak_tier |
warn | مدلهای پیکربندیشده پایینتر از سطحهای پیشنهادی فعلی هستند | انتخاب مدل | no |
models.small_params |
critical/info | مدلهای کوچک + سطوح ابزار ناامن، خطر تزریق را افزایش میدهند | انتخاب مدل + سیاست sandbox/ابزار | no |
summary.attack_surface |
info | خلاصه تجمیعی وضعیت احراز هویت، کانال، ابزار و میزان در معرض بودن | چندین کلید (جزئیات یافته را ببینید) | no |