خطأ هائل في النماذج يتيح للمهاجمين دفع مبلغ أقل مقابل المشتريات الباهظة الثمن

تتيح الثغرة الأمنية في المكون الإضافي Formidable Forms WordPress المثبت على أكثر من 300000 موقع ويب للمهاجمين غير المصادق عليهم تجاوز التحقق من الدفع. تؤثر الثغرة الأمنية على جميع الإصدارات حتى الإصدار 6.28. إنه يتيح للمهاجمين إعادة استخدام دفعة Stripe التي تم إجراؤها بمبلغ أقل لوضع علامة على معاملة أكثر تكلفة على أنها مدفوعة.
البرنامج المساعد للنماذج الهائلة
يعد المكون الإضافي Formidable Forms منشئ نماذج السحب والإفلات الذي تستخدمه مواقع WordPress لإنشاء نماذج الاتصال والاستطلاعات ونماذج التسجيل ونماذج الدفع. تستخدمه المواقع مع معالجات الدفع (مثل PayPal وStripe) لجمع المدفوعات مقابل الخدمات والعضويات والمنتجات الرقمية وتسجيلات الأحداث.
عرضة للمهاجمين غير المصادقين
ما يجعل هذه الثغرة الأمنية مثيرة للقلق بشكل خاص هو أنها لا تتطلب المصادقة. لا يحتاج المهاجم إلى تسجيل الدخول أو الحصول على وصول على مستوى المشترك لاستغلال الخلل. وهذا يسهل على المهاجمين الاستفادة من ضعف التحقق من صحة الدفع.
تم تعيين الثغرة الأمنية بـ CVE-2026-2890 وتحمل درجة خطورة CVSS تبلغ 7.5/10، والتي تم تصنيفها على أنها عالية.
تجاوز سلامة الدفع
سبب الثغرة الأمنية هو فقدان التحقق من الصحة في وظيفة Handle_one_time_stripe_link_return_url. تحدد الوظيفة سجلات الدفع على أنها مكتملة بناءً على حالة Stripe PaymentIntent فقط. يتيح ذلك للمهاجمين إعادة استخدام PaymentIntent صالحًا مقابل رسوم أقل للموافقة على عملية شراء أكثر تكلفة.
تتحقق وظيفة Vere_intent() من أن سر العميل يخص المستخدم فقط. ولا يلزم PaymentIntent بإرسال نموذج محدد. ولا يتم التحقق من أن المبلغ الذي تم تحصيله يطابق المبلغ الذي كان من المفترض أن يدفعه العميل.
وفقًا لموقع Wordfence:
“المكون الإضافي Formidable Forms لـ WordPress عرضة لتجاوز تكامل الدفع في جميع الإصدارات حتى، بما في ذلك، 6.28. ويرجع ذلك إلى معالج إرجاع Stripe Link (`handle_one_time_stripe_link_return_url`) الذي يضع علامة على سجلات الدفع على أنها كاملة بناءً على حالة Stripe PaymentIntent فقط دون مقارنة المبلغ المشحون للنية مقابل مبلغ الدفع المتوقع، ووظيفة `verify_intent()` التي تتحقق من صحة ملكية العميل السرية فقط دون ربط نوايا لأشكال أو إجراءات محددة.
وهذا يجعل من الممكن للمهاجمين غير المصادقين إعادة استخدام PaymentIntent من دفعة مكتملة منخفضة القيمة لوضع علامة على الدفعة ذات القيمة العالية على أنها كاملة، مما يؤدي بشكل فعال إلى تجاوز الدفع مقابل السلع أو الخدمات.
وهذا يجعل من الممكن للمهاجمين غير المصادقين إكمال معاملة صغيرة منخفضة التكلفة ثم إعادة استخدام PaymentIntent للموافقة على معاملة أكثر تكلفة دون دفع السعر الكامل.
لا تعمل مشكلة عدم الحصانة هذه على تمكين تنفيذ التعليمات البرمجية عن بعد أو التسوية المباشرة للخادم. ولكنها تمكن المهاجمين من الحصول على السلع أو الخدمات دون دفع السعر المطلوب.
الإصدارات المتأثرة والتصحيح
جميع الإصدارات حتى 6.28 متأثرة. يتم تشجيع مستخدمي المكون الإضافي Formidable Forms بواسطة Wordfence على التحديث إلى الإصدار 6.29 أو الأحدث لمعالجة الثغرة الأمنية.
Source link



