PT-2026-51637 · Apache+4 · Couchdb+4

·

CVE-2026-54350

·

تاريخ النشر

2026-06-11

·

تاريخ التحديث

2026-07-14

CVSS v3.1

10

حرجة

المتجهAV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:N
اسم البرنامج المعرض للخطر والإصدارات المتأثرة
إصدارات خادم Budibase الأقدم من 3.39.1
الوصف
توجد مشكلة حيث تقوم الدالة enrichContext باستبدال قيم المعلمات في نص JSON الخام للاستعلام ثم تحلل النتيجة باستخدام JSON.parse. تفشل الدالة validateQueryInputs في إخفاء أحرف JSON الخاصة مثل " و`` و}، وترفض فقط علامات Handlebars. وهذا يسمح للمهاجم بحقن علامات الاقتباس الختامية ومفاتيح إضافية، مما يؤدي إلى نقل الحقول التي يتحكم فيها المهاجم إلى كائن المرشح الذي تم تحليله.
بالنسبة لعمليات find في MongoDB، يتم تمرير المرشح الذي تم تحليله مباشرةً إلى collection.find()، مما يسمح للمهاجم بتجاوز المرشحات وإرجاع كل مستند في المجموعة. وبالمثل، بالنسبة لاستعلامات updateMany، يمكن توسيع نطاق المرشح ليشمل المجموعة بأكملها، مما يؤدي إلى تشغيل نص $set على كل مستند مطابق.
تتخطى البرمجيات الوسيطة authorized عمليات المصادقة وفحوصات CSRF عندما يتم تعيين دور الاستعلام على PUBLIC. ونتيجة لذلك، يمكن للزائر غير المصادق عليه استخدام نقطة النهاية POST /api/v2/queries/:queryId، مع توفير رأس x-budibase-app-id العام فقط، لقراءة أو تعديل كل مستند في المجموعات الداعمة لـ MongoDB أو CouchDB أو Elasticsearch أو DynamoDB-PartiQL أو مجموعات REST ذات نص JSON.
التوصيات
قم بتحديث خادم Budibase إلى إصدار أحدث من 3.39.0.
كحل مؤقت، تجنب تعيين دور الاستعلامات غير SQL (MongoDB، أو CouchDB، أو Elasticsearch، أو DynamoDB-PartiQL، أو REST مع bodyType=json) إلى `

استغلال

إصلاح

SQL injection

وجدت خطأً في الوصف؟ لديك ما تضيفه؟ لا تتردد في مراسلتنا 👾

تصنيف نقاط الضعف

المعرّفات ذات الصلة

BDU:2026-13477
CVE-2026-54350
GHSA-8QV3-P479-CJ62

المنتجات المتأثرة

Budibase
Couchdb
Dynamodb
Elasticsearch
Mongodb