رافي لاكشمانان09 يوليو 2026أمن سلسلة التوريد / DevSecOps

أعلن GitHub رسميًا عن إصدار npm الإصدار 12 مع تعطيل البرامج النصية للتثبيت افتراضيًا، إلى جانب إيقاف رموز الوصول الحبيبية (GATs) المصممة لتجاوز المصادقة الثنائية (2FA).

لاحظت الشركة الفرعية المملوكة لشركة Microsoft أن سلوكيات تثبيت npm التالية التي كانت تعمل تلقائيًا من قبل قد تم تمكينها –

  • يتم إيقاف تشغيلallowScripts بشكل افتراضي، مما يعني أن البرامج النصية لدورة حياة التبعية (على سبيل المثال، التثبيت المسبق والتثبيت وما بعد التثبيت) وإصدارات العقدة الضمنية لم تعد تعمل ما لم يُسمح بذلك صراحةً.
  • –allow-git الافتراضي هو لا شيء، مما يعني أن –allow-git الافتراضي هو لا شيء: لم يعد يتم حل تبعيات Git (المباشرة أو المتعدية) ما لم يُسمح بذلك صراحةً.
  • – السماح بالإعدادات الافتراضية عن بعد إلى لا شيء، مما يعني أن التبعيات من عناوين URL البعيدة (على سبيل المثال، https tarballs) لم تعد تُحل ما لم يُسمح بذلك صراحةً.

لمراجعة البرامج النصية الموثوقة والموافقة عليها، يُطلب من المستخدمين الآن تشغيل: “npm موافقة البرامج النصية –allow-scripts-pending،” ثم الالتزام بالقائمة المسموح بها الناتجة في ملف “package.json”.

تجدر الإشارة إلى أنه تمت معاينة هذه التغييرات الشهر الماضي، حيث أوصى GitHub المطورين بالترقية إلى npm 11.16.0 أو الأحدث، وتشغيل أمر التثبيت العادي، ومراجعة التحذيرات المعروضة.

يقدم الإصدار الأخير من npm أيضًا تغييرين جديدين –

  • لن تتمكن npm GATs التي تم تكوينها لتجاوز المصادقة الثنائية (2FA) من تنفيذ إجراءات إدارة الحساب والحزمة والمؤسسة الحساسة. يتضمن ذلك إنشاء الرموز المميزة أو حذفها، وإنشاء رموز الاسترداد وتغيير كلمة مرور حساب npm أو البريد الإلكتروني أو الملف الشخصي أو تكوين المصادقة الثنائية (2FA)، وتغيير الوصول إلى الحزمة أو المشرفين أو تكوين النشر الموثوق به، وإدارة عضوية المؤسسة والفريق بالإضافة إلى منح الحزم الخاصة بهم.
  • لن تحتفظ npm GATs بالقدرة على النشر مباشرة. سيقتصر سطح النشر الخاص بهم على قراءة الحزم الخاصة والنشر، حيث تصبح الحزمة عامة فقط بعد موافقة 2FA البشرية.

من المتوقع أن يدخل التغيير الأول من التغييرين حيز التنفيذ في أوائل أغسطس 2026. وفي غضون ذلك، يُنصح بالتوقف عن استخدام الرموز المميزة لتجاوز المصادقة الثنائية للعمليات المذكورة أعلاه وتنفيذها بشكل تفاعلي مع المصادقة الثنائية. ومن المقرر إجراء التغيير الثاني في يناير 2027.

قال GitHub: “للتحضير، خطط لنقل النشر الآلي إلى النشر الموثوق (OIDC) أو النشر المرحلي بخطوة موافقة بشرية، بدلاً من رمز نشر طويل الأمد”.

يأتي التطوير في الوقت الذي يقدم فيه pnpm 11.10 إعداد “_auth” الجديد لتكوين مصادقة التسجيل كقيمة واحدة منظمة ومحددة بعنوان URL.

“الفائدة الأمنية هي أن بيانات الاعتماد والمضيف الذي تنتمي إليه يسافران معًا، ويقرأ pnpm _auth فقط من البيئة أو التكوين العام، وليس من ملفات المشروع أبدًا،” أوضح سوكيت.

“وهذا يعني أن ملف pnpm-workspace.yaml أو .npmrc الخبيث أو المخترق داخل المستودع لا يمكنه توجيه رمز مميز صالح إلى مضيف مختلف. يعد ملف المشروع الذي تم العبث به طريقة شائعة يحصل بها المهاجمون على موطئ قدم، وإعادة توجيه رمز التسجيل المميز هو طريق مباشر لسرقته، لذا فإن إغلاق هذا المسار يزيل التعرض.”

شاركها.
اترك تعليقاً