https://api.orcarouter.ai/v1/...؛ وحدها المفاتيح والسياسات في
البوابة تتغيّر. لتشريح الهجوم الكامن، اقرأ
حقن المطالبة و
استدعاءات الأدوات الخطرة؛
هذه الصفحة هي الاستجابة.
الأدوار التي تحتاجها كل خطوة مذكورة في موضعها. قراءة تغذية Matches
لحواجز الحماية مفتوحة لأي Member؛ عروض Events وRuns والتتبّع
لجدار الحماية تحتاج Developer+؛ إبطال مفتاح، وتطبيق موقف استقلالية،
وتحرير سياسة تحتاج Developer+؛ تعليم تطابق حاجز حماية كإيجابية كاذبة
يحتاج Admin.
1. حلقة الاستجابة لحوادث أمان الذكاء الاصطناعي
ثلاث مراحل، تُشغَّل بترتيب. لا تقفز مباشرةً إلى التقوية — احتوِ أولاً بحيث يفقد المهاجم الوصول بينما تحقّق.احتوِ
أبطل المفتاح المخترَق بحيث لا يستطيع المهاجم إجراء استدعاء آخر. اسكك
بديلاً جديداً محدّد النطاق بإحكام.
حدّد النطاق
اقرأ تغذيتي Events / Runs لجدار الحماية وMatches لحواجز
الحماية لرؤية ما فعله المفتاح بالضبط وما أُطلق.
قوِّ
شدّد موقف الاستقلالية وأضف القاعدة التي كانت ستلتقطه، بحيث لا يمكن أن
يتكرر نفس الهجوم.
2. احتوِ — أبطل المفتاح
الحركة الأولى هي قطع الوصول. مفتاحsk-orca-... مسرَّب يستمر في العمل
حتى تبطله، فافعل هذا قبل أي شيء آخر.
في وحدة التحكم، افتح API Keys، اعثر على المفتاح المخترَق (مقنَّع عند
العرض — طابقه بالاسم أو البيئة أو آخر استخدام)، واحذفه (دور
Developer). الحذف فوري: الطلب التالي مباشرةً على ذلك المفتاح يُرفض
في البوابة.
ثم اسكك بديلاً، محدّد النطاق إلى الحد الأدنى الذي يحتاجه حمل العمل — لا
مفتاحك على مستوى الحساب أبداً. في API Keys → New key (دور
Developer):
ضع سقفاً لنطاق الانفجار على المفتاح الجديد
ضع سقفاً لنطاق الانفجار على المفتاح الجديد
اضبط
credit_limit_usd على سقف معقول (0 = بلا حد) بحيث لا يستطيع
تسرّب مستقبلي استنزاف الحصة، وallow_ips على عناوين IP الصادرة
لخادمك الخلفي إذا كان المستدعي يعمل من خادم ثابت، وexpired_time
لأي شيء مؤقت (-1 = لا تنتهي صلاحيته أبداً). استخدم model_limits
(مع model_limits_enabled) لتسييج المفتاح إلى النماذج التي يحتاجها
فقط.اربط سياساتك بالمفتاح الجديد
اربط سياساتك بالمفتاح الجديد
اختر حاجز حمايتك المقوَّى من القائمة المنسدلة Guardrail (يضبط
guardrail_id) وسياسة جدار حمايتك من القائمة المنسدلة
Firewall policy (يضبط firewall_policy_id). يعيش كلا الربطين على
المفتاح في البوابة، فيكون المفتاح الجديد محكوماً من أول استدعاء. انسخ
النص الصريح مرة واحدة — مقنَّع في كل مكان بعد الإنشاء.3. حدّد النطاق — اقرأ تغذيتي Events وMatches
الآن اكتشف ما فعله المفتاح فعلاً. سجّلت البوابة بالفعل كل استدعاء أداة وكل قاعدة أُطلقت — ضمن نطاق مساحة العمل، بلا أدوات إضافية.| التغذية | أين | الدور | ماذا تجيب |
|---|---|---|---|
| Firewall → Events | لكل استدعاء أداة | Developer+ | كل تقييم — الحكم، السطح، الأداة، الوسائط، التشغيل الذي ينتمي إليه. |
| Firewall → Runs | مجمّع | Developer+ | “ماذا فعلت جلسة الوكيل هذه فعلاً” — مزيج الأحكام، الأدوات والنماذج المتمايزة. |
| Guardrails → Matches | لكل إصابة قاعدة | Member | كل قاعدة حاجز حماية أُطلقت — النوع، الإجراء، المرحلة، التفصيل. |
deny وaudit لرؤية ما
حُجب مقابل ما تسلّل تحت موقف مراقبة-فقط.
تحقّق المرجعي من Guardrails → Matches لنفس النافذة. إذا علّمت قاعدة
Prompt-Injection Basics الطلب — عبارات مثل “ignore previous
instructions” أو “reveal your system prompt” — يحطّ هنا بنوع القاعدة
ومرحلتها.
تسجّل تغذية Matches السلسلة الفرعية المطابقة فقط عندما يكون Log
raw content مفعّلاً لذلك الحاجز — وهو مطفأ افتراضياً (الموقف
المحافظ على الخصوصية). مع إطفائه لا تزال ترى أنّ قاعدة أُطلقت وسلسلة
التفصيل الميتا، لا النص الحرفي. شغّله لكل حاجز عندما تحتاج السلسلة
الفرعية للفرز؛ المفتاح غير رجعي.
POST /api/guardrail/match/:id/mark-fp، Admin) بحيث يتوقف عن حرف
إشارتك بينما تضبط.
4. قوِّ — أغلق الثغرة
الاحتواء يوقف هذا المهاجم؛ والتقوية توقف التالي. حركتان: شدّد موقف مساحة العمل فوراً، ثم أضف القاعدة المحددة التي كانت ستلتقط ما رأيته للتوّ.المسار السريع — ارفع مستوى الاستقلالية
إذا كشف الحادث وكيلاً كان يعمل مفتوحاً أكثر من اللازم، اقلب موقف مساحة العمل كله في معاملة واحدة. في Firewall → Posture، طبّق مستوى الاستقلاليةtight
مستوى الاستقلالية (دور
Developer). في حركة واحدة يضبط هذا حجب-افتراضي، ويرفض الـ shell
المدمّر، ويرفض أسماء أدوات SSRF على هيئة جلب، ويفرض حاجزي PII Shield
وSecrets & API-Key Blocker. كل تغيير معاملة واحدة بـ تراجع بنقرة
واحدة من لقطة التدقيق، فتستطيع التراجع مباشرةً إن كان أصرم من اللازم.
المسار الدقيق — أضف القاعدة التي كانت ستلتقطه
لحقن المطالبة تحديداً، يطرح OrcaRouter إعداد Prompt-Injection Basics مسبقاً (الفئة safety) — قاعدة كلمة مفتاحية تعلّم عبارات الحقن الشائعة للمراجعة دون حجب المستخدم. ابدأ هناك للحصول على إشارة، ثم تصعّد. شقيقه الأصرم، Jailbreak / Role-Play Blocker، يحجب نفس الفئة بـ regex. في Guardrails → New guardrail (دور Developer؛ صندوق رمل Test يشغّل القواعد المرشَّحة مضمّنةً — يجريllm_judge استدعاء نموذج
مدفوع — فهو Developer+ أيضاً)، طبّق الإعداد المسبق Prompt-Injection
Basics، ثم أضف قاعدة llm_judge لالتقاط الحقن المبهَم الذي تفوّته
قائمة الكلمات المفتاحية:
judge_fail_open: false لمعاملة خطأ
القاضي أو انتهاء مهلته كحجب عندما يكون فحص مفقود غير مقبول. أثبت السياسة
كلها في تبويب Test ومقابل مجموعة Eval قبل ربطها بمفتاح.
اطرح القاعدة الجديدة بأمان
لا تفرض قاعدة جديدة بلا رؤية على حركة المرور الحية. لجدار الحماية، اضبطshadow_mode: true على السياسة — يُخفَّض كل حكم فارض إلى audit
ويُسجَّل كـ [shadow] would …، فتراقبها تُطلق على تغذية Events قبل
أن تغيّر أي حركة مرور. لحواجز الحماية، اضبط إجراء قاعدة جديدة على
flag أولاً، راقب تغذية Matches، ثم رقِّها إلى block أو
mask. انظر
أوضاع الفرض لمسار المراقبة ←
الظل ← الفرض الكامل.
5. تحقّق من الإصلاح
أكّد أن الحلقة مغلقة قبل أن تعدّه محلولاً.أعِد تشغيل الهجوم في صندوق الرمل
الصق المطالبة الخبيثة في تبويب Test لحاجز الحماية على مرحلة
input وأكّد أن الحكم الآن حجب (أو تعليم). لحادث استدعاء أداة، شغّل
تجريبياً الاستدعاء المخالف في Firewall → Test (Developer+) وأكّد
أن الحكم deny. لا يرسل أيّ صندوق رمل شيئاً للأعلى ولا يحفظ شيئاً.أكّد أن المفتاح القديم ميّت
أرسل طلباً على المفتاح المُبطَل وأكّد أنه يُرفض. يعيد حاجز حماية محجوب
HTTP 400
guardrail_blocked؛ يعيد استدعاء أداة مرفوض HTTP 400
firewall_blocked — وحجب يكلّف لا حصة (تُطلق حجوب مرحلة الإدخال
قبل القياس؛ حجوب المخرجات تردّ الحصة المستهلكة مسبقاً) ويُعلَّم
skip-retry.6. دليل التشغيل في لمحة
| المرحلة | الإجراء | أين | الدور |
|---|---|---|---|
| احتوِ | احذف المفتاح المسرَّب | API Keys | Developer+ |
| احتوِ | اسكك بديلاً محدّد النطاق | API Keys → New key | Developer+ |
| حدّد النطاق | اقرأ استدعاءات الأدوات + الأحكام | Firewall → Events / Runs | Developer+ |
| حدّد النطاق | اقرأ القواعد التي أُطلقت | Guardrails → Matches | Member |
| قوِّ | ارفع الموقف | Firewall → Posture (tight) | Developer+ |
| قوِّ | أضف القاعدة اللاقطة | Guardrails / Firewall | Developer+ |
| تحقّق | أعِد التشغيل في صندوق الرمل | تبويبات Test | Developer+ |
7. إلى أين تذهب بعد ذلك
قائمة تحقق الإطلاق
تمريرة تقوية ما قبل الإنتاج — حدّد نطاق المفاتيح واقفل الموقف قبل أن
تطلق.
حقن المطالبة
الهجوم الذي يستجيب له دليل التشغيل هذا، من طرف إلى طرف.
أوضاع الفرض
مراقبة ← ظل ← فرض — اطرح قاعدة جديدة دون كسر حركة المرور.
أوقف التسريب
اقفل الوجهات الصادرة إن لمس الحادث الشبكة.
