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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
أدوات/GitHubGitHub/ml-security-research-lab/cachetrap
تحليل الثغرات الأمنيةتعلم الآلةالأوراق والأبحاثأمن الذكاء الاصطناعيالهجوم العدائي
GitHubml-security-research-lab/cachetrap

CacheTrap

بحث برمجي لهجوم حصان طروادة ذي صندوق رمادي يقوم بقلب بتة واحدة في ذاكرة KV المؤقتة في مصنّفات LLM المضبوطة ضبطًا دقيقًا ويقيس معدل نجاح الهجوم لكل فئة.

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

الأكثر شعبية

عرض الكل →

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

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

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

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

CacheTrap

مستودع بحث "CacheTrap: Unveiling a Stealthier Gray-Box Trojan against LLMs"، المؤتمر الدولي IEEE/ACM للتصميم بمساعدة الحاسوب (ICCAD)، 2026.

arXiv

يبحث CacheTrap عن قلب بت واحد (bit flip) في ذاكرة KV cache لمصنّف LLM مُدرَّب بدقة، ويقيس معدل نجاح الهجوم (ASR) الناتج لكل فئة مستهدفة.


1. الإعداد

Python 3.10، CUDA 12.x.

conda create -n cachetrap python=3.10
conda activate cachetrap
pip install -r requirements.txt

الوصول إلى Hugging Face. النموذجان meta-llama/Llama-2-7b-chat-hf و meta-llama/Llama-3.1-8B-Instruct مقيّدان. اقبل التراخيص على Hub، ثم:

huggingface-cli login

2. التدريب

نموذج واحد / مجموعة بيانات واحدة:

python train_model.py --model llama3_1_8b --dataset arc_easy

تُكتب نقطة الحفظ (checkpoint) إلى TrainedModels/merged_<model>_<dataset>/.

جميع النماذج × جميع مجموعات البيانات:

bash scripts/train.sh

عدّل MODELS وDATASETS وNUM_GPUS في أعلى السكربت لتشغيل مجموعة فرعية. تُحفظ السجلات في logs/training/.

ملاحظة: على وحدات GPU ذات ذاكرة أقل، استخدم train_model_lowmem.py بدلاً من train_model.py، في الأمر أعلاه وداخل scripts/train.sh على حد سواء.


3. الهجوم

python attack.py --model llama3_1_8b --dataset arc_easy --calib_dataset openbookqa

--dataset هي مجموعة البيانات التي دُرِّب عليها الضحية؛ و--calib_dataset هي البيانات المتاحة للمهاجم. وفقاً للورقة، تُعايَر الضحايا المدرَّبة على OpenBookQA أو TREC أو ARC-Challenge باستخدام ARC-Easy، وتُعايَر الضحايا المدرَّبة على ARC-Easy باستخدام OpenBookQA. يعكس سكربتا الدفعات هذا التقسيم بدقة:

السكربتمجموعات بيانات الضحيةالمعايرة
scripts/attack_bundle1.shopenbookqa, trec, arc_challengearc_easy
scripts/attack_bundle2.sharc_easyopenbookqa
bash scripts/attack_bundle1.sh
bash scripts/attack_bundle2.sh

ينتهي كل منهما بتشغيل summarize_logs.py على دليل السجلات الخاص به. شغّل python attack.py --help للحصول على قائمة الخيارات الكاملة.

المخرجات

  • logs/<run>/<model>_<dataset>.log — المخرجات الكاملة لكل تشغيل
  • logs/<run>/summary.csv — صف واحد لكل فئة مستهدفة (دقة خط الأساس، الدقة تحت الهجوم، ASR، موقع القلب)
  • logs/<run>/summary.txt — كتل الملخص الخام
  • flip_locations/*.json — مواقع القلب، إذا تم تمرير --save_flip_locations

لإعادة التقييم دون تكرار البحث:

python attack.py --model llama3_1_8b --dataset arc_easy --calib_dataset openbookqa \
    --load_flip_locations flip_locations/llama3_1_8b_arc_easy.json

4. اختبار سريع باستخدام نقطة حفظ مُصدَرة

لتجربة الهجوم دون تدريب أي شيء، نزّل نقطة الحفظ المُصدَرة merged_llama3_1_8b_arc_easy وضعها تحت TrainedModels/:

TrainedModels/
└── merged_llama3_1_8b_arc_easy/
    ├── config.json
    ├── model-*.safetensors
    ├── tokenizer.json
    └── ...

ثم شغّل الأمر التالي لتنفيذ الهجوم:

python attack.py --model llama3_1_8b --dataset arc_easy --calib_dataset openbookqa \
    --load_flip_locations flip_locations/llama3_1_8b_arc_easy.json

بدلاً من ذلك، شغّل ما يلي لتنفيذ هجوم جديد

python attack.py \
    --model llama3_1_8b \
    --dataset arc_easy \
    --calib_dataset openbookqa \
    --threat_model graybox \
    --save_flip_locations flip_locations/llama3_1_8b_arc_easy_fresh.json

يطبع هذا ملخصاً لكل فئة يتضمن دقة خط الأساس، والدقة تحت الهجوم، وASR، وموقع القلب المختار.


الاستشهاد

استشهد بنسخة ما قبل الطباعة على النحو التالي

@article{nahian2025cachetrap,
  title={CacheTrap: Unveiling a Stealthier Gray-Box Trojan against LLMs},
  author={Nahian, Mohaiminul Al and Almalky, Abeer Matar A and Aragonda, Gamana and Zhou, Ranyang and Ahmed, Sabbir and Ponomarev, Dmitry and Yang, Li and Angizi, Shaahin and Rakin, Adnan Siraj},
  journal={arXiv preprint arXiv:2511.22681},
  year={2025}
}
تنزيل الأداة