
POC أكثر قابلية للحمل لـ copyfail LPE (CVE-2026-31431) الذي يعمل على Alpine Linux
هذا إصدار أكثر اختصارًا من ثغرة Copy Fail LPE (CVE-2026-31431) والذي يقوم بتصحيح البايتات الأولى من ملف /etc/passwd بحيث لا يتطلب الأمر su إلى المستخدم root كلمة مرور. يقلل هذا من الحجم الإجمالي للاستغلال الأصلي ويجعله أكثر قابلية للنقل. التوزيعات مثل Alpine تستخدم busybox/musl بدلاً من ثنائي su مستقل وارتباط glibc، لذلك فإن طريقة التصحيح الثنائية الأصلية لا تعمل بشكل عام. أردت تحديدًا عمل إصدار يعمل على Alpine، لكن هذه الطريقة يجب أن تعمل على أي توزيعة تقريبًا بها نواة ضعيفة بغض النظر عن صيغة coreutil الأساسية ومعمارية وحدة المعالجة المركزية، لأنها تعتمد على تعديل هدف أكثر انتشارًا. (ملاحظة: هذا الـ PoC ليس هروبًا من الحاوية)
استخدم تطبيق Go للحصول على ثنائي مستقل وقابل للنقل:
go build -o exp main.go
./exp

أو ببساطة قم بتشغيل سكريبت Python كمستخدم غير مميز باستخدام python3 exp.py واستمتع بقشرة جذر.

تم الاختبار على Alpine Linux 3.20.5 مع النواة 6.6.69.
الكتلة المضغوطة تحتوي على سلسلة البايت root::0:0: التي تزيل الحرف 'x' من الإدخال الأصلي للمستخدم root (root:x:0:0:root:/root:/bin/sh)، متجاوزة التحقق من وجود كلمة مرور في /etc/shadow عند استدعاء الأمر su.
المراجع: