
إطار عمل للاختراق الذكي للوكلاء (Agentic Jailbreak) يستهدف الوكلاء القائمين على نماذج اللغة الكبيرة (LLM)، وذلك باستخدام تفكيك المهام القائم على المخططات، واستراتيجيات التمويه متعددة الجولات، والتطور الذاتي التكيفي لاستكشاف المخاطر الأمنية الناشئة.
تفكيك المهام القائم على المخططات. لتقليل صعوبة الهجوم، نطوّر حوالي 20 مخطط تفكيك إجرائي لتحويل مهمة ضارة معقدة إلى تسلسلات مهام فرعية بسيطة وشبه حميدة نسبيًا. نقيس هذه التسلسلات المرشحة عبر بُعدين، هما الضرر والصعوبة، ونختار الأمثل منها لتنفيذ الهجوم.
تفاعل متعدد الأدوار موجّه نحو التنفيذ. بالنسبة للمهام الفرعية التي تُثير رفض التنفيذ، يبني TRACE ملفات تعريف للمهام الفرعية ويستدعي استراتيجيات تفاعل متعدد الأدوار موجّهة نحو التنفيذ مناسبة من مكتبة استراتيجيات متطورة باستمرار. يستفيد TRACE من الاستراتيجية المختارة لتنفيذ المهمة الفرعية ويبني تدريجيًا سياق تنفيذ معقول من خلال تفاعلات متعددة الأدوار، مما يحفّز الوكيل الهدف على إكمال المهمة الفرعية.
الاسترداد التكيفي وتطور الاستراتيجيات. عندما تفشل خطوة وسيطة، يحدد TRACE موقع المهمة الفرعية الفاشلة، ويحافظ على التقدم السابق، ويكيّف الاستراتيجية المقابلة، ويستأنف من المهمة الفرعية الفاشلة دون البدء من جديد. علاوة على ذلك، يستفيد TRACE من ملاحظات التنفيذ لتطوير مكتبة الاستراتيجيات الموجّهة نحو التنفيذ باستمرار.
يتوفر عرضان توضيحيان مسجّلان مع Claude Code وCodex في assets/:
| الوكيل الهدف | العرض التوضيحي |
|---|---|
| Claude Code | عرض Claude Code التوضيحي |
| Codex | عرض Codex التوضيحي |
| المسار | المحتويات |
|---|---|
improved_decomposer/ | المخططات الإجرائية، وتوليد المرشحات، والتحقق، والاختيار |
experiment/main.py | تنسيق التجارب وملاحظات التنفيذ |
experiment/runtime/ | مكونات وقت التشغيل للنماذج والاستراتيجيات وتسلسلات المهام الفرعية |
experiment/strategy_library/ | تخزين الاستراتيجيات واستدعاؤها ومراجعتها ودمج الملاحظات |
experiment/config/ | إعدادات التجارب وقوالب التوجيهات |
agent_execution/ | واجهات الوكيل الهدف، وإدارة الجلسات، وجمع المسارات، والتحقق |
tools/ | جسور المعايير، ومحولات API، وأدوات التشخيص |
assets/ | فيديوهات عرض Claude Code وCodex التوضيحية |
environment.yml | مواصفات بيئة Conda |
تستهدف مواصفات البيئة المقدمة نظام Linux وPython 3.11.
conda env create -f environment.yml
conda activate trace
قم بتعيين بيانات الاعتماد وعنوان URL الأساسي لنقطة نهاية Chat Completions المتوافقة مع OpenAI:
export OPENAI_API_KEY="<your-api-key>"
export OPENAI_BASE_URL="<your-api-base-url>"
python improved_decomposer/improved_task_decomposer.py \
--data_file_path /path/to/tasks.json \
--output_file_path outputs/decompositions.jsonl \
--model "<decomposition-model>" \
--num_decompositions_per_task 5 \
--use_schema_decompose
يُمكّن --use_schema_decompose توليد المرشحات القائم على المخططات.
يستخدم المثال التالي معيار AdvCUA مع Codex.
python experiment/main.py \
--dataset /path/to/benchmark_with_subtasks.jsonl \
--config experiment/config/config.yaml \
--lab-backend vrap \
--compose-file /path/to/benchmark/docker-compose.yml \
--attacker-model-path /path/to/attacker-model \
--target-backend codex \
--codex-model "<target-model>" \
--responses-base-url "<target-responses-api-base-url>" \
--responses-env-key OPENAI_API_KEY \
--strategy-library outputs/experiment/strategy_library.json \
--output outputs/experiment/results.jsonl
لفحص خيارات سطر الأوامر المتاحة:
python improved_decomposer/improved_task_decomposer.py --help
python experiment/main.py --help