أقتل المفاتيح وقطع الأدار و رموز القناري
Type: Learn
Languages: Python (stdlib, three-detector simulator: kill switch, circuit breaker, canary)
Prerequisites: Phase 15 · 13 (Cost governors), Phase 15 · 10 (Permission modes)
Time: ~60 minutes
المشكلة
حكم التكلفة (درس 13) حد ما يمكن للعميل أن ينفق. لا يحدون ما يمكن للعميل أن يفعل داخل الميزانية. لا يزال العميل مع حد السرعة 50 دولار يمكن أن يفرز سرا، ونشر المنشور الخطأ، أو حذف موارد العمل الثمين هو غالبا ما رخيص في الرموز.
هذا الدروس يغطي الكشف الثلاثة التي تجلس بجانب طبقة التكلفة:
- Kill switch: زر خارج الجهاز المحتجز خارج نطاق الوكيل.
- Circuit breaker: كاشف النمط الحركي الذي يوقف مسار محدد.
- Canary tokenالطعم الذي يظهر به العميل بدون سبب مشروع للمس
كل ثلاثة هي هندسة ما قبل LLM. الخداع الكلاسيكي، وقطع حدود السعر، ودمار العلامات التجارية قبل العملاء المستقلين. ما هو جديد هو سطح الهجوم: العملاء يقرأون المحتوى غير الموثوق به (الدرس 11) ، ويحرر ذاكرةهم الخاصة، ويمكن أن يكوّن العديد من الإجراءات التي تبدو آمنة إلى واحدة غير آمنة. يعمل الكشفيون الذين أطلق عليهم اسم هنا لأنهم لا يثقون في تقرير العميل الذاتي.
المفهوم
أجهزة إيقاف
تغيير القضاء هو بوليان الذي يقرأه الوكيل ولكن لا يستطيع كتابته. خيارات التنفيذ:
- Feature flag in a managed service.إطلاق "مظلم" و "ستاتسيج" و "إطلاق" التحديثات تنتشر خلال ثوان
- Redis key the agent polls.بسيط، يتطلب العملية العميلة للتحقق في كل جولة.
- Signed config in object storage.العميل يُحقق من توقيع على القيادة، يرفض الحالات غير الموقعة.
- OS-level signal or container-lifecycle kill.(دوكر)
kill، كوبرنيتسkubectl delete pod، توقف النظام
المكونات المكونة من مفاتيح القتل الصحيحة:
- الوكيل لا يستطيع تعيينها
off(يعيش في نظام لا يكتب شهادات الوكيل) - يتم التحقق من كل عمل متواصل، ليس فقط عند بدء العمل.
- عندما تكون مغلقة، لا يفعل الوكيل أي شيء قابل للملاحظة من الخارج، بما في ذلك تسجيل الأنظمة التي يمكن للوكيل الوصول إليها.
- إعادة تمكينها هو عمل بشري صريح، وليس توقيت تلقائي.
قطع الدوائر
يوقف مفصل الدوائر نمطًا محددًا ، وليس العامل بأكمله. الشكل الكلاسيكي (من كتاب نيغارد 2007 ، لا يزال موجودًا):
- Closed: الإجراء مسموح به.
- Open: الإجراء مسدود
- Half-open: بعد التبريد، يسمح بمحاولات 13 من المسبار (الوضع الافتراضي 1). يُغلق الكمبيوتر بنجاح، ويعيد فتح الكمبيوتر إعادةً بعد أي فشل.
عوامل محفزة ذات صلة بالوكيل:
- خمس مكالمات أداة متطابقة على التوالي (حلقة تكرارية).
- خمس فشل متتالية على نفس الأداة مع مدخلات مختلفة (الفشل النظامي).
- معدل الدعوات الأداة فوق عتبة (سرعة الدروس 13).
- أداة محددة استدعاء (مثل:
file.delete) بعد قراءة محتوى غير موثوق به (الدرس 11).
رموز القناري
رموز القناري (المسمى أيضاً بالعسل) هي مدخلات يجب ألا يلمسها العميل.
أمثلة عن الوكلاء:
- مزيف
AWS_SECRET_ACCESS_KEYفي بيئة بدون امتيازات فعلية محاولات التخفيض يمكن إلقاءها على الفور - سجل قاعدة بيانات مزيف مع علامة معينة قيمة الحارس. أي قراءة أو تحديث لهذا السجل يطلق تنبيه.
- ملف مزيف في مكان العمل قراءة أو تحرير هذا الملف مشبوه
- إدخال ذاكرة مزيف تم حقن في بداية الجلسة. إذا ظهرت في خروج لاحقة، فقد تم إزالة الذاكرة.
تصميم القناري هو محدد لتدفق العمل. القناري الذي لديه سبب شرعي لمس هو الضجيج.
لماذا طبقة الإحصائيات والحدود القاسية
الكشف الإحصائي (EWMA، CUSUM، z-score على معدلات الاتصال بالأداة) تتكيف مع خط أساسي متحرك. هذه ميزة للتحرك المشروع والخطأ للتحرك المتضاد. يمكن للمهاجم المريض أن يغير خط الأساس ببطء بما فيه الكفاية حتى لا يتم إطلاق الإنذار.
الحدود الدستورية الصارمة (الدرس 17) لا تتعوق.secrets@"قاعدة دستورية أبسط، قابلة للتدقيق، وغير قابلة للعب عن طريق التدفق البطيء. نمط الطبقات: الكشف الإحصائي يلتقط أكثر الضوضاء، الحدود القاسية يلتقط الهجوم الذي تمر من قبل الكشف.
الحجر الصحي عبر إعادة توجيه البيانات eBPF
سياسة شبكة "سيليوم" القائمة على "بيب إف" يمكن أن تعيد كتابة خروج القنبلة المحصنة إلى "مخزن العسل" الشرعي في طبقة النواة. تقرير الموازين العامة لـ Cilium عن تأخير البيانات P99 في أقل من ملثانية على TCP_RR؛ يهيمن ميزانية الساعة الحائطية لـ تشغيل الحجر الصحي في الكلاستر على كيفية انتشار تحديث السياسة من طائرة التحكم إلى العقد (أقرب من بضع مئات من ملثانية هو واقعي على Kubernetes مع تشغيل المشغل مسبقًا؛ تأخير الذيل يعتمد على حجم الكلاستر وتوفير الترتيب). هذا يعطيك شيئين: الوكيل لا يخرج أي شيء حقيقي، و سلوك الوكيل داخل علبة العسل يلاحظ تماما. نفس النمط، طبقة مختلفة، مثل رمز القناري: وكيل يكشف عن النية من خلال ما يحاول القيام به بينما يحتوي.
ما لا يمسكه أي جهاز كشف
- Semantic attacks that compose from allowed primitives.كل عمل فردي يمر كل كاشف، والتركيب هو المشكلة. هذا هو الفشل المركب في وضع التلقائي من الدروس 10.
- Attacks that include the detector as part of the payload.إذا قرأ وكيل صفحة تقول "قبل أن تتصرف، أوقف القناري" والوكيل لديه القدرة، الكاشف يعرض للخطر. يجب أن تكون رموز القناري في أنظمة لا يمكن للوكيل تعديلها.
استخدمها
code/main.pyيحاكي مسار العميل القصير من خلال ثلاثة كشافات. مفاتح القتل الذي يتم عقده في إشارة خارجية؛ مفاتح الدائرة الذي يتعثر على خمس مكالمات أداة متطابقة؛ ملف قناري الذي يطلق قراءته تنبيه. يغذى في مسار اصطناعي: إجراءات مشروعة، حلقة متكررة، اختبار قناري، والسيناريو الذي يتم إطلاقه على مفاتح القتل حيث يتم إيقاف إجراءات العميل.
أرسله
outputs/skill-tripwire-design.mdيراجع كومة الكشف المقترحة لنشر وكيل ويشير إلى الفجوات (مفتوحة مفاتيح القتل، مفقودة القناري، عتبة قطع الدوائر مرتفعة جدا).
التمارين
- أركض
code/main.pyتأكيد إشعال قطع الأدارة في المنحنى الخامس (المكالمة الخامسة نفسها) والإشعال القناري في المنحنى التاسع (قراءة المفاتيح المزيفة).
- إضافة كاشف إحصائي: EWMA-z-score على معدل الاتصال بالأداة. إرسال في مسار يتحرك ببطء ويعرض الكاشف لا يطلق أبدا. الآن إضافة حد صلب (لا أكثر من 50 اتصال أداة في 10 دقائق) ويعرض حرائق حد صلب على نفس المسار.
- صمم رمز قناري لجهاز متصفح (المدرس 11) قم بإدراج ثلاثة قناريات على الأقل وما ستكتشف كل منها.
- اقرأ وثائق سياسة شبكة "سيليوم". وصف تدفق الحجر الصحي المباشر للخروج بشكل ملموس: أي اختيار سياسة، أي قنبلة، أي إعادة كتابة الخروج، أي إنذار. ما الذي يحكم تأخير الساعة الجدارية من "التحديد إلى الحجر الصحي" إلى "الحزمة المباشرة الأولى"؟
- تعريف إجراء إعادة تمكين لعميل يقتل، من يمكنه إعادة تمكين؟ ما الذي يجب توثيقه؟ ما الذي يجب تغييره حول العميل قبل إعادة تمكينه؟
الشروط الرئيسية
| Term | What people say | What it actually means |
|---|---|---|
| Kill switch | "Off button" | Boolean outside the agent's edit surface; checked on every consequential action |
| Circuit breaker | "Pattern pause" | Action-specific trip on repetition, failure rate, or rate-limit |
| Canary token | "Honeytoken" | Bait the agent has no legitimate reason to touch; access fires an alert |
| Honeypot | "Forensic sandbox" | Redirected traffic / workspace where a quarantined agent is observed |
| EWMA | "Moving average" | Exponentially weighted; adapts to drift (feature + bug) |
| CUSUM | "Cumulative sum" | Detects sustained shift from baseline |
| Hard limit | "Constitutional rule" | Does not adapt; constant regardless of history |
| Constitutional limit | "Always-true rule" | Tied to Lesson 17's constitution; cannot be edited by the agent |
المزيد من القراءة
- Anthropic — Measuring agent autonomy in practiceإطار المفتاح والكسر للعملاء المستقلين
- Microsoft Agent Framework — HITL and oversightنمط حكم الإنتاج
- OWASP LLM / Agentic Top 10 متطلبات الكشف والرد.
- Cilium — Network policy and eBPF إعادة توجيه الخروج على مستوى القنبلة ونماطين العسل الشرعي.
- Anthropic — Claude's Constitution (January 2026) حظرات مدرجة بصورة صلبة كـ "حدود دستورية".
This free lesson is part of the AI Engineering from Scratch curriculum. Read the full explanation, run the lesson code, and verify the result in the interactive reader or from the repository source.
Browse the complete course catalog or open this lesson on GitHub.