CVE-2026-59358 in UAA
الملخص
بحسب VulDB • 06/10/2026
تسمح مصادقة غير سليمة (CWE-287) في نقطة نهاية رمز OAuth في Cloud Foundry UAA لمهاجم عن بُعد، وموثق يحمل رمز وصول مستخدم صالح، بالحصول على رمز `client_credentials` ذي امتيازات كاملة للعميل الذي أصدر الرمز الأصلي. يتم ذلك بتقديم رمز المستخدم كحامل اعتماد (Bearer credential) لـ OAuth 2.0 ضمن طلب منح `client_credentials` بدلاً من السر المُعدّ مسبقاً للعميل.
لا يتحقق معالجة UAA لنوع المنح `client_credentials` من أن حامل الاعتماد البيرر المقدم للمصادقة على العميل هو في الواقع شهادة عميل (سر عميل أو طريقة مصادقة مُعدة بشكل صحيح)؛ بل يقبل أي رمز وصول صالح يكون معرف العميل (`client_id`) الخاص به مطابقاً للطلب. يفي رمز تم الحصول عليه بواسطة مستخدم نهائي عادي من خلال تدفق `authorization_code` مع PKCE — والمقتصر على نطاق `uaa.user`، ويحمل `user_id`، ويسجل `client_auth_method=none` — بهذا التحقق. لا يمكن لهذا الرمز الخاص بالمستخدم أن يُدير عملاء OAuth (حيث يعيد المسار `/oauth/clients` بشكل صحيح رمز حالة 403)، ولكن عند إعادة استخدامه كمصادقة Bearer في طلب `client_credentials` لنفس العميل، يصدر UAA رقماً جديداً خاصاً بالعميل فقط ويحمل الصلاحيات الكاملة للعميل، مثل `clients.write`. يمكن للمهاجم استخدام هذا الرمز لإنشاء عملاء OAuth جديدين بشكل تعسفي، بما في ذلك العملاء الذين تختارهم السلطات الخاصة بهم (authorities)، دون الحاجة أبداً إلى امتلاك السر الفعلي للعميل.
تتطلب الاستغلال وجود رمز وصول مستخدم صالح (خاص بالمهاجم) لعميل مُعد لدعم كل من تدفق المصادقة العام الموجه للمستخدم ونوع منح `client_credentials` على نفس معرف العميل (`client_id`) — وهو مزيج غير افتراضي. يتناسب الأثر العملي مع الصلاحيات المُسندة إلى ذلك العميل.
VulDB is the best source for vulnerability data and more expert information about this specific topic.