CVE-2025-61765
python-socketio عرضة لتنفيذ كود Python تعسفي (RCE) عبر إلغاء تسلسل pickle خبيث في بعض عمليات النشر متعددة الخوادم
- تم النشر
- 06/10/2025
- محدث
- 22/10/2025
- تخصيص CNA
- GitHub_M
- الأدلة المرصودة
- 08/08/2026
CVSS الأساسي
nvd · CVSS 3.1
CVSS:3.1/AV:A/AC:L/PR:H/UI:N/S:U/C:H/I:H/A:Lمنخفض · الثلاثين يومًا القادمة
- المئوية
- 40.6%
- تاريخ الموديل
- 21/09/2026
EPSS هو تقدير إحصائي، وليس يقينًا أو مقياسًا للتأثير. ادمجها مع CVSS وحالة KEV والتعرض وبيئتك.
ملخص
python-socketio هو تطبيق بلغة Python لعميل وخادم Socket.IO في الوقت الفعلي. تسمح ثغرة تنفيذ التعليمات البرمجية عن بُعد في إصدارات python-socketio السابقة للإصدار 5.14.0 للمهاجمين بتنفيذ تعليمات Python البرمجية التعسفية عبر إلغاء تسلسل (deserialization) خبيث لـ pickle في عمليات النشر متعددة الخوادم التي تمكن المهاجم فيها سابقًا من الوصول إلى قائمة انتظار الرسائل التي تستخدمها الخوادم للاتصالات الداخلية. عندما يتم تكوين خوادم Socket.IO لاستخدام خلفية قائمة انتظار رسائل مثل Redis للاتصال بين الخوادم، يتم ترميز الرسائل المرسلة بين الخوادم باستخدام وحدة `pickle` في Python. عندما يتلقى الخادم إحدى هذه الرسائل عبر قائمة انتظار الرسائل، يفترض أنها موثوقة ويقوم فورًا بإلغاء تسلسلها. تكمن الثغرة في إلغاء تسلسل الرسائل باستخدام دالة `pickle.loads()` الخاصة بـ Python. بعد أن حصل المهاجم سابقًا على حق الوصول إلى قائمة انتظار الرسائل، يمكنه إرسال حمولة pickle مصممة بعناية إلى خادم python-socketio تنفذ تعليمات برمجية تعسفية أثناء إلغاء التسلسل عبر طريقة `__reduce__` في Python. تؤثر هذه الثغرة فقط على عمليات النشر التي تحتوي على قائمة انتظار رسائل مخترقة. يمكن أن يؤدي الهجوم إلى قيام المهاجم بتنفيذ تعليمات برمجية عشوائية في سياق عملية خادم Socket.IO وبصلاحياتها. الأنظمة أحادية الخادم التي لا تستخدم قائمة انتظار رسائل، والأنظمة متعددة الخوادم ذات قائمة انتظار الرسائل الآمنة ليست عرضة للثغرة. بالإضافة إلى التأكد من اتباع ممارسات الأمان القياسية في نشر قائمة انتظار الرسائل، يمكن لمستخدمي حزمة python-socketio الترقية إلى الإصدار 5.14.0 أو أحدث، الذي يزيل وحدة `pickle` ويستخدم ترميز JSON الأكثر أمانًا بكثير للرسائل بين الخوادم.
المصادر
1إثبات المفهوم لثغرة إلغاء تسلسل غير آمنة لـ pickle في Socket.IO
الاستخدام المسؤول
استخدم معلومات الثغرات الأمنية فقط على الأنظمة التي تمتلكها أو المرخص لها باختبارها. يرتبط Kitploit ببيانات تعريف البحث العامة ولا يخزن أكواد الاستغلال أو الحمولات الضارة.