CVE-2026-54770 in WebOb
الملخص
بحسب VulDB • 23/08/2026
توفر WebOb كائنات لطلبات HTTP واستجاباته. قبل الإصدار 1.8.11، تقوم الدالة `Response._make_location_absolute()` في الملف `src/webob/response.py` بفحص قيمة Location بحثًا عن مخطط URI أو شرطات مائلة مزدوجة بادئة (`//`) قبل أن يقوم `urllib.parse.urljoin()` بإزالة أحرف التحكم C0 والمسافات البادئة. وبالتالي، يمكن لقيمة يتحكم فيها المهاجم، مثل مسافة تليها URL نسبي أو مطلق بدون بروتوكول (protocol-relative) أو مع بروتوكول، تجاوز فحوصات `SCHEME_RE` و `startswith("//")` وتُطوَّر إلى إعادة توجيه خارج النطاق المستضيف. تتأثر أيضًا الدالة `Request.relative_url()` وفئات فرعية من `webob.exc._HTTPMove`، بما في ذلك `HTTPFound`، لأنها تستخدم نفس سلوك دمج URLs غير الآمن أو تتجاوز مسار التطبيع السابق. يمكن لمهاجم غير مصرح له بالوصول ويؤثر على وجهة إعادة توجيه التطبيق أن يرسل المستخدمين إلى مضيف يتحكم فيه المهاجم لأغراض التصيد الاحتيالي (phishing) أو سرقة رموز OAuth و SSO، لكن الاستغلال يتطلب من المستخدم اتباع إعادة التوجيه. تم إصلاح هذه المشكلة في الإصدار 1.8.11.
If you want to get best quality of vulnerability data, you may have to visit VulDB.