GitHub وPyPI يضيفان دفاعات تعتمد على التأخير الزمني ضد هجمات سلسلة التوريد

BleepingComputer
مشاركة:
GitHub وPyPI يضيفان دفاعات تعتمد على التأخير الزمني ضد هجمات سلسلة التوريد

أعلنت كل من GitHub وPython Package Index (PyPI) هذا الأسبوع عن إدخال دفاعات زمنية تهدف إلى إبطاء هجمات سلسلة التوريد التي تستغل سرعة التحديثات الآلية للتبعيات. أداة Dependabot من GitHub تؤخر الآن اعتماد إصدارات الحزم الجديدة لمدة 72 ساعة بشكل افتراضي، بينما بدأت PyPI رفض رفع ملفات جديدة لإصدارات الحزم الأقدم من 14 يومًا.

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

لماذا الآن

تأتي هذه الخطوات بعد سلسلة من الحوادث البارزة على كلا النظامين البيئيين خلال العام الماضي، بما في ذلك عمليات اختطاف حزمتي 'chalk' و'debug' في npm – والتي أثرت معًا على حزم يبلغ إجمالي تنزيلاتها الأسبوعية 2 مليار – وحملة البرمجيات الخبيثة s1ngularity المدعومة بالذكاء الاصطناعي والتي أصابت 2,180 حسابًا على GitHub، وهجوم Shai-Hulud الذي وزع حزمًا خبيثة موقعة متنكرة كمكتبات TanStack وMistral، وحملة GhostAction التي أجبرت PyPI على إبطال رموز النشر المسروقة. كانت GitHub قد أعلنت بالفعل عن مجموعة أوسع من التغييرات الأمنية في npm الشهر الماضي؛ فترة التهدئة الجديدة لـ Dependabot هذا الأسبوع توسع من جهود التعزيز تلك.

كيف تعمل الدفاعات

فترة التهدئة الجديدة لمدة 72 ساعة في Dependabot تؤخر طلبات السحب التي يفتحها لإصدارات التبعيات الجديدة، مما يمنح مجتمع الأمن وقتًا لاكتشاف ووضع علامات على الإصدارات الخبيثة قبل أن تعتمدها الأدوات الآلية. قالت GitHub إن مدة الثلاثة أيام تم اختيارها كتوازن بين الأمن والبقاء على اطلاع بالتحديثات المشروعة، والتأخير قابل للتكوين – يمكن للمطورين تقصيره أو إطالته. أوصت GitHub أيضًا بإقران فترة التهدئة مع ملفات القفل (lockfiles) لتثبيت التبعيات، ورموز نشر ذات نطاق مقيد، وتعطيل نصوص التثبيت غير الضرورية في خطوط CI/CD، لأن فترة التهدئة وحدها لا تحمي من اختراق الحسابات على المدى الطويل.

تغيير PyPI يستهدف نمط هجوم مختلف: مخترق يسيطر على رمز نشر المطور أو سير عمل CI/CD بعد وقت طويل من إصدار إصدار حزمة واكتسابه ثقة المطورين. بمنع رفع ملفات جديدة لأي إصدار أقدم من 14 يومًا، تغلق PyPI نافذة هذا النوع من "release poisoning"، حيث يتم تعديل إصدار موثوق ومعتمد بالفعل بهدوء بعد النشر. أشارت PyPI إلى أنه لم يتم تأكيد أي هجوم سابق استخدم هذه التقنية المحددة – المنصة تتصرف استباقيًا، بعد أن وجدت أن جزءًا صغيرًا فقط من المشاريع ترفع ملفات بشكل مشروع بعد أكثر من أسبوعين من الإصدار.

ماذا يعني هذا للمطورين

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

Originally reported by BleepingComputer. Read the original article for additional details.

View original source
مشاركة: