Muhammad Sobirov

#6659من 60,403
47.2إجمالي CVSS
الثغرات · 6
متوسطة
2
عالية
4
PT-2026-80856
2026-08-24
8.8
CVE-2026-76847
Nektos
Act
يقوم البرنامج بتشغيل خادم خلفي لـ HTTP Artifacts V4 عندما تستخدم سير العمل الإجراءات actions/upload-artifact@v4 أو actions/download-artifact@v4. تقبل طلبات RPC الخاصة بمستوى التحكم، بما في ذلك ’CreateArtifact‘ و'GetSignedArtifactURL' و'ListArtifacts' و'FinalizeArtifact' و'DeleteArtifact'، قيمة `workflow run backend id` التي يقدمها المتصل دون التحقق مما إذا كانت تخص الطالب أم لا. يحدث هذا لأن الدالة `validateRunIDV4()` الموجودة في pkg/artifacts/artifacts v4.go تقوم بتحليل القيمة ولكنها لا تجري المقارنة اللازمة مع معرّف تشغيل المهمة الطالبة. بالإضافة إلى ذلك، تتم مصادقة عناوين URL الموقعة باستخدام مفتاح HMAC مبرمج بشكل ثابت (0xba 0xdb 0xee 0xf0)، مما يجعل التوقيعات قابلة للتزوير وغامضة بين أزواج أسماء العناصر ومعرفات المهام المختلفة. بشكل افتراضي، تستخدم العلامة `--artifact-server-addr` عنوان المضيف الصادر بدلاً من عنوان loopback، مما يجعل الخلفية قابلة للوصول من الشبكة المحيطة. وهذا يسمح للعملاء غير المصرح لهم بقراءة أو الكتابة فوق أو حذف العناصر الخاصة بالمهام التي تعمل في وقت واحد، مما قد يؤدي إلى كشف الأسرار وبيانات اعتماد النشر.
PT-2026-80857
2026-08-24
8.7
CVE-2026-76848
Typeorm
Typeorm
تقبل دالة `SelectQueryBuilder.distinctOn` في TypeORM مصفوفة من السلاسل وتخزنها في خريطة التعبيرات دون التحقق من صحتها. بالنسبة لمحركات عائلة PostgreSQL، تقوم الدالة `createSelectDistinctExpression()` الموجودة في `src/query-builder/SelectQueryBuilder.ts` بدمج هذه المصفوفة وإدراج النتيجة في العبارة التي تم إنشاؤها على النحو التالي: `SELECT DISTINCT ON (values)`. تحدث هذه العملية دون استخدام أحرف الهروب أو علامات الاقتباس أو التحقق من صحة المعرفات أو قائمة المسموح بها، كما أنها تتجاوز أداة مساعدة الهروب الخاصة بالمحرك ووظيفة `replacePropertyNames`. نظرًا لأن نقطة الإدراج هي قائمة تعبيرات SQL محاطة بأقواس، يمكن للمهاجم تقديم تعبيرات عشوائية، بما في ذلك الاستعلامات الفرعية المترابطة. إذا قام تطبيق ما بتمرير قيم يتحكم فيها العميل إلى `distinctOn`، فإنه يسمح للعميل بقراءة البيانات التي يمكن لدور قاعدة بيانات التطبيق الوصول إليها من خلال الاستدلال المنطقي أو القائم على الوقت، بغض النظر عن الكيان الذي يتم الاستعلام عنه. هذا المسار غير محمي بفحص قائمة السماح `validateOrderByCondition` الذي تستخدمه عائلة `orderBy`.