تشغيل وكيل مستقل مثل OpenClaw على جهاز Mac يمنح نموذجًا لغويًا صلاحيات الحساب الذي يشغّله، وقد وثّقت التقارير الأمنية المنشورة منذ يناير 2026 عدة طرق أخفق فيها هذا الترتيب. وينتهي معظم هذه الإخفاقات باتصال شبكي: بيانات تُرسل إلى خادم مجهول، أو خدمة محلية يمكن الوصول إليها من الخارج، أو حمولة تُنزَّل. وFireAI جدار حماية شبكي لنظام macOS، فهو قادر على الحدّ من هذا الجزء. لكنه لا يستطيع منع الوكيل من قراءة الملفات المحلية أو حذفها، ويوضح هذا المقال أين تقع الحدود.
الخلفية
تنص وثائق OpenClaw نفسها على أن الأدوات تعمل على الجهاز المضيف ما لم يُضبط العزل (sandboxing)، وأن الرسائل الواردة مدخلات غير موثوقة، وأن الوكلاء الذين يملكون الوصول إلى أداة الرسائل يمكنهم الإرسال عبر المحادثات ومزودي القنوات افتراضيًا [1]. فالوكيل إذن يجمع ثلاثة أمور: يقرأ نصًا غير موثوق، ويستطيع التصرف على الجهاز، ويستطيع التواصل مع الخارج. ويعالج جدار الحماية الأمر الثالث. تتناول الأقسام التالية كل فئة مخاطر موثّقة على حدة، وتسمّي ضابط FireAI المنطبق عليها، وتسرد خطوات إعداده. أما المقارنة العامة بين OpenClaw وHermes Agent ففي مقالة منفصلة.
قبل الخطوات: كيف يتعرّف FireAI على الوكيل
يتعرّف FireAI على التطبيق من توقيع الشيفرة للملف التنفيذي الذي يفتح الاتصال، أو من مساره إن كان البرنامج غير موقّع. ولا يملك أي تكامل مع OpenClaw أو Hermes Agent، ولا يتعرّف على أي منهما بالاسم. فالوكلاء من هذا النوع يعملون داخل مفسّر عام الأغراض، هو عادةً Node.js أو Python، ولذلك يعرض FireAI اتصالات صادرة من «node» أو «python3». والقاعدة التي توضع على ذلك المفسّر تسري على كل برنامج نصي يشغّله الملف التنفيذي نفسه، بما في ذلك الأدوات غير المرتبطة.
الإسناد لكل برنامج نصي غير متاح اليوم. لذلك تسري كل قاعدة أدناه على المفسّر بأكمله، والقاعدة التي تحظر وجهات الوكيل تؤثر أيضًا في أي برنامج نصي آخر يشغّله المفسّر نفسه. والطريقة العملية لإسناد اتصال ما هي قراءة اسم المفسّر في السؤال ومطابقته مع اللحظة التي كان الوكيل يعمل فيها.
الخطر 1: حقن أوامر يرسل البيانات إلى الخارج
أفادت Kaspersky بأن OpenClaw ثبت أنه عرضة لاستخراج البيانات عبر محتوى بريد إلكتروني خبيث، ومن ذلك عرض قدّمه باحث لاستخراج مفاتيح تشفير خاصة بتضمين تعليمات في رسالة، وإفادة مستخدمين بأن البوت أفرغ محتويات المجلد الرئيسي في محادثة جماعية بعد أمر قائم على الهندسة الاجتماعية [3]. وخطوة التسريب هي اتصال صادر من عملية الوكيل إلى خادم يتحكم فيه المهاجم أو إلى خدمة مراسلة.
يتعرّف FireAI على كل تطبيق من توقيع شيفرته ويتحقق من قواعده عند كل اتصال. وفي وضع التنبيه (Alert) يوقف مؤقتًا أول اتصال بوجهة لا قاعدة لها ويسأل [12]. والإعداد الذي يحدّ من هذا الخطر قائمة سماح مبنية حول الوكيل:
- شغّل الوكيل مرة واحدة ودع FireAI يعرض اتصالاته الأولى. في السؤال، انقر Options، واختر Always وThe whole website لنطاق مزود النموذج الذي تستخدمه فعلًا، ثم Allow. يسمّي السؤال المفسّر، لا الوكيل.
- احظر كل وجهة أخرى لذلك التطبيق: افتح القواعد، وانقر Add rule، واختر Stop the connection، وحدد المفسّر الذي يعمل الوكيل تحته (node أو python3)، واضبط Which website or server على Anywhere on the internet.
- افتح قاعدة السماح التي أنشأتها لمزود النموذج وفعّل Quick، كي تحسم أول قاعدة سريعة (Quick rule) مطابقة القرار قبل النظر في الحظر العام.
- أجب عن الأسئلة اللاحقة بالحظر (Block) ما لم تستطع تسمية الوجهة. فالسؤال عن نطاق غير مألوف مباشرة بعد قراءة الوكيل بريدًا إلكترونيًا هو الإشارة التي صُمم هذا الضابط لإبرازها.
- افتح Details في السؤال للتحقق من العنوان والمنفذ وحالة توقيع الشيفرة، واستخدم Why block this? حين يُعرض.
ثمة حدود. فإذا سُمح للوكيل بالوصول إلى خدمة مراسلة أو إلى مزود نموذجه، يمكن لتعليمة محقونة أن ترسل البيانات إلى هناك، ويرى FireAI حجم ما يُرسل لا مضمونه، لأنه لا يقرأ محتوى الاتصالات المشفّرة (كيف تُفحص الاتصالات من دون فك التشفير).
الخطر 2: مهارات خبيثة أو مخترقة
دققت Koi Security في 2,857 مهارة على ClawHub ووجدت 341 مهارة خبيثة، منها 335 من حملة واحدة؛ وتفيد eSecurity Planet بأن هذه المهارات طلبت من المستخدمين تثبيت «متطلبات مسبقة» كانت تحمل Atomic macOS Stealer، الذي يستهدف بيانات اعتماد المتصفح وكلمات مرور سلسلة المفاتيح والمحافظ ومفاتيح SSH ورموز API [6]. وتعمل المهارة بصلاحيات الوكيل، فتظهر استدعاءاتها الشبكية على أنها استدعاءات الوكيل.
تعمل ضوابط FireAI على الوجهات التي تذهب إليها هذه الاستدعاءات، بطريقتين. أولًا، ترفض قائمة السماح المذكورة في القسم السابق الوجهات التي لم يُوافق عليها قط. وثانيًا، يمكن لـ FireAI استخدام قوائم التهديدات العامة:
- افتح صفحة قوائم التهديدات في FireAI وفعّل Use public threat data. عندئذ ينزّل FireAI قوائم مثل abuse.ch URLhaus وThreatFox وFeodo Tracker مرة يوميًا، ولا تُرسل حركة بياناتك إليها أبدًا. راجع الوثائق.
- فعّل Block what a threat list confirms، كي يصبح التطابق المؤكد حظرًا لا مجرد علامة.
- افتح التهديدات واستخدم Investigate على أي صف لا تعرفه؛ فالملف يشرح الاتصال خطوة بخطوة.
- أبقِ Connection history مفعّلًا (الإعدادات، Connection history) لمراجعة أي تطبيق اتصل بأي وجهة لاحقًا؛ فهو يحتفظ بسجل مدته 7 أيام على هذا الجهاز فقط.
المهارة التي تتصل بخادم لا تعرفه أي قائمة، أو التي لا تفعل سوى قراءة الملفات المحلية، لا يلتقطها هذا الضابط. ويبقى فحص المهارة قبل تثبيتها خط الدفاع الأول.
الخطر 3: بوابة محلية يمكن الوصول إليها من الخارج أو من متصفح
سجّلت Censys ارتفاعًا من نحو 1,000 إلى 21,639 نسخة من OpenClaw مكشوفة للعموم في أقل من أسبوع حتى 31 يناير 2026، مع الإشارة إلى أن الـ Gateway مصممة للاستماع محليًا على منفذ TCP رقم 18789 [4]. ووصفت Kaspersky عمليات تثبيت بلا مصادقة كانت تثق بـ localhost وتقع خلف خوادم وكيلة عكسية سيئة الإعداد [3]. وأظهرت ثغرة ClawJacked التي كشفتها Oasis Security أن صفحة ويب يمكنها الاتصال بالـ Gateway المحلية من المتصفح؛ وقد أُصلحت في OpenClaw 2026.2.25 [5].
يطبّق FireAI القواعد على الاتصالات الواردة إلى جهاز Mac كما على الصادرة، لكنه لا يسأل أبدًا عن الاتصالات الواردة. راجع الوثائق. الخطوات ذات الصلة:
- انتقل إلى وضع المقهى حين يكون جهاز Mac على شبكة لا تتحكم فيها. فهو يحظر الاتصالات الواردة ومشاركة الملفات والشاشة مع الأجهزة الأخرى، كما هو موضح في أوضاع الأمان.
- لجعل ذلك تلقائيًا، اربط وضع المقهى بأماكنك العامة كما هو موثّق في الأماكن، أو استخدم Coffee Shop Armor، الذي تصفه وثائق FireAI لشبكات Wi-Fi العامة.
- في القواعد، أضف قاعدة حظر للاتصالات الواردة لتطبيق الوكيل (ضمن Advanced، اضبط Direction على incoming) على أي شبكة لا تثق بها تمامًا.
- تحقق من إعدادات الوكيل نفسه أيضًا: ينبغي أن تبقى الـ Gateway مربوطة بواجهة loopback، كما تصف وثائق OpenClaw لعمليات التثبيت العادية على الجهاز المضيف [1].
الخطر 4: بيانات اعتماد وملفات تغادر الجهاز
تدرج التقارير نفسها مفاتيح API والرموز ومفاتيح SSH وملفات المحافظ ضمن الأهداف [6]. وبالنسبة إلى التسريب عبر الشبكة، تنطبق ثلاث ميزات في FireAI:
- يحظر فحص البروتوكولات طلبات الويب غير المشفّرة التي تحمل أرقام بطاقات أو تفاصيل مصرفية أو كلمات مرور أو مفاتيح قبل أن تغادر جهاز Mac، ويحظر البيانات المهرّبة في صورة استعلامات DNS؛ ولا يُخزَّن شيء ولا يُرسل. راجع الوثائق.
- تعرض خريطة العالم والنشاط كل اتصال مباشرةً وفي سجل قابل للبحث. انقر بزر الفأرة الأيمن على اتصال لاختيار Deny host أو Block IP for all apps أو Block this app everywhere. راجع الوثائق.
- يقبل Ask FireAI أوامر بلغة عادية مثل «block» متبوعة باسم التطبيق كما يظهر في FireAI (المفسّر، في حالة الوكيل)، ويعرض معاينة ولا يطبّق شيئًا حتى تنقر Apply. راجع الوثائق.
بيانات الاعتماد المرسلة إلى وجهة مسموح بها عبر اتصال مشفّر تقع خارج ما يستطيع FireAI رؤيته.
الخطر 5: اتصالات غير متوقعة حين لا يراقب أحد
يعمل الوكلاء من دون إشراف. وتشير وثائق OpenClaw إلى أن المرسلين المجهولين يُقرنون افتراضيًا، وأن الوكلاء قد يرسلون الرسائل عبر القنوات ما لم يُقيَّدوا [1]؛ وتصف وثائق Hermes Agent نظامًا للموافقة على الأوامر يمكن ضبط وضعه على off [7]. وفي عمليات التشغيل غير المراقبة يُحدث الفعل الخاطئ أو المحقون أكبر قدر من الأثر قبل أن يلاحظه أحد.
- استخدم قاعدة موقوتة، تُنشأ عبر Ask FireAI، كي لا يتصل الوكيل إلا في ساعات محددة، مثل «allow the agent during work hours»؛ والنوافذ الزمنية الأربع المدمجة هي الليل والمساء وساعات العمل وعطلة نهاية الأسبوع. راجع الوثائق.
- استخدم وضع الحذر الشديد حين يعمل الوكيل من دون إشراف. فهو يحظر حركة التتبع والتطبيقات غير الموقّعة وكل منفذ غير مشفّر، وحتى أدوات النظام من Apple يجب الموافقة عليها [10].
- استخدم وضع تحت الهجوم أو مفتاح القطع (kill switch) حين يسيء الوكيل التصرف. فوضع تحت الهجوم لا يسمح إلا للتطبيقات التي لها قاعدة سماح صريحة، ويتوقف عن السؤال. ومفتاح القطع يرفض الاتصالات الجديدة بأي شيء خارج شبكة المنزل أو المكتب، ويمكن الوصول إليه أيضًا من شريط القوائم [11].
- اترك FireAI Pilot للتطبيقات الأخرى، أو راجعه في الاقتراحات، لأنه يجيب تلقائيًا عن الاتصالات التي يثق بها؛ أما بالنسبة إلى الوكيل، فالقواعد الصريحة أسهل في التدقيق.
التوصيات
- شغّل الوكيل في حساب مستخدم مخصص على macOS أو في آلة افتراضية، مع المجلدات التي يحتاج إليها فقط.
- امنحه بيانات اعتماد قابلة للإلغاء وضيقة النطاق، ولا تمنحه أبدًا مدير كلمات المرور الرئيسي أو مفاتيح SSH الخاصة بك.
- اقرأ الشيفرة المصدرية للمهارة قبل تثبيتها، وارفض أي مهارة تطلب منك لصق أمر في سطر الأوامر بوصفه متطلبًا مسبقًا.
- حدّث الوكيل باستمرار؛ فإصلاح ClawJacked لم يصل إلى المستخدمين إلا بالتحديث.
- أبقِ الموافقة على الأوامر يدوية حيث يوفرها الوكيل.
- اجمع بين قائمة السماح ومفتاح القطع ووضع يلائم المكان الذي تعمل فيه.
القيود
- يرى FireAI المفسّر الذي يفتح الاتصال (مثل node أو python3)، لا اسم الوكيل؛ والقاعدة تسري على كل ما يشغّله ذلك المفسّر. ولا يملك أي تكامل مع هؤلاء الوكلاء.
- يتحكم FireAI في أي تطبيق يتصل بأي وجهة، ويمكنه قطع الإنترنت. لكنه لا يستطيع منع الوكيل من حذف الملفات المحلية أو تشفيرها أو قراءتها، أو تنفيذ الأوامر، أو تغيير الإعدادات على جهاز Mac.
- يرفض مفتاح القطع الاتصالات الجديدة؛ ولا يقطع الاتصالات المفتوحة أصلًا.
- لا يقرأ FireAI محتوى الاتصالات المشفّرة، فالبيانات المرسلة إلى وجهة مسموح بها لا تُفحص.
- ترشيح حركة loopback بين متصفح وخدمة محلية غير موثّق؛ حدّث الوكيل لسدّ مثل هذه الثغرات.
- لا تحظر قوائم التهديدات إلا ما تؤكده؛ فالخادم الجديد أو المهارة ذات السلوك المحلي فقط لا تُغطى.
- لا يصلح جدار الحماية خيارات التصميم الخاصة بالوكيل نفسه، مثل Gateway مربوطة بعنوان عام.
- لا بد من تدابير مكمّلة: حسابات بأدنى الصلاحيات، وبيئات عزل أو آلات افتراضية، ونسخ احتياطية، وفحص المهارات قبل تثبيتها.
دور FireAI وHisnLabs
يتصرف الوكلاء بسرعة. وجدار الحماية الشبكي يقرر إلى أين يحق لهم الاتصال.
FireAI هو منتج HisnLabs نفسها: جدار حماية بذكاء اصطناعي يعمل على جهاز Mac مباشرة. يعرض بلغة واضحة كل اتصال تجريه تطبيقاتك، ويترك لك القرار فيما يخرج من جهازك — ذكاؤه الاصطناعي يعمل محليًا، فلا يُرسَل ترافيكك إلينا ولا إلى أي جهة أخرى أبدًا. فريق أبحاث الأمن في HisnLabs هو من يحافظ على دقة هذه القرارات: يصنّف النطاقات بين قياس عن بُعد عادي وخدمة حقيقية، ويتتبّع بلد وشبكة كل اتصال، ويدرّب النموذج المحلي (ميزة FireAI Pilot) على حركة اتصال حقيقية، دون أن يغادر أي شيء جهاز Mac.
يمكنك الاطلاع على القرارات التقنية وراء ذلك، أو تجربة FireAI لمدة 17 يومًا، على FireAI من HisnLabs.
