كل شيء هنا يرتبط بـمساحة عملك ويُضبط من وحدة التحكم. يستمر وكيلك في
استدعاء
https://api.orcarouter.ai/v1/... بنفس مفتاح sk-orca-... —
وحدها السياسة في البوابة تتغيّر. تتطلب إجراءات الضبط الأدوار المذكورة في
كل خطوة؛ أما استدعاءات الترحيل فتستخدم المفتاح المحدّد النطاق. يرى جدار
الحماية egress فقط للوجهات الموجَّهة عبر البوابة (مسار إرسال MCP أو خطّاف
evaluate) — وجّه استدعاءات أدواتك المرتبطة بالشبكة عبره وتصبح محكومة.1. الطبقات الثلاث التي تمنع تسريب بيانات الذكاء الاصطناعي
تلتقط كل طبقة الهجوم عند نقطة مختلفة في دورة حياة الطلب. كدّس الثلاث — فهي مستقلة ومتكاملة.بيانات الاعتماد في المطالبة
سرّ ملصوق في (أو مسحوب إلى) الطلب يُلتقَط على مرحلة الإدخال بحاجز
Secrets Blocker — قبل أن يراه أي نموذج.
الأسرار في وسائط الأدوات
نموذج يصدر استدعاء أداة يحمل بيانات اعتماد يُنظَّف بقاعدة جدار حماية
sanitize، التي تنقّح الوسيطة المطابقة.
الوجهة الصادرة
خطوة الشبكة الفعلية محدودة بقائمة سماح egress — وحدها المضيفون
المُعدَّدون يمرّون؛ وكل ما عداهم يُرفض.
2. أوقف بيانات الاعتماد عند المطالبة — حاجز Secrets Blocker
أول ما تقفله هو بيانات الاعتماد نفسها. يعمل حاجز Secrets & API-Key Blocker على مرحلة الإدخال ويمسح الطلب بحثاً عن أنماط بيانات الاعتماد — مفاتيح وصول على نمط AWS، ومفاتيح OpenAI، وJWTs، ورموز مشابهة — قبل أن يغادر الطلب البوابة. عند تطابق يُحجب الطلب: لا تصل بيانات الاعتماد أبداً إلى نموذج ولا تحطّ أبداً في استدعاء أداة. في وحدة التحكم، افتح Guardrails → New guardrail (دور Developer؛ القراءات وصندوق رمل Test مفتوحة لأي عضو)، وسمِّهexfil-shield، وطبّق
الإعداد المسبق Secrets & API-Key Blocker من مكتبة القوالب (الفئة
secrets). يزرع الإعداد المسبق ثلاث قواعد حجب regex على مرحلة input،
واحدة لكل شكل بيانات اعتماد — مفاتيح وصول AWS، ومفاتيح على نمط OpenAI،
ورموز GitHub:
guardrail_blocked، ولا يكلّف أي
حصة (يُطلق حجب مرحلة الإدخال قبل القياس)، ويُعلَّم skip-retry. أثبته في
تبويب Test — الصق مفتاح AWS عينة، اختر مرحلة input، وأكّد الحكم —
قبل أن تربط مفتاحاً.
3. نقّح الأسرار من وسائط استدعاء الأدوات
يفحص حاجز حماية المطالبة؛ لا يرى استدعاءات الأدوات التي يصدرها نموذج. عندما ينتج النموذجtool_call تحمل وسائطه بيانات اعتماد، تلتقطه قاعدة
جدار حماية sanitize. ينقّح sanitize السلاسل الفرعية المطابقة من
وسائط استدعاء الأداة ويمرّر الاستدعاء المنظَّف — تعمل الأداة، لكن
بالسرّ مجرَّداً.
في Firewall → Policies → New policy (دور Developer)، سمِّها
exfil-firewall وأضف قاعدة sanitize على سطح response — الـ tool_calls
التي يصدرها النموذج في رده:
4. اقفل الوجهات الصادرة — قائمة سماح egress
أمتن دفاع هو حدّ الشبكة نفسه: عدّد المضيفين المسموح لوكلائك بالوصول إليهم شرعاً وارفض كل ما عداهم. تستخدم قاعدة egressstage: egress وحقل
egress؛ يحدّد الحكم القطبية — allow يمرّر الوجهات المسرودة وقاعدة
deny شاملة ذات أولوية أدنى تحجب الباقي.
أضف هذه القواعد إلى نفس سياسة exfil-firewall:
169.254.169.254) ونطاقات RFC-1918 الخاصة (10.0.0.0/8،
172.16.0.0/12، 192.168.0.0/16). يعيد استدعاء مرفوض HTTP 400
firewall_blocked.
لا يطرح أي إعداد مسبق قواعد egress بـ CIDR — تؤلّف مدخلات السماح والرفض
host/CIDR بنفسك. مستوى الاستقلالية
tight
مستوى الاستقلالية هو
المسار السريع المجاور: يرفض أسماء الأدوات على هيئة جلب
(http_fetch، web_search، fetch_url، request) بالكامل، مزيلاً قدرة
الشبكة قبل أن تُقيَّم وجهة أبداً. استخدمه عندما لا يحتاج وكيلك تلك الأدوات
إطلاقاً.5. اربط مفتاحاً واحداً محدّد النطاق
لا تفرض السياسة إلا على المفاتيح التي تُحَل إليها. أعطِ الوكيل مفتاحه الخاص، محدّد النطاق إلى الحد الأدنى الذي يحتاجه — لا تستخدم أبداً مفتاحك على مستوى الحساب. في API Keys → New key (دور Developer):اربط كلتا السياستين
اربط كلتا السياستين
اختر
exfil-shield من القائمة المنسدلة Guardrail (يضبط
guardrail_id) وexfil-firewall من القائمة المنسدلة
Firewall policy (يضبط firewall_policy_id). يعيش كلا الربطين على
المفتاح في البوابة. لا يتراجع ربط حاجز حماية صريح صامتاً أبداً —
تعطيله هو مفتاح الإطفاء. أما سياسة جدار حماية معطّلة، بالمقابل،
فتتراجع إلى سياسة مساحة العمل الافتراضية.ضع سقفاً لنطاق الانفجار
ضع سقفاً لنطاق الانفجار
اضبط
credit_limit_usd على سقف معقول (0 = بلا حد) بحيث لا يستطيع
مفتاح مخترَق استنزاف الحصة، وallow_ips على عناوين IP الصادرة لخادمك
الخلفي إذا كان الوكيل يستدعي من خادم ثابت. اضبط expired_time
للمفاتيح المؤقتة (-1 = لا تنتهي صلاحيته أبداً).exfil-shield وكل استدعاء أداة عبر exfil-firewall
دون أي كود يدري أن الفرض يحدث.
6. اطرح بوضع الظل، ثم راقب
إن لم تكن تعرف بعد كل مضيف يصل إليه وكيلك شرعاً، لا تفرض بلا رؤية — راقب أولاً. انظر أوضاع الفرض لمسار المراقبة ← الظل ← الفرض الكامل.ظلّل قواعد egress
اضبط
shadow_mode: true على exfil-firewall. يُخفَّض كل حكم فارض
إلى audit ويُسجَّل كـ [shadow] would deny مع الوجهة. لا تُحجب أي
حركة مرور بينما وضع الظل مفعّل.راقب التغذيات
Firewall → Events / Runs (Developer+) يُظهر كل استدعاء أداة ووجهة
egress اصطدم بها وكيلك وما كان سيُرفض. Guardrails → Matches
(أي Member) يُظهر كل سرّ التقطه حاجز الإدخال. اضبط قائمة
allow لـ
egress حتى لا يُرفض إلا المضيفون القابلون لوصول المهاجم.تسجّل تغذية Matches السلسلة الفرعية المطابقة فقط عندما يكون Log
raw content مفعّلاً للحاجز (مطفأ افتراضياً — الموقف المحافظ على
الخصوصية). علّم إيجابية كاذبة (Admin) لتضبط السياسة. كل تغيير في حاجز
حماية يكتب صف سجل-إصدارات يمكنك diff وrevert؛ تُسجَّل تغييرات سياسة جدار
الحماية في مسار التدقيق.
7. التغطية في لمحة
| خطوة التسريب | الطبقة التي توقفها |
|---|---|
| بيانات الاعتماد تدخل الطلب | حاجز Secrets Blocker (الإدخال) |
| النموذج يصدر استدعاء أداة يحمل سرّاً | قاعدة جدار حماية sanitize (سطح response) |
| الأداة تطلب مضيف مهاجم | قاعدة egress allow / deny |
| الوكيل يصل إلى البيانات الوصفية للسحابة أو RFC-1918 | قاعدة رفض egress تسرد تلك الـ CIDRs |
| أداة على هيئة جلب مُقدَّمة للنموذج | مستوى الاستقلالية tight (رفض اسم الأداة) |
8. إلى أين تذهب بعد ذلك
مرجع قواعد جدار الحماية
لغة المطابقة الكاملة — قوائم egress، وCIDRs، والمُطهّرات، وكل الأحكام.
تهديد تسريب البيانات
تشريح الهجوم الذي تدافع عنه هذه الوصفة، من طرف إلى طرف.
تقوية وكيل MCP
احكم كل
tools/call يرسله وكيل عبر خادم MCP.تسجيل آمن لـ PII
أبقِ البيانات الحساسة خارج سجلات طلباتك وتغذية Matches.
