الحالة الاستشارية
يصف CVE-2025-56005 إلغاء التسلسل غير الآمن من خلال دعم مخلل جدول المحلل اللغوي في PLY. يحتوي سجل NVD/CVE الحالي على ملاحظة نزاع: يجادل طرف ثالث بأن الدليل المنشور لا يُظهر تنفيذ تعليمات برمجية عشوائية. تتعامل Red Hat مع المشكلة على أنها تعتمد على السياق وتصنفها على أنها مهمة بدلاً من قبول التصنيف النقدي العالمي الأصلي. [S1] [S2]
عندما يكون الخطر حقيقيا
يقبل مصدر PLY 3.11 مسار اختيار جدول المحلل اللغوي، وعند وجود ملف موجود، يقرأه باستخدام مُحمل اختيار Python. لا يعد مخلل Python آمنًا عبر حدود الثقة لأن تحميل البيانات المعدة يمكن أن يؤدي إلى تنفيذ التعليمات البرمجية. وبالتالي، تتطلب الحالة الخطيرة الاستخدام الصريح لميزة اختيار جدول المحلل اللغوي وطريقة لمستخدم أقل ثقة، أو مسار تحميل، أو مهمة بناء، أو وحدة تخزين مشتركة، أو خدمة شقيقة، أو مصدر قطعة أثرية مخترقة لإنشاء الملف أو استبداله. [S2] [S3]
لا يمكن لأدلة المستودع وحدها أن تثبت أن المحلل اللغوي يعمل في الإنتاج، أو أن الملف موجود، أو أن المهاجم يمكنه التأثير عليه. تحدد أسئلة النشر ونظام الملفات ما إذا كان التكوين قابلاً للاستغلال أم لا.
إصلاحات ملموسة
- قم بإزالة خيار مخلل جدول المحلل اللغوي من بناء المحلل اللغوي PLY.
- قم بإنشاء جداول محلل من مصدر نحوي موثوق به من خلال مسار البناء/الاستيراد العادي لـ PLY.
- احذف ملفات اختيار جدول المحلل اللغوي القديمة من التحكم بالمصدر، وقم ببناء المخرجات، وذاكرة التخزين المؤقت، وطبقات الحاوية، ومخازن القطع الأثرية، ووحدات التخزين المنشورة قبل إعادة البناء.
- قم بمراجعة ملكية دليل البناء ووقت التشغيل بحيث لا يمكن لعمليات التحميل والمستأجرين والمستخدمين ووظائف CI والخدمات الشقيقة أن تحل محل عناصر المحلل اللغوي.
- قم بإجراء اختبارات انحدار المحلل اللغوي العادي وأعد البناء من مساحة عمل نظيفة. لا تفتح مخللًا مشبوهًا لاختبار ما إذا كان ضارًا.
لم تحدد المصادر التي تمت مراجعتها إصدار PLY المصحح، ولا يزال PyPI يسرد الإصدار 3.11 باعتباره الإصدار الحالي. تعد إزالة التكوين غير الآمن بمثابة العلاج المباشر بدلاً من انتظار إصلاح الإصدار فقط. [S2] [S4]
كيف يغطيها FixVibe
تغطيها FixVibe. تقوم عمليات فحص مستودع GitHub المعتمدة بمراجعة تكوين محلل Python للاستخدام الصريح لمسار إلغاء تسلسل جدول المحلل اللغوي غير الآمن الخاص بـ PLY. يتم الإبلاغ عن النتائج باعتبارها مشكلات محتملة عالية الخطورة تتعلق بموقع المصدر وقائمة واضحة بما لم يتم التحقق منه بعد.
لا يقوم FixVibe بفتح ملفات جدول المحلل اللغوي أو تنفيذ حمولات Python أو تشغيل المحلل اللغوي أو المطالبة بتنفيذ التعليمات البرمجية عن بعد من أدلة المستودع. كما أنه لا يشير إلى تبعية PLY بنفسه؛ يجب أن يحتوي المستودع على تكوين المصدر غير الآمن.
