ثلاثة ثغرات في مكتبة Diffusers من Hugging Face قد تتيح لمستودع نموذج خبيث تنفيذ أكواد عشوائية

The Hacker News
مشاركة:
ثلاثة ثغرات في مكتبة Diffusers من Hugging Face قد تتيح لمستودع نموذج خبيث تنفيذ أكواد عشوائية

كشف باحثون في مجال الأمن السيبراني عن ثلاث ثغرات عالية الخطورة في مكتبة Diffusers من Hugging Face، وهي الأداة البرمجية الشائعة بلغة Python لتشغيل نماذج توليد الصور والفيديو. هذه الثغرات قد تسمح لمستودع نموذج مُصمم بشكل خبيث بتنفيذ أكواد عشوائية على جهاز الضحية. الثغرات، التي أُطلق عليها مجتمعة اسم FaceHugger، تتجاوز آلية الحماية المدمجة في المكتبة والمعروفة باسم trust_remote_code — وهي الآلية نفسها التي صُممت لمنع هذا النوع من الهجمات.

فجوة توقيت، لا قفل مكسور

إعداد trust_remote_code في Diffusers مصمم لمنع تنفيذ أكواد Python غير المراجعة والتي قد تكون خبيثة، والموجودة داخل مستودع النموذج، من العمل تلقائيًا عند تحميل المستخدم لذلك النموذج. ثغرات FaceHugger تستغل خللًا من نوع Time-of-Check إلى Time-of-Use (TOCTOU) في طريقة تنفيذ تلك الحماية. فالتحقق يحدث خلال أول طلبين HTTP متتاليين عند تنزيل النموذج، لكن الكود الفعلي لا يُنفَّذ إلا لاحقًا. المهاجم الذي يستطيع تعديل محتويات المستودع في الفترة الزمنية بين هذين الطلبين يمكنه إدخال كود خبيث متجاوزًا الفحص تمامًا. وكما أوضح الباحثون، فإن أي طريقة تجعل المُحمِّل يرى كودًا مخصصًا لم تخضع لفحص بوابة الأمان تُبطل الحماية.

ثلاث نقاط دخول منفصلة

يكشف الإفصاح عن ثلاث ثغرات منفصلة مسجلة في CVE. الثغرة CVE-2026-44827 (بدرجة خطورة 8.8 على مقياس CVSS) تتيح حقن الأكواد عبر ملف pipeline مُصمم بشكل خادع يحمل اسم "None.py" — وهو اختيار اسم يهدف إلى جعله غير ملحوظ أثناء المراجعة اليدوية. الثغرة CVE-2026-45804 (بدرجة 7.5) تستغل حالة السباق في تسلسل التنزيل مباشرة. أما الثغرة CVE-2026-44513 (بدرجة 8.8) فتحقق حقن الأكواد عبر التلاعب بتدفقات الـ pipeline المخصصة. تشترك الثغرات الثلاث في نفس الضعف الأساسي: الفجوة بين الوقت الذي تتحقق فيه Diffusers من موثوقية المستودع والوقت الذي تستخدم فيه فعليًا كود ذلك المستودع.

لماذا يُعد النطاق هنا مهمًا

تم تنزيل Diffusers أكثر من 8.1 مليون مرة في يوليو 2026 وحده، وهي موجودة داخل عدد ضخم من خطوط إنتاج الذكاء الاصطناعي، وأنظمة التكامل والتسليم المستمر (CI/CD)، والنشرات الحاوية التي تسحب وتشغل النماذج تلقائيًا مع حد أدنى من المراجعة البشرية. أي مسار برمجي يستدعي DiffusionPipeline.from_pretrained مع pipeline مخصص قد يكون معرضًا للخطر. في نظام بيئي حيث تتعامل الفرق عادة مع سحب النماذج من المستودعات العامة كأمر روتيني، فإن ثغرة تتجاوز الحماية الوحيدة المصممة خصيصًا لفحص ذلك الكود تمتلك وصولًا واسع النطاق.

ما يجب فعله

أصدرت Hugging Face الإصلاح في الإصدار 0.38.0 من Diffusers، الذي طُرح في مايو 2026 — ويجب على الفرق التي ما زالت تعمل بإصدارات أقدم تحديث أنظمتها فورًا. وفي الحالات التي لا يكون فيها التحديث الفوري ممكنًا، فإن الموقف الأكثر أمانًا هو تحميل النماذج فقط من مصادر موثوقة ومدققة بالكامل، وفحص لقطات النماذج المحلية يدويًا بحثًا عن ملفات Python غير متوقعة، خاصة تلك ذات الأسماء المضللة أو المموهة.

كما ورد في The Hacker News، يضيف هذا الإفصاح إلى نمط متزايد هذا العام من أبحاث سلسلة توريد الذكاء الاصطناعي التي تستهدف آليات الثقة التي تتيح للمطورين سحب وتشغيل نماذج الطرف الثالث بأمان — وهي آليات لا تكون قوية إلا بقدر الافتراضات الزمنية المضمنة في تنفيذها.

Originally reported by The Hacker News. Read the original article for additional details.

View original source
مشاركة: