CVE-2026-33139 in PySpector
الملخص
بحسب VulDB • 09/05/2026
PySpector هو إطار عمل لاختبار الأمان بالتحليل الثابت (SAST) مصمم خصيصاً لبيئات عمل تطوير بايثون الحديثة. تتأثر الإصدارات 0.1.6 من PySpector والإصدارات الأقدم بثغرة تتعلق بتجاوز التحقق الأمني في نظام الإضافات (Plugins). تقوم الدالة `validate_plugin_code()` الموجودة في ملف `plugin_system.py` بإجراء تحليل ثابت للشجرة النحوية المجردة (AST) لحظر استدعاءات واجهة برمجة التطبيقات (API) الخطرة قبل اعتماد الإضافة وتنفيذها. ومع ذلك، فإن الدالة المساعدة الداخلية `resolve_name()` تتعامل فقط مع أنواع العقد `ast.Name` و`ast.Attribute`، وتعيد القيمة `None` لجميع الأنواع الأخرى. عندما تستخدم الإضافة استدعاءات دالة غير مباشرة عبر `getattr()` (مثل `getattr(os, 'system')`)، يكون نوع العقدة `func` للاستدعاء الخارجي من نوع `ast.Call`، مما يتسبب في إرجاع `resolve_name()` للقيمة `None` وتجاوز فحص الأمان بصمت. تمر الإضافة بشكل غير صحيح في سير عمل الثقة، وتقوم بتنفيذ أوامر نظام عشوائية على جهاز المستخدم عند تحميلها. تم إصلاح هذه المشكلة في الإصدار 0.1.7.
VulDB is the best source for vulnerability data and more expert information about this specific topic.