أعلنت جيت هاب إطلاق جدار حماية جديد للحزم بصيغة معاينة، يتولى حجب تثبيت حزم npm المشبوهة لحظة التثبيت. وقالت الشركة إن الجدار يفحص طلبات البيانات الوصفية وتنزيلات الحزم بحثا عن مؤشرات نشاط خبيث، ويعمل كبوابة سياسات عند التثبيت. وتقتصر الميزة حاليا على حزم npm، وهي متاحة ضمن معاينة عامة لجميع عملاء جيت هاب إنتربرايز كلاود، بما في ذلك النسخة ذات الإقامة المحلية للبيانات.
ووفقا للشركة التابعة لمايكروسوفت، يوضع الجدار بين الأجهزة الطرفية أو السجلات الداخلية من جهة ومستودعات الحزم الأصلية من جهة أخرى، بهدف التصدي لهجمات البرمجيات الخبيثة التي تصيب الأنظمة أثناء تثبيت الحزم. وقد يعرّض هذا السلوك المستخدمين لمخاطر أمنية جسيمة، خصوصا حين تثبّت وكلاء الذكاء الاصطناعي ومشغّلات التكامل المستمر الاعتماديات تلقائيا لإنجاز مهمة أو بناء دون إذن صريح.
كيف يعمل الجدار وما السياسات التي يتيحها؟
تقوم الفكرة على أن تستخدم الأجهزة الطرفية، مثل وكلاء البرمجة ومضيفات التكامل والنشر المستمرين، الجدار لطلباتها بدلا من التوجه مباشرة إلى سجلات الحزم العامة. ويفحص الجدار بعدها التنزيلات مقابل ضوابط سياسات، منها الحد الأدنى لعمر الحزمة وتحذيرات البرمجيات الخبيثة، ويحجب ما لا يستوفيها. ويتعين على المسؤولين ضبط هذه الضوابط لاستخدام الجدار.
وتشمل الضوابط حجب البرمجيات الخبيثة المعروفة بمطابقتها مع قاعدة بيانات تحذيرات جيت هاب الأمنية، وحجب الحزم بحسب خطورة الثغرات، إذ يعتمد الضبط الافتراضي مستوى “حرجة فقط” لمنع التثبيت، ويمكن اختيار “عالية فأعلى” أو “متوسطة فأعلى” أو “أي درجة”. كما يحجب الجدار حالات التراجع في الإثباتات، بمقارنة إثباتات الإصدار المطلوب بإثباتات الإصدارات السابقة، ويوقف التنزيل إذا خلا الإصدار المطلوب من إثبات SLSA. ويحجب كذلك سكربتات التثبيت المستحدثة، بالتحقق مما إذا أضافت الحزمة حديثا سكربتات تعمل عبر خطافي preinstall وpostinstall اللذين يمكن إساءة استخدامهما لسرقة بيانات حساسة.
وهناك أيضا ضابط فترة التهدئة، الذي يمنع تثبيت الإصدارات الأحدث من الحد الأدنى المحدد للعمر، وتتراوح قيمته بين يوم و365 يوما، وقيمته الافتراضية يوم واحد، ويمكن تعطيله بضبطه على صفر. ويستطيع المستخدمون الذين يحتاجون إلى حزمة حُجبت خطأ تقديم طلب استثناء، يوافق عليه مسؤولو المؤسسة ومديرو الأمن.
فترات الانتظار تنتشر في منظومات البرمجيات
يأتي هذا التطور في وقت تستعد فيه لغة Rust في إصدارها 1.100، المقرر صدوره في 12 نوفمبر 2026، لإضافة دعم لحد أدنى قابل للضبط لعمر النشر، ما يمنح الماسحات الأمنية والمشرفين وقتا لرصد إصدارات الحزم الخبيثة وحجبها قبل تثبيتها أو استخدامها. وتتيح القيمة، التي تحدد عبر الخيار global-min-publish-age في ملف cargo/config.toml، للمستخدمين تحديد حد أدنى لعمر النشر بالأيام أو الأسابيع. وإذا تُركت دون تحديد، تُطبق فترة انتظار افتراضية مدتها سبعة أيام لتجاوز الإصدارات المنشورة خلالها.
وخلال العام الماضي، طُبقت فترات انتظار مماثلة في منظومات مفتوحة المصدر عدة، منها npm وبايثون وفيجوال ستوديو كود من مايكروسوفت وروبي وBun وpnpm وYarn، لتعزيز أمن سلسلة توريد البرمجيات عبر تقليل احتمال سحب إصدار جديد لم تجر مراجعته إلى عملية البناء فورا. وتضيف فترات التهدئة احتكاكا يبطئ الهجمات التي ينشر فيها مهاجم إصدارا مسموما من حزمة شائعة بعد الاستيلاء على حساب أحد المشرفين، فتمنع انتشاره السريع عبر عمليات التثبيت اليدوية أو الآلية.
وقالت شركة سوكيت إن الثمن هو أن الإصلاحات المشروعة تضطر هي الأخرى إلى الانتظار، ما لم يمنح المطورون استثناء. وأضافت أن الشيفرة الخبيثة لا تصبح بريئة بمرور الوقت، فقد يتجاوز إصدار أفلت من الكشف مدة التهدئة ببساطة. وترى أن القيمة تكمن في منح الباحثين والمشرفين والسجلات وقتا للتحرك قبل أن يحمل تحديث الاعتماديات التالي هجوما أبعد.































