أمن سيبراني

لماذا ينتظر Dependabot ثلاثة أيام قبل تحديث مكتبات مشروعك؟

لماذا ينتظر Dependabot ثلاثة أيام قبل تحديث مكتبات مشروعك؟

GitHub يضيف مهلة افتراضية لتحديثات Dependabot العادية بهدف تقليل خطر الإصدارات الخبيثة أو المعطوبة. إليك ما يتغير وما الذي ينبغي للمطور فعله.

التحديث الأسرع ليس دائما التحديث الأكثر أمانا. أحيانا يصل إصدار جديد من مكتبة برمجية إلى السجل العام، فتلتقطه أدوات التحديث الآلي قبل أن يكتشف المجتمع أنه معطوب أو خبيث. لهذا غيّر GitHub السلوك الافتراضي لـ Dependabot: التحديثات العادية تنتظر الآن ثلاثة أيام قبل فتح طلب دمج.

الخلاصة السريعة: المهلة لا تعني إهمال التحديثات، بل تمنح الإصدار الجديد وقتا قصيرا كي يخضع للفحص ويظهر إن كانت حوله بلاغات خطرة.

ما الذي يتغير فعليا؟

  • تنطبق المهلة الافتراضية على تحديثات الإصدارات العادية.
  • لا تتأخر التحديثات الأمنية؛ إذا ظهر إصلاح لثغرة معروفة، يظل Dependabot قادرا على فتح طلب التحديث مباشرة.
  • لا تحتاج إلى تعديل الإعدادات للاستفادة من مهلة الأيام الثلاثة.
  • يمكن للمشروع اختيار مدة مختلفة، من يوم واحد إلى 90 يوما، أو استثناء حزم محددة.

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

هل تكفي المهلة وحدها؟

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

قبل دمج أي تحديث، افحص سجل التغييرات، وراجع الملفات التي عدّلها طلب الدمج، وشغّل الاختبارات. استخدم ملف قفل للاعتماديات، وقلل صلاحيات مفاتيح CI، وتجنب تشغيل سكربتات التثبيت غير الضرورية داخل خطوط البناء.

متى تعدل المدة؟

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

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

عرض الكل

مقالات ذات صلة ›