security
أدوات الأمان (تدقيق + إصلاحات اختيارية). ذات صلة:
- دليل الأمان: الأمان
التدقيق
openclaw security audit
openclaw security audit --deep
openclaw security audit --fix
openclaw security audit --json
يحذر التدقيق عندما تشارك عدة مرسلي رسائل مباشرة (DM) الجلسة الرئيسية ويوصي بـ وضع الرسائل المباشرة الآمن: session.dmScope="per-channel-peer" (أو per-account-channel-peer للقنوات متعددة الحسابات) للصناديق الواردة المشتركة. هذا من أجل تعزيز إعدادات الصناديق الواردة المشتركة/التعاونية. إن مشاركة بوابة واحدة من قبل مشغلين غير موثوق بهم أو متعارضين ليس إعدادًا موصى به؛ قم بتقسيم حدود الثقة باستخدام بوابات منفصلة (أو مستخدمي نظام تشغيل/خوادم منفصلين). كما يصدر التحذير security.trust_model.multi_user_heuristic عندما تشير الإعدادات إلى احتمال وجود وصول مشترك للمستخدم (على سبيل المثال سياسة مجموعة/رسائل مباشرة مفتوحة، أهداف مجموعة مضبوطة، أو قواعد مرسلين عامة)، ويذكرك أن OpenClaw هو نموذج ثقة مساعد شخصي افتراضيًا. للإعدادات المشتركة للمستخدمين عن قصد، فإن توجيهات التدقيق هي عزل جميع الجلسات في حجرة آمنة، والحفاظ على وصول نظام الملفات محصورًا بمساحة العمل، وإبعاد الهويات أو بيانات الاعتماد الشخصية/الخاصة عن وقت التشغيل ذلك. كما يحذر عند استخدام نماذج صغيرة (<=300B) بدون عزل في حجرة آمنة ومع تمكين أدوات الويب/المتصفح. بالنسبة للوصول عبر webhook، يحذر عندما يكون hooks.defaultSessionKey غير مضبوط، وعندما تكون تجاوزات sessionKey للطلب مفعلة، وعندما تكون التجاوزات مفعلة بدون hooks.allowedSessionKeyPrefixes. كما يحذر عند ضبط إعدادات Docker للحجرة الآمنة بينما وضع الحجرة الآمنة معطل، وعندما يستخدم gateway.nodes.denyCommands مدخلات شبيهة بالنمط/غير معروفة غير فعالة (مطابقة اسم الأمر العقدي الدقيق فقط، وليس تصفية نص shell)، وعندما يمكّن gateway.nodes.allowCommands بشكل صريح أوامر عقدية خطيرة، وعندما يتم تجاوز tools.profile="minimal" العام بواسطة ملفات تعريف أدوات الوكيل، وعندما تعرض المجموعات المفتوحة أدوات وقت التشغيل/نظام الملفات بدون حراس حجرة آمنة/مساحة عمل، وعندما تكون أدوات إضافة الامتداد المثبتة قابلة للوصول تحت سياسة أدوات متساهلة. كما يضع علامة على gateway.allowRealIpFallback=true (خطر انتحال العنوان إذا تم إعداد الوكائل بشكل خاطئ) و discovery.mdns.mode="full" (تسرب بيانات وصفية عبر سجلات mDNS TXT). كما يحذر عندما يستخدم متصفح الحجرة الآمنة شبكة Docker bridge بدون sandbox.browser.cdpSourceRange. كما يضع علامة على أوضاع شبكة Docker الخطيرة للحجرة الآمنة (بما في ذلك host و container:* للانضمام إلى نطاقات الأسماء). كما يحذر عندما تحتوي حاويات Docker الحالية لمتصفح الحجرة الآمنة على تسميات تجزئة مفقودة/قديمة (على سبيل المثال حاويات ما قبل الهجرة تفتقد openclaw.browserConfigEpoch) ويوصي بـ openclaw sandbox recreate --browser --all. كما يحذر عندما تكون سجلات تثبيت الإضافات/الخطافات القائمة على npm غير مثبتة بإحكام، أو تفتقد بيانات وصفية للتكامل، أو منحرفة عن إصدارات الحزم المثبتة حاليًا. يحذر عندما تعتمد القوائم المسموح بها للقنوات على أسماء/بريد إلكتروني/علامات قابلة للتغيير بدلاً من معرفات ثابتة (نطاقات Discord، Slack، Google Chat، MS Teams، Mattermost، IRC حيث ينطبق). يحذر عندما يترك gateway.auth.mode="none" واجهات برمجة تطبيقات HTTP للبوابة قابلة للوصول بدون سر مشترك (/tools/invoke بالإضافة إلى أي نقطة نهاية /v1/* مفعلة). الإعدادات ذات البادئة dangerous/dangerously هي تجاوزات صريحة للمشغل لحالات الطوارئ؛ تمكين أحدها ليس في حد ذاته تقريرًا عن ثغرة أمنية. للحصول على قائمة كاملة للمعلمات الخطيرة، راجع قسم "ملخص العلامات غير الآمنة أو الخطيرة" في الأمان.
إخراج JSON
استخدم --json لفحوصات CI/السياسة:
openclaw security audit --json | jq '.summary'
openclaw security audit --deep --json | jq '.findings[] | select(.severity=="critical") | .checkId'
إذا تم الجمع بين --fix و --json، يتضمن الإخراج كلاً من إجراءات الإصلاح والتقرير النهائي:
openclaw security audit --fix --json | jq '{fix: .fix.ok, summary: .report.summary}'
ما يغيره --fix
يطبق --fix علاجات آمنة وحتمية:
- يحول
groupPolicy="open"الشائع إلىgroupPolicy="allowlist"(بما في ذلك المتغيرات الخاصة بالحساب في القنوات المدعومة) - يضبط
logging.redactSensitiveمن"off"إلى"tools" - يشدد الأذونات لملفات الحالة/الإعدادات والملفات الحساسة الشائعة (
credentials/*.json,auth-profiles.json,sessions.json, جلسة*.jsonl)
لا يقوم --fix بـ:
- تدوير الرموز/كلمات المرور/مفاتيح API
- تعطيل الأدوات (
gateway,cron,exec, إلخ.) - تغيير خيارات ربط/مصادقة/تعرض الشبكة للبوابة
- إزالة أو إعادة كتابة الإضافات/المهارات