Skip to content
KitploitKITPLOIT
أدواتالمدونة
إرسال
أدواتالمدونة
إرسال

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
StealthRL — StealthRL: إطار عمل RL لإعادة صياغة نصوص الذكاء الاصطناعي بشكل عدائي لاختبار متانة أجهزة الكشف. | Kitploit
أدوات/GitHubGitHub/suraj-ranganath/stealthrl
الأوراق والأبحاثالتعلم والتعليمالفريق الأحمرأمن الذكاء الاصطناعيالهجوم العدائي
GitHubsuraj-ranganath/stealthrl

StealthRL

StealthRL: إطار عمل RL لإعادة صياغة نصوص الذكاء الاصطناعي بشكل عدائي لاختبار متانة أجهزة الكشف.

عرض المستودع
182منذ 2 أشهرلم تتم المراجعة بعد

الأكثر شعبية

عرض الكل →

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

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

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

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

StealthRL: هجمات إعادة الصياغة بالتعلم المعزز لتفادي كاشفات النصوص المؤلَّفة بالذكاء الاصطناعي متعددة الكواشف

الورقة (arXiv)
العرض التجريبي
النموذج (Hugging Face)
مجموعة البيانات المعيارية (Hugging Face)

نظرة عامة على خط أنابيب StealthRL

الملخص

تُستخدم كاشفات النصوص المؤلَّفة بالذكاء الاصطناعي بشكل متزايد في سياقات عالية المخاطر، ومع ذلك تظل متانتها ضد إعادة الصياغة العدائية الحافظة للمعنى غير مؤكدة. نقدّم StealthRL، وهو إطار عمل قائم على التعلم المعزز لاختبار ضغط كاشفات النصوص المؤلَّفة بالذكاء الاصطناعي عبر هجمات إعادة صياغة تكيفية. يدرّب StealthRL سياسة إعادة صياغة ضد مجموعة كواشف مع الحفاظ على المحتوى الدلالي، ثم يقيّم قابلية الانتقال إلى عائلات كواشف غير مضمّنة في التدريب. على مجموعة اختبار MAGE الكاملة المفلترة (15,310 نصًا بشريًا / 14,656 نصًا مؤلَّفًا بالذكاء الاصطناعي)، يخفض StealthRL متوسط AUROC من 0.79 إلى 0.43 ويحقّق متوسط TPR@1%FPR يبلغ 0.024 عبر RoBERTa وFast-DetectGPT وBinoculars وMAGE. ينتقل الهجوم إلى كاشفَين لم يُستخدما أثناء التدريب، مما يكشف نقاط ضعف مشتركة بدلًا من فشل كاشف واحد. كما نحلّل توزيعات نتائج الكواشف ونقيّم الجودة باستخدام E5 وBERTScore وتقييمات ليكرت القائمة على LLM. تُظهر نتائجنا أن كاشفات النصوص المؤلَّفة بالذكاء الاصطناعي الحالية تظل هشّة تحت ضغط إعادة الصياغة الواقعي، وتوفّر بروتوكولًا قابلًا للتكرار لتقييم المتانة العدائية.

ماذا يحتوي هذا المستودع

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

  • كود تدريب قائم على GRPO لسياسة إعادة الصياغة في StealthRL
  • تطبيقات أساليب الهجوم للطرق M0-M5 الواردة في الورقة
  • مغلّفات الكواشف وأدوات التقييم
  • خط أنابيب تقييم MAGE الكامل المرحلي المستخدم لإنتاج النتائج المذكورة
  • كود الرسم والقياسات والحكم على الجودة لإنتاج الأشكال والجداول الجاهزة للنشر

يُقصد من المستودع أن يكون نقطة بداية مفيدة للباحثين الراغبين في:

  • إعادة إنتاج تقييمنا لمتانة الكواشف
  • استبدال كواشف أو أساليب هجوم جديدة
  • دراسة الانتقال إلى عائلات كواشف غير مضمّنة
  • قياس أداء دفاعاتهم الخاصة في إعادة الصياغة أو أساليب الفريق الأحمر

خريطة المستودع

  • stealthrl/: كود التدريب، مغلّفات الكواشف، المكافآت، أدوات البيانات، وحزمة StealthBench الأصلية
  • eval/: منصّة تقييم بحثية المستوى مستخدمة لنتائج الورقة
  • scripts/: نقاط دخول قابلة للتشغيل للتدريب والتقييم والتنسيق والرسم والأدوات المساعدة
  • configs/: ملفات إعدادات YAML للتدريب والتقييم والدراسات الإقصائية
  • figures/: مخططات خط الأنابيب وأصول ثابتة
  • tests/: فحوصات التكامل والفحوصات المنطقية
  • analysis/: أدوات تحليل مساعدة لمرة واحدة ووظائف مؤقتة

إعداد البيئة

البيئة الأساسية

root@kitploit:~
python -m venv venv
source venv/bin/activate
pip install --upgrade pip
pip install -r requirements.txt

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

اعتمادًا على الأجزاء التي تريد تشغيلها من المشروع، قد تحتاج أيضًا إلى:

root@kitploit:~
pip install tinker
pip install openai
pip install vllm

ملاحظات:

  • tinker مطلوب لمسار استدعاء نقطة تفتيش StealthRL المدعوم سحابيًا المستخدم في M2.
  • openai مطلوب فقط لخطوة تقييم الجودة GPT/Likert.
  • vllm موصى به للتوليد المحلي السريع في خطوط الأساس الواردة في الورقة.

متغيرات البيئة

متغيرات البيئة النموذجية المستخدمة في المستودع:

root@kitploit:~
export HF_HOME=$HOME/.cache/huggingface
export TRANSFORMERS_CACHE=$HF_HOME
export OPENAI_API_KEY=...
export TINKER_API_KEY=...

بالنسبة لخط أنابيب تقييم الورقة المرحلي، استخدمنا ملف env بالإضافة إلى ملف JSON لوصف نقطة التفتيش. تتيح لك النصوص البرمجية العامة تجاوز كلا المسارين صراحة:

root@kitploit:~
python scripts/run_full_mage_research_eval.py \
  --env-file ~/.config/stealthrl/eval.env \
  --checkpoint-json ~/.config/stealthrl/m2_checkpoint.json

البدء السريع

اختبار سريع للتقييم

root@kitploit:~
python scripts/run_eval.py --quick

تشغيل منصّة StealthBench القديمة

root@kitploit:~
python scripts/run_stealthbench.py --config configs/stealthbench.yaml

يعمل هذا الآن على تحميل ملفات النصوص المُعدّة، وتشغيل الكواشف المُعدّة، وحفظ مخرجات CSV، وإنشاء مخططات المقارنة. أُزيلت البنية المؤقتة القديمة التي كانت تحتوي TODO فقط.

تشغيل تقييم MAGE الكامل المرحلي

root@kitploit:~
python scripts/run_full_mage_research_eval.py \
  --env-file ~/.config/stealthrl/eval.env \
  --checkpoint-json ~/.config/stealthrl/m2_checkpoint.json \
  --run-root outputs/eval_runs/full_mage_public \
  --gpus 0 1 2 3

تشغيل موقع العرض التجريبي

يتضمن المستودع موقع عرض تجريبي مبنيًا على FastAPI ضمن demo/. يقدّم واجهة مستخدم ثابتة مصقولة ويعرض POST /api/paraphrase مع دعم لمفاتيح API بالإضافة إلى حصة عامة تبلغ 20 طلبًا يوميًا للمستخدمين غير الموثّقين.

root@kitploit:~
pip install -r demo/requirements.txt
uvicorn demo.stealthrl_demo.app:app --reload --port 8080

افتراضيًا، يعمل العرض في وضع mock صفري التكلفة لاختبار واجهة المستخدم. لاستخدام مولّد StealthRL الفعلي، عيّن STEALTHRL_DEMO_INFERENCE_BACKEND=tinker وSTEALTHRL_DEMO_CHECKPOINT_JSON وTINKER_API_KEY. راجع demo/README.md لملاحظات حول مفاتيح API والحصص وDocker والنشر على AWS.

إعادة إنتاج نتائج الورقة

تذكر الورقة نتائج على مجموعة تقييم MAGE الكاملة المفلترة:

  • 15,310 عينة بشرية
  • 14,656 عينة مؤلَّفة بالذكاء الاصطناعي
  • 29,966 إجمالًا

خط أنابيب التقييم البحثي مُنفَّذ في وحدة eval/ بالإضافة إلى النصوص المرحلية ضمن scripts/.

مسار إعادة الإنتاج الموصى به

  1. جهّز بيانات الاعتماد وبيانات نقطة التفتيش.

    أنشئ ملف env يحتوي على OPENAI_API_KEY وTINKER_API_KEY، وملف JSON لنقطة التفتيش يصف مسار مولّد StealthRL عبر Tinker.

  2. شغّل الفحص الأولي.

root@kitploit:~
python scripts/preflight_research_eval.py \
  --env-file ~/.config/stealthrl/eval.env \
  --checkpoint-json ~/.config/stealthrl/m2_checkpoint.json
  1. أطلق التقييم الكامل.
root@kitploit:~
python scripts/run_full_mage_research_eval.py \
  --env-file ~/.config/stealthrl/eval.env \
  --checkpoint-json ~/.config/stealthrl/m2_checkpoint.json \
  --run-root outputs/eval_runs/full_mage_repro \
  --gpus 0 1 2 3
  1. افحص مخرجات الأساليب المولَّدة ونتائج الكواشف والقياسات والمخططات ضمن دليل التشغيل المختار.

  2. إذا كنت تحتاج فقط إلى إعادة تشغيل الحكم على الجودة المستند إلى GPT على المخرجات المخزنة مؤقتًا:

root@kitploit:~
python scripts/run_gpt_quality_only.py \
  --run-root outputs/eval_runs/full_mage_repro \
  --env-file ~/.config/stealthrl/eval.env
  1. إذا كنت تحتاج فقط إلى إضافة BERTScore إلى تشغيل مُجمَّع بمخرجات مخزنة مؤقتًا:
root@kitploit:~
python scripts/compute_bertscore_for_run.py \
  --run-dir outputs/eval_runs/full_mage_repro/assembled \
  --device cuda:0 \
  --batch-size 16 \
  --chunk-size 512

يحدّث نص BERTScore ملفي quality.parquet وquality.csv في مكانهما بعد كل دفعة، لذا يمكن استئناف التشغيلات المتقطعة دون إعادة حساب الصفوف المكتملة. استخدم --limit-per-method لاختبار صغير و--force فقط عند إعادة حساب أعمدة BERTScore الموجودة عن قصد.

المخرجات الرئيسية

ينتج التشغيل المرحلي:

  • method_runs/: المخرجات المولَّدة لكل أسلوب
  • detector_scores/: ملفات نتائج parquet لكل كاشف
  • assembled/metrics.json: قياسات الكواشف المُجمَّعة
  • assembled/thresholds.json: عتبات الكواشف المُعايرة
  • assembled/quality.parquet: مقاييس الجودة التلقائية
  • assembled/quality_gpt.parquet: تقييمات الجودة GPT/Likert
  • assembled/figures/: مخططات جاهزة للنشر

الإعدادات الورقية المعتمدة

تستخدم نقطة التفتيش الأساسية في الورقة configs/tinker_mage_10k.yaml كإعداد تدريب معتمد: Qwen3-4B-Instruct مع LoRA رتبة 32، وحجم مجموعة GRPO 8، و10,000 عينة تدريب من MAGE، وثلاث دورات، ومعدل تعلم 2.8e-4، ومعامل KL قدره 0.05، ودرجة حرارة 1.0، وtop-p قدره 0.9، ومجموعة مكافآت من كاشفَين بوزن 0.6 لـRoBERTa / 0.4 لـFast-DetectGPT. الإعدادات الأخرى في configs/ أُبقيت كأمثلة قديمة أو إعدادات اختبار سريع أو قوالب دراسة إقصائية، ولا ينبغي التعامل معها كمرجع ورقي ما لم تُوثَّق صراحة.

تنفيذ التدريب

يدرّب StealthRL سياسة إعادة صياغة وليس كاشفًا. الفكرة الأساسية هي تحسين نموذج يعيد كتابة النص المؤلَّف بالذكاء الاصطناعي بحيث يظل وفيًا دلاليًا مع تقليل ثقة الكاشف.

النموذج والتحسين

  • النموذج الأساسي: Qwen/Qwen3-4B-Instruct-2507
  • التكيّف: LoRA
  • خوارزمية التعلم المعزز: GRPO
  • أسلوب التدريب: تحسين سياسة إعادة الصياغة الموجَّه بالكاشف

تصميم المكافأة

المكافأة متعددة الأهداف وتوازن بين:

  • تفادي الكاشف ضمن مجموعة الكواشف المستخدمة في التدريب
  • الحفاظ الدلالي بالنسبة إلى النص المصدر
  • قيود صحة التوليد واستقراره

يعيش التنفيذ بشكل أساسي في:

  • stealthrl/tinker/train.py
  • stealthrl/rewards/
  • configs/

السلوك في زمن الاستدلال

هجوم StealthRL في الورقة هو هجوم بطلقة واحدة في زمن الاختبار:

  • استدعاء واحد لسياسة التوليد لكل عينة
  • لا توجد حلقة تحسين تكرارية
  • لا توجد استعلامات للكاشف المستهدف أثناء التقييم

يُستخدم الوصول إلى الكاشف أثناء تدريب التعلم المعزز غير المتصل وأثناء التقييم الخارجي، وليس للبحث التكيفي في زمن الاستعلام في M2.

تنفيذ التقييم

تنفيذ تقييم الورقة موجود في حزمة eval/ الأحدث وليس في منصّة stealthrl/evaluation/ الأقدم.

الأساليب

  • M0: بدون هجوم
  • M1: خط أساس إعادة صياغة بسيط
  • M2: StealthRL
  • M3: خط أساس إعادة صياغة عدائية موجَّه بالكاشف
  • M4: خط أساس AuthorMist
  • M5: خط أساس تشويش على مستوى المحارف

الكود ذو الصلة:

  • eval/methods/
  • scripts/generate_method_outputs.py

لوحة الكواشف

لوحة الكواشف الرئيسية في الورقة تستخدم:

  • roberta: openai-community/roberta-large-openai-detector
  • fast_detectgpt
  • binoculars
  • mage: yaful/MAGE

يحتفظ المستودع أيضًا بدعم ghostbuster لتجارب التوافق/القديمة، لكن Ghostbuster ليس جزءًا من لوحة الكواشف النهائية الأربعة في الورقة.

الكود ذو الصلة:

  • eval/detectors.py
  • scripts/score_detector_outputs.py
  • eval/runner.py

القياسات وتحليل الجودة

يحسب كود التقييم العام:

  • AUROC
  • TPR@1%FPR
  • TPR@5%FPR
  • ASR
  • تشابه E5
  • دقة/استرجاع/F1 الخاصة بـBERTScore
  • الحيرة (perplexity)
  • معدل التحرير
  • درجات الجودة والتشابه GPT/Likert
  • فترات الثقة بالتمهيد (bootstrap)

الكود ذو الصلة:

  • eval/metrics.py
  • eval/plots.py
  • eval/quality_judge.py
  • scripts/finalize_eval_run.py

ملاحظات هندسية

تكامل vLLM

يدعم كود التقييم الحالي التوليد المحلي المدعوم بـvLLM للتقييم عالي الإنتاجية لخطوط الأساس. هذا مُنفَّذ في:

  • eval/methods/vllm_backend.py

تكامل Tinker

يدعم أسلوب M2 في StealthRL أخذ العينات عبر Tinker باستخدام ملف JSON لوصف نقطة التفتيش. هذا المسار مُنفَّذ في:

  • eval/methods/stealthrl.py

الاستئناف والتنسيق المرحلي

خط أنابيب MAGE الكامل مرحلي عمدًا:

  • تفشل فحوصات ما قبل التشغيل بسرعة عند وجود مشاكل في إعداد الكاشف/النموذج
  • توليد كل أسلوب معزول وقابل للاستئناف
  • تسجيل نتائج الكواشف منفصل عن التوليد
  • التجميع النهائي والحكم عبر GPT قابلان للاستئناف

هذا يجعل التشغيلات الطويلة متعددة وحدات معالجة الرسوميات أكثر متانة وأسهل في التصحيح.

توسيع المستودع

إضافة أسلوب هجوم جديد

  1. أضف فئة ضمن eval/methods/
  2. نفّذ واجهة BaseAttackMethod
  3. سجّل الأسلوب في eval/methods/__init__.py
  4. أضِفه إلى المشغّل المرحلي إذا أردت تضمينه في التشغيلات المنسّقة

إضافة كاشف جديد

  1. أضف مغلّف كاشف إلى حزمة التقييم
  2. نفّذ التحميل والتسجيل الدفعي للنتائج
  3. سجّله في سجل الكواشف المستخدم من eval/runner.py
  4. أضف العتبات والمخططات وروابط الجداول حسب الحاجة

إضافة مجموعة بيانات معيارية جديدة

  1. أضف محمّل مجموعة بيانات أو محوّلًا
  2. طبّعه إلى مخطط عينات التقييم
  3. حدّث نصوص التشغيل باسم مجموعة البيانات ومنطق أخذ العينات

الاستخدام المسؤول

أُصدر هذا المستودع للبحث حول متانة كاشفات النصوص المؤلَّفة بالذكاء الاصطناعي، والتقييم العدائي، والقياس المعياري الدفاعي. ليس الغرض منه دعم الغش أو الانتحال أو تفادي الأنظمة المشروعة للسلامة والنزاهة.

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

الاستشهاد

إذا استخدمت هذا المستودع، فيُرجى الاستشهاد بالورقة:

root@kitploit:~
@article{ranganath2026stealthrl,
  title={StealthRL: Reinforcement Learning Paraphrase Attacks for Multi-Detector Evasion of AI-Text Detectors},
  author={Ranganath, Suraj and others},
  journal={arXiv preprint arXiv:2602.08934},
  year={2026}
}
تنزيل الأداة