PyPI يحظر 1,800 بريد إلكتروني لمنع اختطاف الحسابات وهجمات سلسلة التوريد
19 أغسطس 2025 | مايسترو نيرو - قسم أمن سلسلة التوريد
أعلن مشرِّفو مستودع Python Package Index (PyPI) أن مدير الحزم يتحقق الآن من النطاقات المنتهية لمنع هجمات سلسلة التوريد.
"هذه التغييرات تحسن من وضع أمان الحساب العام في PyPI، مما يجعل من الصعب على المهاجمين استغلال أسماء النطاقات المنتهية للوصول غير المصرح به إلى الحسابات"، قال مايك فيدلر، مهندس الأمان والسلامة في PyPI لدى مؤسسة البرمجيات Python (PSF).
التحديث الأحدث:
مع التحديث الأحدث، تهدف القاعدة إلى مواجهة هجمات إعادة إحياء النطاقات، والتي تحدث عندما يقوم الأشخاص الخبيثون بشراء نطاق منتهٍ ويعملون على التحكم في حسابات PyPI من خلال إعادة تعيين كلمات المرور.
قال PyPI إنه ألغى التحقق من أكثر من 1,800 عنوان بريد إلكتروني منذ بداية يونيو 2025، بمجرد دخول النطاقات المرتبطة بها في مراحل انتهاء الصلاحية. وبينما هذه ليست حلاً كاملاً، إلا أنها تساعد على سد مسار هجوم كبير في سلسلة التوريد قد يبدو شرعيًا ويصعب اكتشافه.
المخاطر:
عناوين البريد الإلكتروني مرتبطة بأسماء النطاقات التي يمكن أن تنتهي صلاحيتها إذا لم تُدفع، وهي مخاطر حرجة للحزم الموزعة عبر السجلات مفتوحة المصدر. تتفاقم هذه المخاطر إذا كانت تلك الحزم قد تُركت منذ زمن طويل من قبل المشرفين عليها، ولكن لا تزال تُستخدم بكثافة من قبل المطورين.
يُشترط من مستخدمي PyPI التحقق من عناوين بريدهم الإلكتروني أثناء مرحلة تسجيل الحساب، مما يضمن أن تكون العناوين المقدمة صالحة ويمكن الوصول إليها. لكن هذا المستوى من الدفاع يصبح غير فعال إذا انتهى نطاق البريد الإلكتروني، مما يسمح للمهاجم بشراء نفس النطاق وبدء طلب إعادة تعيين كلمة المرور، والذي سيصل إلى صندوق بريده (بدلاً من المالك الفعلي للحزمة).
الحماية الجديدة:
من هناك، كل ما على المهاجم فعله هو اتباع الخطوات للوصول إلى الحساب بهذا الاسم النطاق. ظهرت المخاطر الناتجة عن النطاقات المنتهية في عام 2022، عندما استولى مهاجم مجهول على النطاق المستخدم من قبل المشرف على حزمة ctx في PyPI للوصول إلى الحساب ونشر إصدارات خبيثة في المستودع.
تهدف أحدث حماية أضافها PyPI إلى منع هذا النوع من سيناريوهات اختطاف الحساب (ATO) و"تقليل التعرض المحتمل إذا انتهى نطاق البريد الإلكتروني وانتقل إلى أيدي أخرى، بغض النظر عن تمكين المصادقة الثنائية (2FA) على الحساب." من المهم ملاحظة أن الهجمات تنطبق فقط على الحسابات التي سجلت باستخدام عناوين بريد إلكتروني مع اسم نطاق مخصص.
قال PyPI إنه يستخدم واجهة برمجة تطبيقات الحالة الخاصة بـ Fastly للاستعلام عن حالة النطاق كل 30 يومًا ووضع علامة "غير مُحقق" على عنوان البريد الإلكتروني المقابل إذا انتهى.
يُنصح مستخدمو مدير الحزم Python بتمكين المصادقة الثنائية (2FA) وإضافة عنوان بريد إلكتروني ثاني مُحقق من نطاق مشهور آخر، مثل Gmail أو Outlook، إذا كان الحساب يحتوي فقط على عنوان بريد إلكتروني واحد مُحقق من نطاق مخصص.
آخر تحديث: 7 أكتوبر 2025