
# نصوص Bash لكشف وتخفيف CVE-2026-31431 (Copy Fail) تصعيد الامتيازات المحلية في نواة لينكس عبر مقبس AF_ALG، بما في ذلك تعطيل الوحدة وتهيئة seccomp.
يوفر هذا المشروع مجموعة من نصوص Bash للكشف عن وتخفيف ثغرة CVE-2026-31431 (المعروفة أيضًا باسم "Copy Fail") في نواة Linux لتصعيد الصلاحيات محليًا.
a664bf3d603d والتصحيحات اللاحقةتوجد هذه الثغرة في تنفيذ AF_ALG socket في نواة Linux، حيث قد يتمكن المهاجم من تحقيق تصعيد صلاحيات محلي من خلال إنشاء عملية ربط authencesn محددة.
| الملف | الغرض | صلاحيات التشغيل |
|---|---|---|
check_cve_2026_31431.sh | كشف تأثير الثغرة وتقييم المخاطر | مستخدم عادي أو root |
cve-2026-31431-mitigate.sh | تنفيذ إجراءات التخفيف (تعطيل الوحدات، إنشاء إعدادات seccomp) | يتطلب صلاحيات root |
bash check_cve_2026_31431.sh
يقوم النص بفحص العناصر التالية عنصرًا بعنصر:
CONFIG_CRYPTO_USER_API_AEADalgif_aead / af_algauthencesn (لتحديد ما إذا تم التخفيف)يُخرج النص في النهاية مستوى المخاطر الإجمالي: UNKNOWN / LOW / MEDIUM / HIGH.
ملاحظة: يتطلب نص التخفيف صلاحيات root للتشغيل.
sudo bash cve-2026-31431-mitigate.sh
تشمل عمليات التخفيف:
/etc/modprobe.d/disable-algif-aead.conf لمنع تحميل وحدة algif_aeadalgif_aead محمّلة بالفعل، محاولة إلغاء تحميلها (rmmod)depmod -a لتحديث تبعيات الوحداتsudo bash cve-2026-31431-mitigate.sh --verify-only # تحقق فقط، دون كتابة إعدادات
sudo bash cve-2026-31431-mitigate.sh --write-seccomp # إنشاء إعدادات Docker seccomp إضافية
sudo bash cve-2026-31431-mitigate.sh --seccomp-path /path # تحديد مسار إخراج seccomp
المعيار الذهبي لتحديد ما إذا كان التخفيف فعالًا: فشل ربط authencesn.
يحاول "البند 5: التحقق من التخفيف (ربط authencesn)" في نص الكشف تنفيذ:
import socket
s = socket.socket(38, 5, 0) # AF_ALG
s.bind(("aead", "authencesn(hmac(sha256),cbc(aes))"))
CONFIG_CRYPTO_USER_API_AEAD=y (مترجمة ثابتًا داخل النواة)، فإن طريقة تعطيل الوحدة عادةً لا تكون فعالة، ولا بد من ترقية النواة.algif_aead قيد الاستخدام، فقد يفشل rmmod في إلغاء التحميل، ويُنصح بإعادة التشغيل في نافذة الصيانة ثم التحقق.socket(AF_ALG).a664bf3d603d والتصحيحات اللاحقة.تم اختبار النصوص في البيئات التالية بنجاح:
grep, sed, lsmod, modprobe, rmmod, depmod)python3 أو python (للتحقق من AF_ALG socket)MIT License
النصوص المقدمة في هذا المشروع مخصصة فقط للكشف الأمني والتخفيف المؤقت، ولا يمكن أن تحل محل ترقية تصحيحات النواة الرسمية. قبل استخدام هذه النصوص، يرجى فهم عملياتها جيدًا (مثل تعطيل وحدات النواة) والتحقق منها في بيئة اختبار أولاً. لا يتحمل المؤلف أي مسؤولية عن أي خسائر مباشرة أو غير مباشرة ناتجة عن استخدام هذه الأداة.