PT-2026-65608
CVE-2026-54621
·
تاريخ النشر
2026-07-28
·
تاريخ التحديث
2026-08-04
الوصف من
CVSS 3.1
7.8
عاليةالمقاييسAV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
اسم البرنامج المعرض للخطر والإصدارات المتأثرة
datamodel-code-generator من الإصدار 0.25.0 حتى 0.60.0
الوصف
يحدث حقن الكود عند إنشاء نماذج Python من مخطط GraphQL يتحكم فيه المهاجم. تنشأ المشكلة من طريقة عرض قيم وصف GraphQL Union في تعليقات Python داخل القوالب
src/datamodel code generator/model/template/UnionTypeStatement.jinja2، src/datamodel code generator/model/template/UnionTypeAliasAnnotation.jinja2، وsrc/datamodel code generator/model/template/UnionTypeAliasType.jinja2.لا يتعامل مرشح Jinja2 إلا مع أحرف
، ولا يقوم بإبطال تأثير علامات إرجاع السطر (r). ونظرًا لأن أداة تحليل الرموز في Python تعامل علامة إرجاع السطر وحدها على أنها علامة إنهاء سطر فعلي، فإن التعليق ينتهي قبل الأوان، مما يسمح بتحليل النص اللاحق وتنفيذه ككود Python على مستوى الوحدة النمطية عند استيراد النموذج الذي تم إنشاؤه. يؤثر هذا على أوصاف النماذج ذات الصيغة النصية العادية حيث يتم الاحتفاظ برموز الهروب r بواسطة graphql-core وتمريرها إلى المتغير description.التوصيات
تحديث datamodel-code-generator إلى الإصدار 0.60.1 أو أحدث.
وجدت خطأً في الوصف؟ لديك ما تضيفه؟ لا تتردد في مراسلتنا 👾