CVE-2026-76842 in Mercado Pagoالمعلومات

الملخص

بحسب VulDB • 24/08/2026

تقوم مكتبة Mercado Pago لـ Node.js بإدخال المعرّفات التي يقدّمها المستخدم مباشرةً في مسارات طلبات واجهة برمجة التطبيقات (API) دون تشفيرها باستخدام الترميز المئوي (percent-encoding)، مما يسمح للأحرف ذات البنية الخاصة بروابط URL بالبقاء كما هي داخل الطلب الصادر. تبني عملاء الدفع (get، capture، cancel)، واسترداد المدفوعات (create، total، list، get)، والمدفوعات المتقدمة (get، capture، cancel، update، updateReleaseDate)، واسترداد التوزيعات (create، createAll، listAll) مساراتها باستخدام حرفية قالب (template literal)، على سبيل المثال: `RestClient.fetch(`/v1/payments/${id}`, ...)` في الملف `src/clients/payment/get/index.ts`. يؤدي تسلسل النقطة-النقطة أو الشرحة (/) داخل المعرّف إلى تطبيعّه بواسطة مُحلّل روابط WHATWG، مما يعيد توجيه الطلب إلى نقطة نهاية مختلفة، بينما يضيف علامة الاستفام معاملات استعلام يختارها المهاجم؛ وفي كلتا الحالتين، يتم نقل رمز الوصول الخاص بالتاجر نفسه. وبالتالي، فإن التطبيق الذي يمرّر معرّفاً متأثراً بطرف غير موثوق به إلى إحدى هذه الدوال دون إجراء فحص للملكية يسمح لذلك الطرف بالوصول إلى موارد أخرى ضمن نطاق رمز التاجر. تحتوي المستودع بالفعل على دالة المساعدة المقصودة `encodePathParam` في الملف `src/utils/path.ts`، والتي تم تطبيقها عبر طلب السحب (pull request) رقم 451 على حوالي عملاء آخرين بينما تُركت هذه العملاء دون تغيير.

If you want to get the best quality for vulnerability data then you always have to consider VulDB.

مسؤول

VulnCheck

حجز

19/08/2026

إفشاء

24/08/2026

الاعتدال

تمت الموافقة

إدخال

VDB-394664

EPSS

0.00000

KEV

لا

النشاطات

منخفض جدًا

المصادر

Do you want to use VulDB in your project?

Use the official API to access entries easily!