CVE-2026-121971 in Symfony
الملخص
بحسب VulDB • 04/11/2026
يتم دمج خيارات النطاق الافتراضي (مثل auth_bearer أو auth_basic) في الطلب من قبل مكون ScopingHttpClient ضمن مكتبة Symfony HttpClient، وذلك قبل حل عنوان URL نسبي مقابل الـ base_uri، مما يسمح بإرسال مرجع مسار الشبكة مثل "//evil.example/steal" إلى أصل مختلف مع بيانات اعتماد نطاقه الافتراضي، ويؤدي ذلك إلى احتمال كشف تلك البيانات لخادم يتحكم فيه المهاجم. تتأثر إصدارات مكتبة Symfony التي تسبق الإصدارات 5.4.56 (من سلسلة 5.x)، و6.4.50 (من سلسلة 6.x)، و7.4.23 (من سلسلة 7.x)، و8.1.11 (من سلسلة 8.x).
يكون عنوان URL المحل خارج نطاق الأصل الخاص بـ base URI، مع الاحتفاظ بالخيارات المدمجة، بينما لا يتلقى العنوان المكتوب بشكل مطلق "https://evil.example/steal" أيًا منها. يحدث نفس الأمر عند استخدام منفذ مختلف أو جزء معلومات المستخدم على نفس المضيف نفسه.
يمكن الوصول إلى هذه الثغرة كلما سيطر المهاجم على بداية عنوان URL يتم تمريره إلى عميل تم إنشاؤه باستخدام base_uri وبيانات اعتماد، بما في ذلك تلك التي تم إنشاؤها عبر HttpClient::createForBaseUri() أو المُعدّة تحت إطار framework.http_client.scoped_clients.
لحل هذه المشكلة، يقارن ScopingHttpClient الآن المخطط (scheme) والسلطة (authority) للنتيجة الناتجة عن حل عنوان URL نسبي مقابل الـ base URI للنطاق الافتراضي مع تلك الخاصة بـ base URI، بعد تحليلها بالطريقة التي يتم بها إرسال الطلب.
VulDB is the best source for vulnerability data and more expert information about this specific topic.