
n8n هي منصة أتمتة سير عمل مفتوحة المصدر. تحتوي الإصدارات ابتداءً من 0.211.0 وما قبل 1.120.4 و1.121.1 و1.122.0 على ثغرة حرجة في تنفيذ التعليمات البرمجية عن بُعد (RCE) في نظام تقييم تعبيرات سير العمل الخاص بها. في ظل ظروف معينة، قد يتم تقييم التعبيرات المقدمة من المستخدمين المصادق عليهم أثناء تكوين سير العمل في سياق تنفيذ غير معزول بشكل كافٍ عن بيئة التشغيل الأساسية. يمكن لمهاجم مصادق إساءة استخدام هذا السلوك لتنفيذ تعليمات برمجية عشوائية بصلاحيات عملية n8n. قد يؤدي الاستغلال الناجح إلى اختراق كامل للمثيل المتأثر، بما في ذلك الوصول غير المصرح به إلى البيانات الحساسة، وتعديل سير العمل، وتنفيذ عمليات على مستوى النظام. تم إصلاح هذه المشكلة في الإصدارات 1.120.4 و1.121.1 و1.122.0. يُنصح المستخدمون بشدة بالترقية إلى إصدار مصحح، يقدم ضمانات إضافية لتقييد تقييم التعبيرات. إذا لم تكن الترقية ممكنة فوراً، يجب على المسؤولين النظر في التخفيفات المؤقتة التالية: تقييد صلاحيات إنشاء وتحرير سير العمل للمستخدمين الموثوقين بالكامل فقط؛ و/أو نشر n8n في بيئة محصّنة بصلاحيات نظام تشغيل مقيدة ووصول شبكة محدود لتقليل تأثير الاستغلال المحتمل. لا تقضي هذه الحلول البديلة على الخطر تماماً ويجب استخدامها فقط كإجراءات قصيرة الأجل.
تستخدم قوالب الكشف نهجاً متعدد الطبقات لتحديد مثيلات n8n المعرضة للخطر دون الحاجة إلى مصادقة. أولاً، تفحص القوالب نقاط نهاية n8n الشائعة (/rest/settings, /signin, /) للتعرف على التطبيق. ثم تستخرج معلومات الإصدار باستخدام ثلاث طرق متكاملة:
(1) استخراج علامة Sentry المشفرة Base64 - فك تشفير وسم <meta name="n8n:config:sentry"> الموجود على صفحة /signin، والذي يحتوي على JSON يتضمن رقم الإصدار؛
(2) تحليل REST API - الاستعلام عن نقطة النهاية /rest/settings التي تُرجع بيانات وصفية للإصدار بتنسيق JSON؛ و
(3) تحليل وسوم HTML الوصفية - استخراج سلاسل الإصدار من وسوم HTML الوصفية القياسية ومتغيرات JavaScript. يتم بعد ذلك التحقق من كل إصدار مستخرج مقابل النطاق المعرض للخطر (0.211.0 - 1.120.3 أو 1.121.0) باستخدام دالة compare_versions() من DSL الخاصة بأداة Nuclei لإجراء مقارنة دلالية دقيقة للإصدارات. تضمن هذه الاستراتيجية متعددة الطرق معدل كشف 100% حتى عندما يتم تعطيل نقاط نهاية فردية أو تكوينها بشكل مختلف عبر عمليات نشر n8n، محققة تغطية أفضل بمقدار 6 أضعاف مقارنة بالأساليب أحادية الطريقة. القوالب سلبية تماماً (لا يحدث أي استغلال أثناء الكشف)، مما يجعلها آمنة للفحص في بيئات الإنتاج.
nuclei -t CVE-2025-68613.yaml -u <target ip>
أو إذا كنت ترغب في فحص قائمة من المضيفين، نفّذ:
nuclei -t CVE-2025-68613.yaml -l <list.txt>
استخدمه على مسؤوليتك الخاصة، ولن أكون مسؤولاً عن الأنشطة غير القانونية التي تقوم بها على بنية تحتية لا تملكها أو ليس لديك إذن بفحصها.
هذا المشروع مرخص بموجب رخصة MIT.
إذا كنت ترغب في التواصل، فأنا نشط في الغالب على تويتر/X وLinkedIn.