Skip to content
KitploitKITPLOIT
أدواتالمدونة
إرسال
أدواتالمدونة
إرسال

أدوات الاختراق واختبار الاختراق والأمن السيبراني لترسانتك الأمنية!

Kitploit هو دليل لأدوات الاختراق والأمن السيبراني واختبار الاختراق. اكتشف آخر تحديثات المشاريع للعثور على الثغرات وتحليل الأنظمة وأتمتة الاختبارات وتعزيز أمنك.

··الخلاصات·اتصال·الخصوصية·© 2026 Kitploit

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
CVE-2023-49438 — CVE-2023-49438 - ثغرة إعادة التوجيه المفتوحة في Flask-Security-Too | Kitploit
أدوات/GitHubGitHub/brandon-t-elliott/cve-2023-49438
تحليل الثغرات الأمنيةاستغلال تطبيقات الويبأمن الويبالأوراق والأبحاثالتعلم والتعليم
GitHubbrandon-t-elliott/cve-2023-49438

CVE-2023-49438

CVE-2023-49438 - ثغرة إعادة التوجيه المفتوحة في Flask-Security-Too

عرض المستودع
5منذ 2 سنواتلم تتم المراجعة بعد

الأكثر شعبية

عرض الكل →

اكتشف الأدوات الأكثر استخدامًا من قبل مجتمعنا.

استكشف جميع الأدوات

تصفح مجموعتنا من الأدوات

عرض جميع الأدوات →
مشاركة

CVE-2023-49438

إثبات المفهوم

ثغرة إعادة التوجيه المفتوحة في Flask-Security-Too

الوصف

ثغرة إعادة توجيه مفتوحة في حزمة بايثون Flask-Security-Too <=الإصدار 5.3.2 تسمح للمهاجمين بإعادة توجيه المستخدمين غير المتوقعين إلى مواقع ضارة عبر عنوان URL مُصمم خصيصًا عن طريق إساءة استخدام المعامل ?next في مسارات /login و /register.

خلفية

تحتوي Flask-Security-Too على منطق للتحقق من أن عنوان URL المحدد في المعامل next إما نسبي أو له نفس موقع الشبكة لعنوان URL الطالب. هذا موجود في محاولة لمنع عمليات إعادة التوجيه المفتوحة.

تم العثور سابقًا على حزمة بايثون Flask-Security-Too معرضة لتجاوز منطق التحقق الموجود، وقام الإصدار 4.1.0 بإصلاح الأمثلة المعروفة سابقًا مثل https://example/login?next=\\\github.com

ومع ذلك، تم اكتشاف طريقة تحايل بسبب كيفية تطبيع متصفحات الويب للشرطات المائلة في عناوين URL، مما يجعل الحزمة ضعيفة حتى الإصدار 5.3.2.

أمثلة

https://example/login?next=/\github.com

https://example/login?next=\/github.com

التأثير

تم الإشارة سابقًا في CVE-2021-32618 إلى أنه "إذا تم استخدام Werkzeug (وهو شائع جدًا مع تطبيقات Flask) كطبقة WSGI، فإنه بشكل افتراضي يضمن دائمًا أن رأس Location مطلق - مما يجعل ناقل الهجوم هذا غير فعال."

ومع ذلك، مع Werkzeug >=2.1.0 تم تغيير تكوين autocorrect_location_header إلى False - مما يعني أن رؤوس الموقع في عمليات إعادة التوجيه تكون نسبية بشكل افتراضي. وبالتالي، قد تؤثر هذه المشكلة على التطبيقات التي لم تكن متأثرة سابقًا، إذا كانت تستخدم Werkzeug >=2.1.0 كطبقة WSGI.

التخفيفات

  1. التحديث إلى Flask-Security-Too 5.3.3
root@kitploit:~
pip install -U Flask-Security-Too

أو

  1. إضافة خيارات التكوين هذه إلى تطبيقك (يخفف من جميع الأمثلة المعروفة حاليًا):
root@kitploit:~
app.config['SECURITY_REDIRECT_VALIDATE_MODE'] = "regex"
app.config['SECURITY_REDIRECT_VALIDATE_RE'] = r"^/{4,}|\\{3,}|[\s\000-\037][/\\]{2,}(?![/\\])|[/\\](https://github.com/brandon-t-elliott/cve-2023-49438/blob/HEAD/%5B%5E/%5C%5C%5D%7C/%5B%5E/%5C%5C%5D)*[/\\].*"

أو

  1. إذا تم استخدام Werkzeug >=2.1.0، تأكد يدويًا من تعيين autocorrect_location_header إلى True:
root@kitploit:~
@app.after_request
def fix_location_header(response):
    response.autocorrect_location_header = True

    return response

مرجع CVE

https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-49438

https://nvd.nist.gov/vuln/detail/CVE-2023-49438

إسناد

اكتشف طريقة التحايل براندون ت. إليوت، نوفمبر 2023

تنزيل الأداة