
يكتشف التعرض لثغرة CVE-2026-31431 (Copy Fail) ويخففها اختياريًا عن طريق تعطيل وحدة نواة algif_aead المعرضة للخطر، مع تقديم أحكام وحالة التصحيح.
اكتشاف التعرض لثغرة CVE-2026-31431 (Copy Fail) وتطبيق تخفيف اختياري على مستوى المضيف عن طريق تعطيل وحدة النواة algif_aead على الأنظمة المعرضة للخطر.
copyfail-check.sh — يتحقق من حالة تصحيح النواة، والتعرض لوحدة التشغيل، وحالة التخفيف.--mitigate.NOT AFFECTED، PATCHED، NOT EXPLOITABLE، MITIGATED، MITIGATED (REBOOT PENDING)، أو AFFECTED.تحسين AEAD في المكان الذي أُجري عام 2017 (الالتزام 72548b093ee3، النواة 4.14) يسمح لمهاجم محلي غير مميز بالحصول على بدائية كتابة في ذاكرة التخزين المؤقت للصفحات ضد أي ملف قابل للقراءة، مما يتيح تصعيد الصلاحيات إلى الجذر. في بيئات الحاويات، قد تسهل نفس البدائية الهروب من الحاوية.
الأنوية قبل 4.14 غير متأثرة. يشمل ذلك نواة Ubuntu 3.13 (Trusty 14.04 GA) ونواة 4.4 (Xenial 16.04 GA، Trusty HWE) — فهي تسبق الالتزام المعرض للخطر.
| الدور | الالتزام |
|---|---|
| إدخال الثغرة | 72548b093ee3 (النواة 4.14، 2017) |
| الإصلاح — الرئيسي / النواة 7.0 |
تقوم التوزيعات بنقل التصحيحات مع معرّفات التزامات خاصة بها. يبحث السكربت عن معرّف CVE في سجلات تغييرات الحزم، وهو أكثر موثوقية من تجزئات المصدر العلوية للأنوية المنقولة.
يوزع فريق أمان Ubuntu تحديثًا لحزمة kmod يكتب install algif_aead /bin/false إلى /etc/modprobe.d/disable-algif_aead.conf. ينشئ هذا السكربت نفس الملف بنفس المحتوى وهو متوافق تمامًا مع هذا النهج. تطبيق تحديث الحزمة الرسمي (sudo apt install --only-upgrade kmod) هو المسار الموصى به على Ubuntu؛ يوفر هذا السكربت تغطية مكافئة للأنظمة غير القائمة على Ubuntu أو للفرز قبل التحديث.
chmod +x copyfail-check.sh
sudo ./copyfail-check.sh # كشف فقط
sudo ./copyfail-check.sh --mitigate # كشف + تطبيق تخفيف إذا كان متأثرًا
قم ببث السكربت مباشرة من main وتنفيذه. صيغة bash -s -- تمرر الوسائط بعد -- إلى السكربت نفسه، لذا يصل --mitigate إلى السكربت وليس إلى bash.
# كشف فقط
curl -fsSL https://raw.githubusercontent.com/Webhosting4U/Copy-Fail_Detect_and_mitigate_CVE-2026-31431/main/copyfail-check.sh | sudo bash
# كشف + تخفيف
curl -fsSL https://raw.githubusercontent.com/Webhosting4U/Copy-Fail_Detect_and_mitigate_CVE-2026-31431/main/copyfail-check.sh | sudo bash -s -- --mitigate
معادلات wget:
wget -qO- https://raw.githubusercontent.com/Webhosting4U/Copy-Fail_Detect_and_mitigate_CVE-2026-31431/main/copyfail-check.sh | sudo bash
wget -qO- https://raw.githubusercontent.com/Webhosting4U/Copy-Fail_Detect_and_mitigate_CVE-2026-31431/main/copyfail-check.sh | sudo bash -s -- --mitigate
ملاحظة أمنية. تمرير سكربت عن بُعد مباشرة إلى قشرة مميزة يثق في ما يخدمه عنوان URL في لحظة التنفيذ. للفرز لمرة واحدة هذا مقبول؛ للاستخدام المتكرر أو الإنتاجي، ثبّت على التزام محدد وافحص السكربت أولاً:
curl -fsSL https://raw.githubusercontent.com/Webhosting4U/Copy-Fail_Detect_and_mitigate_CVE-2026-31431/<commit-sha>/copyfail-check.sh -o copyfail-check.sh less copyfail-check.sh sudo bash copyfail-check.sh --mitigate
NOT AFFECTED/sys/kernel/livepatch/، بالإضافة إلى kpatch list وcanonical-livepatch statusubuntu-security-status --cves، dnf updateinfo list cves، zypper patch-checkalgif_aead (modinfo) وحالة التحميل (lsmod)/etc/modprobe.d/ — تقبل المعادلات المحايدة (install … /bin/false|/bin/true|/sbin/nologin) و؛ تحدد ما إذا كان الحظر جاء من حزمة kmod الخاصة بـ Ubuntuعند استخدام --mitigate على نظام متأثر، يقوم السكربت بما يلي:
/etc/modprobe.d/disable-algif_aead.conf يحتوي على install algif_aead /bin/falsealgif_aead إذا كان محملاً حاليًااسم الملف /etc/modprobe.d/disable-algif_aead.conf يطابق الملف المكتوب بواسطة تحديث حزمة kmod الرسمي لـ Ubuntu، لذا فإن كلا النهجين قابلان للتبادل ومتوافقان.
algif_aead آمن لمسارات التشفير الشائعة: dm-crypt، LUKS، kTLS، IPsec، استخدام OpenSSL/GnuTLS الافتراضي، SSH، وتشفير حلقة المفاتيح في النواة غير متأثرة.afalg الخاص بـ OpenSSL صراحةً ستفقد تسريع الأجهزة؛ يجب أن تتراجع إلى التشفير البرمجي، لكن قد يكون إعادة التشغيل مطلوبة لتفعيل التراجع.| التاريخ | الحدث |
|---|---|
| 2026-03-23 | الإبلاغ لفريق أمان نواة Linux |
| 2026-04-01 | إصلاح الالتزام في الخط الرئيسي |
| 2026-04-29 | الإفصاح العام |
sudo أو قشرة جذر)uname، modinfo، lsmod، awk، grepdpkg — فحص سجل تغييرات Debian/Ubuntu والتحقق من إصدار kmodlsb_release — اكتشاف إصدار Ubuntu لتلميح kmodrpm — فحص سجل تغييرات RHEL/Fedorakpatch / canonical-livepatch و/sys/kernel/livepatch/ — اكتشاف التصحيح الحيubuntu-security-status، dnf updateinfo، — أدوات CVE الخاصة بالتوزيعة.
├── copyfail-check.sh
└── README.md
| الخاصية | القيمة |
|---|
| معرّف CVE | CVE-2026-31431 |
| الخطورة | عالية (CVSS 3.1: 7.8) |
| المكوّن | algif_aead — واجهة تشفير AEAD الخاصة بـ AF_ALG في النواة |
| نوع الهجوم | تصعيد صلاحيات محلي؛ هروب من الحاوية (لا يوجد PoC منشور بعد) |
| الأنوية المتأثرة | 4.14 والإصدارات الأحدث (انظر أدناه) |
| تاريخ الإفصاح | 2026-04-29 |
a664bf3d603d| الإصلاح — المستقر 6.18.x | fafe0fa2995a |
| الإصلاح — المستقر 6.19.x | ce42ee423e58 |
| الإصدار | نواة linux | تخفيف kmod (الإصدار المُصلح) |
|---|
| Trusty 14.04 | أنوية 4.15 فقط؛ 3.13 و4.4 غير متأثرتين | 15-0ubuntu7+esm1 |
| Xenial 16.04 | أنوية 4.15 فقط؛ 4.4 غير متأثرة | 22-1ubuntu5.2+esm1 |
| Bionic 18.04 | متأثر | 24-1ubuntu3.5+esm1 |
| Focal 20.04 | متأثر | 27-1ubuntu2.1+esm1 |
| Jammy 22.04 | متأثر | 29-1ubuntu1.1 |
| Noble 24.04 | متأثر | 31+20240202-2ubuntu7.2 |
| Questing 25.10 | متأثر | 34.2-2ubuntu1.1 |
| Resolute 26.04 | غير متأثر | لا حاجة لتحديث |
blacklist/proc/modules (العمود 3)؛ يعلّم أيضًا على مرجع محرك afalg الخاص بـ OpenSSL في /etc/ssl أو /etc/pki/tls| النتيجة | المعنى |
|---|
NOT AFFECTED | النواة تسبق 4.14، أو مُصححة والوحدة غير متاحة |
PATCHED | سجل تغييرات النواة/الأدوات يؤكد وجود الإصلاح |
NOT EXPLOITABLE | الوحدة غير متاحة على هذا النظام |
MITIGATED | الوحدة محظورة عبر modprobe.d؛ النواة لا تزال غير مُصححة — حدّث عند الإمكان |
MITIGATED (REBOOT PENDING) | تم كتابة الحظر لكن الوحدة ما زالت محملة؛ قم بإلغاء التحميل بـ rmmod أو أعد التشغيل |
AFFECTED | النواة في النطاق المعرض للخطر وalgif_aead متاحة |
zypper patch-check