كتبت: بسنت الفرماوي
اكتشفت ثغرة هامة في منصة n8n، المخصصة لأتمتة سير العمل، تسمح بتسجيل دخول المهاجمين كمستخدمين آخرين. تتعلق المشكلة بإعدادات النسخ المؤسسية (Enterprise) التي تم تكوينها لتثق في أكثر من مصدر توكن خارجي.
تفاصيل الثغرة
عند تسجيل الدخول، كانت المنصة تقوم بمطابقة توكن JWT وارد مع مستخدم محلي اعتمادًا فقط على قيمة “sub” في المحتوى، متجاهلة قيمة “iss”. وهكذا، يمكن لتوكن صالح مأخوذ من مصدر A والذي يحمل “sub” خاص بشخص ما من مصدر B أن يسجل دخول المستخدم كأحدهم، دون الحاجة إلى كلمة مرور.
تصحيح الثغرة
تم إصدار تصحيح (fix) لهذه الثغرة في 24 يونيو، وتُعَرف هذه الثغرة برمز CVE-2026-59208. لكن المعلومات العامة حولها لم تُنشر حتى 9 يوليو، مما ترك مجالًا للمهاجمين للاستفادة من الثغرة. يُعزى تقرير الثغرة إلى حساب GitHub باسم bearsyankees، والذي يصف نفسه بأنه يختص في تطوير وكيل اختراق يعتمد على الذكاء الاصطناعي.
آلية العمل
تستخدم n8n في نظامها لتبادل التوكن آلية تتيح لمزودي الخدمات OEM دمج نظامهم، إذ يتم إصدار توكن JWT قصير العمر بواسطة الشريك، وتتأكد n8n من صحته مقابل مفتاح عام محدد. عندئذٍ، يتم مطابقة المطالبات (claims) لاستخدام حساب محلي، مما يسهل الدخول للمستخدم.
ولكن، تكمن المشكلة الأساسية في أن n8n كانت تعتمد على جزء فقط من التعريف، وهو “sub”، حيث أن القيمة هذه تظل فريدة فقط داخل المصدر الذي أنشأتها. وفقاً لمعيار RFC 7519، يجب أن تكون فريدة محليًا في سياق المصدر أنشأها أو فريدة على مستوى عالمي.
المخاطر الملحقة
تنتج المخاطر الجسيمة من قدرة بعض المصدرين على إصدار نفس قيمة “sub”. حينها، يمكن أن يؤدي ذلك إلى تسجيل الدخول إلى حساب n8n واحد بناءً على توكنات مأخوذة من مصادر متعددة.
تؤكد n8n أن الثغرة تؤثر فقط على النسخ التي تم تفعيل ميزة تبادل التوكن، وثقت في مصدرين خارجيين على الأقل. لم تتأثر النسخ التي تم إيقاف هذه الخاصية فيها.
تقييم المخاطر
تم تقييم خطورة الثغرة بمرتبة عالية من قبل GitHub، والتي منحتها قيمة 7.6 وفقًا لمقياس CVSS 4.0. بينما وضعت NVD نفس الثغرة عند 6.8 وفقًا لمقياس CVSS 3.1. لكن لم يصدر تقييم مدرج في CVSS 4.0 حتى الآن.
في 13 يوليو، أفادت CISA أن الاستغلال الفعلي لهذه الثغرة لم يكن موجودًا حتى تلك اللحظة. حيث لم يتم العثور على أي دليل علني يثبت الاستغلال الفعلي لها بالعكس على تطابق الأساليب المتاحة.
الإصلاح والتوصيات
لحماية المستخدمين، يُوصى بتحديث الحزم البرمجية إلى أحدث الإصدارات المتاحة. حيث تم تضمين التصحيحات الأولية في النسخ 2.27.4 و2.28.1، وأيضاً في النسخة الأحدث 2.30.6.
إذا كان التحديث مؤجلاً، ينصح بتقليل عدد المصادر الموثوقة إلى مصدر واحد، أو إيقاف ميزة تبادل التوكن نهائيًا. يُشير التحذير إلى أن هذه التدابير هي إجراءات قصيرة المدى، ولا تعالج المشكلة بالكامل.
يمكنك قراءة المزيد في المصدر.
لمزيد من التفاصيل اضغط هنا.