Skip to content
KitploitKITPLOIT
أدواتعمليات الاستغلالالمدونة
Log in
إرسال
أدواتعمليات الاستغلالالمدونة
إرسال

أدوات الاختراق واختبار الاختراق والأمن السيبراني لترسانتك الأمنية!

Kitploit هو دليل لأدوات الاختراق والأمن السيبراني واختبار الاختراق. اكتشف آخر تحديثات المشاريع للعثور على الثغرات وتحليل الأنظمة وأتمتة الاختبارات وتعزيز أمنك.

الخلاصاتاتصالالخصوصية© 2026 Kitploit

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
SMT — ما وراء الموجّه: كسر حماية نماذج LLM التي تستدعي الدوال عبر آثار إشراف مُحاكاة | Kitploit
أدوات/GitHubGitHub/liujlong27/smt
تحليل الثغرات الأمنيةالأوراق والأبحاثالتعلم والتعليمالفريق الأحمرأمن الذكاء الاصطناعيالهجوم العدائي
GitHubliujlong27/smt

SMT

ما وراء الموجّه: كسر حماية نماذج LLM التي تستدعي الدوال عبر آثار إشراف مُحاكاة

عرض المستودع
7137منذ شهر واحدلم تتم المراجعة بعد

الأكثر شعبية

عرض الكل →

اكتشف الأدوات الأكثر استخدامًا من قبل مجتمعنا.

استكشف جميع الأدوات

تصفح مجموعتنا من الأدوات

عرض جميع الأدوات →
مشاركة

ما وراء المطالبة: كسر حماية نماذج LLM القابلة لاستدعاء الدوال عبر آثار الإشراف المُحاكاة

arXiv Zenodo DOI

مقدمة

يحتوي هذا المستودع على التنفيذ الرسمي لورقتنا البحثية:

Beyond the Prompt: Jailbreaking Function-Calling LLMs via Simulated Moderation Traces

إذا وجدت هذا المستودع مفيدًا لبحثك، فيرجى التفكير في الاستشهاد بورقتنا البحثية. نرحب بالأسئلة وتقارير الأخطاء ومشكلات إعادة الإنتاج عبر GitHub Issues.

نظرة عامة

framework

بنية المستودع

.
├── install.sh                      # Installation script for setting up the environment and dependencies
├── main.py                         # Main evaluation entry point
├── demo.ipynb                      # Minimal working example
├── requirements.txt                # Python dependencies
├── data/
│   ├── SafeBench-Tiny.txt          # Default benchmark
│   └── JailbreakBench.txt          # Optional benchmark
├── figures/
│   ├── pipline.jpg                 # Framework overview
│   ├── main_res1.jpg               # Main result figure
│   └── main_res2.jpg               # Main result figure
├── utils/
│   ├── config.example.json         # Example API configuration
│   ├── eval_h_cot.py               # External evaluation utility
│   ├── fake_tool_call_noharmful.json
│   ├── moderation_generator.py
│   └── moderation_validator.py
└── output/                         # Checkpoints and evaluation results

البدء

1. إنشاء البيئة

نوفر نص برمجي للتثبيت لإعداد بيئة Python تلقائيًا وتثبيت جميع التبعيات المطلوبة.

chmod +x install.sh
./install.sh

بعد اكتمال التثبيت، فعّل البيئة الافتراضية:

source .venv/bin/activate

بدلاً من ذلك، يمكنك إنشاء البيئة يدويًا باستخدام Conda:

conda create -n SMT python=3.12
conda activate SMT
pip install -r requirements.txt

2. تكوين الوصول إلى API

أنشئ utils/config.json من الملف النموذجي:

cp utils/config.example.json utils/config.json

يجب أن يتبع ملف التكوين الأدنى هذا التنسيق:

{
  "llm_api": {
    "base_url": "https://your-api-endpoint/v1",
    "api_key": "YOUR_API_KEY"
  },
  "local": {
    "base_url": "http://localhost:1234/v1",
    "api_key": "YOUR_LOCAL_API_KEY"
  }
}

يتوافق هذان المُدخلان مع:

  • llm_api: نقطة نهاية API الافتراضية المتوافقة مع OpenAI للنماذج التجارية.
  • local: نقطة نهاية استدلال محلية متوافقة مع OpenAI، تُستخدم لنماذج محلية مختارة.

3. اختر معيارًا ونموذجًا مستهدفًا

افتح main.py وعدّل إعدادات التجربة قرب بداية الملف:

DATA_FILE = "SafeBench-Tiny.txt"
# DATA_FILE = "JailbreakBench.txt"

TARGET_MODELS = [
    "gpt-4o-2024-11-20",
    # "gpt-5.4-2026-03-05",
    # "qwen3-max-2026-01-23",
    # "gemini-3-flash-preview",
    # "deepseek-v4-flash",
    # "claude-sonnet-4-5-20250929", 
]

استخدم معرّفات النماذج الصالحة لنقطة نهاية API المُهيأة في utils/config.json.

4. تهيئة معاملات التقييم

تُعرَّف المعاملات الافتراضية في main.py:

MAX_THREADS = 1
MAX_ROUNDS = 3
TURNS_NUM = 3
RESET = False

معانيها هي:

المعاملالوصف
MAX_THREADSالحد الأقصى للعمال المتزامنين لكل نموذج هدف
MAX_ROUNDSالحد الأقصى لجولات إعادة المحاولة الخارجية
TURNS_NUMالحد الأقصى لمحاولات التفاعل متعدد الأدوار لكل عينة
RESETما إذا كان سيتم تجاهل نقطة تحقق موجودة قبل التقييم

عيّن:

RESET = True

لبدء تشغيل جديد للنموذج المحدد. اتركه على False للاستئناف من نقطة تحقق موجودة.

5. تشغيل التقييم

python main.py

لكل نموذج هدف، يقوم السكربت تلقائيًا بما يلي:

  1. تحميل المعيار المحدد من data/.
  2. تشغيل SMT مقابل جميع العينات المعلّقة.
  3. حفظ التقدم الوسيط بعد كل عينة.
  4. استئناف التجارب المتوقفة من نقاط الحفظ المحفوظة.
  5. الإبلاغ عن المقاييس المجمّعة بعد التقييم.

صيغة المخرجات

تُحفظ النتائج تحت:

output/attack_checkpoint_<dataset>_<model>.json

على سبيل المثال:

output/attack_checkpoint_SafeBench-Tiny_gpt-4o-2024-11-20.json

يُخزَّن كل عنصر من عناصر الاختبار المعياري مع حقول مشابهة لـ:

{
  "target_question": {
    "success": true,
    "queries": 3,
    "payload": "...",
    "score": 60
  }
}

يُبلّغ السكربت عن المقاييس التالية:

المقياسالوصف
ASRمعدل نجاح الهجوم: النسبة المئوية للعينات التي يبلغ تقييمها العتبة المُهيّأة
Avg.Qمتوسط عدد استعلامات API المستخدمة لكل عينة
Avg.Scoreمتوسط تقييم التقييم الخارجي عبر جميع العينات

متطلبات الموارد التقريبية

تعتمد تجارب SMT الرئيسية على API ولا تتطلب وحدة معالجة رسومات (GPU) محلية.

  • المعالج / الذاكرة: يكفي حاسوب محمول أو مكتبي قياسي لتشغيل سكربتات التقييم.
  • وحدة معالجة الرسومات (GPU): غير مطلوبة للتجارب التي تستخدم واجهات API لنماذج LLM التجارية.
  • الشبكة: يلزم اتصال إنترنت مستقر.
  • الوصول إلى API: يلزم امتلاك بيانات اعتماد API صالحة للنماذج المستهدفة المختارة ونموذج التقييم.
  • ميزانية الاستعلامات: مع القيم الافتراضية MAX_ROUNDS = 3 وTURNS_NUM = 3، تستخدم SMT ما لا يزيد عن 9 استعلامات للنموذج المستهدف لكل عينة معيارية قبل الإيقاف المبكر.
  • وقت التشغيل: يعتمد وقت التشغيل بشكل أساسي على النموذج المختار وحجم المعيار وزمن استجابة API وحدود المعدل. قد يستغرق التقييم الكامل عدة ساعات.
  • تكلفة API: تعتمد على مزوّد النموذج وأسعار API الحالية.

بالنسبة للنماذج المنشورة محليًا، تعتمد متطلبات GPU والذاكرة الإضافية على النموذج المختار وواجهة الاستدلال الخلفية.

ملاحظات قابلية إعادة الإنتاج

يتم تحديث واجهات API لنماذج LLM التجارية باستمرار. حتى عند استخدام الاسم المستعار نفسه للنموذج، قد تختلف النتائج بسبب تحديثات النموذج من جانب المزوّد، أو سلوك التوجيه، أو تغييرات سياسة الأمان، أو إعدادات فك التشفير، أو أعطال API العابرة.

لتحسين قابلية إعادة الإنتاج:

  • يُفضّل استخدام لقطات النماذج المؤرخة كلما توفرت.
  • إبقاء ملفات المعيار دون تغيير.
  • تسجيل المزوّد ونقطة النهاية ومعرّف النموذج والتاريخ والمعاملات لكل تشغيل.
  • استخدام العتبة وميزانية الاستعلامات نفسها المذكورة في الورقة البحثية.

أُجريت جميع التجارب المذكورة في هذا المستودع في يونيو 2026. ولأن آثار التحقق المحاكاة تتضمن عناصر عشوائية، فإن مخرجات النماذج عشوائية بطبيعتها، كما أن قدرات النماذج وآليات الكشف الخارجية تواصل التطور، لذا قد تختلف سجلات التفاعل الدقيقة والنتائج المُعاد إنتاجها عن تلك المذكورة هنا حتى في ظل الإعداد العام نفسه.

النتائج الرئيسية

main_results

main_results

يقارن تقييمنا بين SMT ونماذج أساسية تمثيلية لكسر الحماية (jailbreak) عبر عدة نماذج LLM تجارية تدعم استدعاء الدوال ومعيارين للسلامة.

يُرجى الرجوع إلى الورقة البحثية للاطلاع على الإعدادات التجريبية الكاملة وتطبيقات النماذج الأساسية والتفاصيل الإحصائية وتحليل الدفاعات.

اعتبارات أخلاقية

يدرس هذا المشروع أنماط الفشل في أنظمة LLM المتوافقة مع معايير السلامة والتي تدعم استدعاء الدوال. ويهدف الكود والمواد المرتبطة به إلى دعم:

تنزيل الأداة