Skip to content
KitploitKITPLOIT
أدواتالمدونة
إرسال
أدواتالمدونة
إرسال

أدوات الاختراق واختبار الاختراق والأمن السيبراني لترسانتك الأمنية!

Kitploit هو دليل لأدوات الاختراق والأمن السيبراني واختبار الاختراق. اكتشف آخر تحديثات المشاريع للعثور على الثغرات وتحليل الأنظمة وأتمتة الاختبارات وتعزيز أمنك.

··الخلاصات·اتصال·الخصوصية·© 2026 Kitploit

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
copyfail-check — نص برمجي شل لاكتشاف التعرض لثغرة CVE-2026-31431 (فشل النسخ) والإجراءات التخفيفية على أنظمة لينكس: فحص النواة، حالة الوحدة، معاملات الإقلاع، إمكانية الوصول إلى AF_ALG، وحالة تصحيح التوزيعة. | Kitploit
أدوات/GitHubGitHub/codesource/copyfail-check
ماسحات الثغرات الأمنيةتحليل الثغرات الأمنيةتدقيق التكوينDevSecOpsالاستجابة للحوادث
GitHubcodesource/copyfail-check

copyfail-check

نص برمجي شل لاكتشاف التعرض لثغرة CVE-2026-31431 (فشل النسخ) والإجراءات التخفيفية على أنظمة لينكس: فحص النواة، حالة الوحدة، معاملات الإقلاع، إمكانية الوصول إلى AF_ALG، وحالة تصحيح التوزيعة.

عرض المستودع
2منذ 3 أشهرلم تتم المراجعة بعد

الأكثر شعبية

عرض الكل →

اكتشف الأدوات الأكثر استخدامًا من قبل مجتمعنا.

استكشف جميع الأدوات

تصفح مجموعتنا من الأدوات

عرض جميع الأدوات →
مشاركة

copyfail-check

سكربتات شل لاكتشاف ثغرات نواة لينكس، والتحقق من حالة التخفيف، وتوجيه المعالجة — مصممة للعمل محليًا أو عبر مجموعات من الخوادم عبر SSH أو Ansible أو pssh.


CVE-2026-31431 — Copy Fail

Copy Fail هي ثغرة تصعيد صلاحيات محلية (LPE) عالية الخطورة في وحدة التشفير algif_aead بنواة لينكس. خلل منطقي أُدخل في عام 2017 يسمح لأي مستخدم محلي غير مميز بكتابة 4 بايتات مُتحكم بها في ذاكرة التخزين المؤقت للصفحات (page cache) لأي ملف قابل للقراءة — وهو ما يكفي لاستبدال ثنائي setuid والحصول على صلاحيات الجذر (root). يوجد إثبات مفهوم (PoC) مكتوب بلغة بايثون بحجم 732 بايت وهو متاح للعموم.

CVECVE-2026-31431
CVSS7.8 (عالية)
تاريخ الإفصاح29 أبريل 2026
الأنظمة المتأثرةنواة لينكس 4.13 – 6.x (2017–2026)
التوزيعاتUbuntu وRHEL وSUSE وDebian وAmazon Linux ومعظم التوزيعات الأخرى
قابلية الاستغلال عن بُعدلا — يتطلب وصولًا محليًا
التصحيح المتاحجزئي — تحقق من نشرات توزيعتك الأمنية

ما يتحقق منه السكربت

الفحصهل يتطلب صلاحيات الجذر؟
إصدار النواة — هل أنت ضمن النطاق المتأثر (≥ 4.13)لا
وحدة algif_aead — محمّلة، موجودة على القرص، أو محظورةلا
معاملات الإقلاع — وجود initcall_blacklist=algif_aead_initلا
إمكانية الوصول إلى مقابس AF_ALG — هل مسار الاستغلال مفتوحلا
حالة SELinuxلا
حالة AppArmorنعم — مخرجات جزئية فقط بدون صلاحيات الجذر
حالة تصحيح التوزيعة — إدراج CVE في سجل تغييرات النواةلا

صلاحيات الجذر غير مطلوبة لتشغيل السكربت — جميع الفحوصات باستثناء حالة AppArmor تعمل كمستخدم عادي. يُنصح بالتشغيل باستخدام sudo للحصول على نتائج كاملة، وهو الخيار الأكثر أمانًا عند الأنابيب من curl.

التوافق

السكربت مصمم للعمل عبر جميع توزيعات لينكس الرئيسية:

عائلة التوزيعةفحص مدير الحزممسار الوحدة
Debian, Ubuntudpkg + سجل تغييرات النواة/lib/modules/
RHEL, CentOS, Amazon Linuxrpm (kernel, kernel-rt)/lib/modules/
SUSE, openSUSErpm (kernel-default)/lib/modules/
Arch Linuxpacman + رابط النشرة الأمنية/usr/lib/modules/
Fedorarpm + مسار احتياطي /usr/lib/modules//usr/lib/modules/

يتطلب bash — يستخدم السكربت صياغة خاصة بـ bash ولن يعمل تحت sh أو ash أو dash. على Alpine Linux (الذي يستخدم busybox ash افتراضيًا)، ثبّت bash أولًا:

root@kitploit:~
apk add bash

تشغيل سريع (خادم واحد)

بدون صلاحيات الجذر — معظم الفحوصات تعمل:

root@kitploit:~
curl -fsSL https://raw.githubusercontent.com/codesource/copyfail-check/main/check_copyfail.sh | bash

مع صلاحيات الجذر — نتائج كاملة بما في ذلك حالة AppArmor:

root@kitploit:~
curl -fsSL https://raw.githubusercontent.com/codesource/copyfail-check/main/check_copyfail.sh | sudo bash

نصيحة: ثبّت السكربت على SHA محدد للالتزام (commit) في بيئة الإنتاج حتى لا يتغير السكربت دون علمك:

root@kitploit:~
curl -fsSL https://raw.githubusercontent.com/codesource/copyfail-check/COMMIT_SHA/check_copyfail.sh | sudo bash

التنزيل والفحص أولًا (موصى به)

root@kitploit:~
curl -fsSL https://raw.githubusercontent.com/codesource/copyfail-check/main/check_copyfail.sh -o check_copyfail.sh
less check_copyfail.sh
bash check_copyfail.sh        # بدون صلاحيات الجذر
sudo bash check_copyfail.sh   # نتائج كاملة

التشغيل عبر مجموعة من الخوادم

حلقة SSH

root@kitploit:~
for HOST in server1 server2 server3; do
  echo "=== $HOST ==="
  ssh "$HOST" "curl -fsSL https://raw.githubusercontent.com/codesource/copyfail-check/main/check_copyfail.sh | sudo bash"
done

Ansible

root@kitploit:~
- name: Check Copy Fail vulnerability
  hosts: all
  tasks:
    - name: Run check script
      script: check_copyfail.sh
      become: yes

SSH متوازي

root@kitploit:~
pssh -h hosts.txt -i \
  "curl -fsSL https://raw.githubusercontent.com/codesource/copyfail-check/main/check_copyfail.sh | sudo bash"

مثال على المخرجات

root@kitploit:~
============================================================
  Copy Fail CVE-2026-31431 – Vulnerability Check
============================================================

>>> Kernel Version
  [INFO]  Running kernel: 5.15.0-107-generic
  [WARN]  Kernel 5.15.0-107-generic is in the affected range (4.13 – 6.x).

>>> algif_aead Module Status
  [WARN]  algif_aead module is currently LOADED — system is exploitable.
  [WARN]  Module file found at: /lib/modules/5.15.0-107-generic/kernel/crypto/algif_aead.ko
  [WARN]  algif_aead is NOT blacklisted — it can be loaded on demand.

>>> Kernel Boot Parameter Mitigation
  [WARN]  initcall_blacklist=algif_aead_init is NOT set in boot parameters.

>>> AF_ALG Socket Reachability
  [WARN]  AF_ALG sockets are reachable by this user — exploit path is open.

>>> Mandatory Access Control (SELinux / AppArmor)
  [WARN]  Neither SELinux nor AppArmor tools detected — no MAC layer present.

>>> Distribution Patch Status
  [WARN]  Could not confirm CVE-2026-31431 is listed as fixed in running kernel's changelog.

============================================================
  SUMMARY
============================================================
  !! LIKELY VULNERABLE — No confirmed mitigation detected.

  Recommended actions (in order of preference):
  1. Apply your distro's kernel update as soon as available.
  2. Add to /etc/modprobe.d/copyfail.conf:
       blacklist algif_aead
       install algif_aead /bin/true
     Then run: sudo depmod -a && sudo update-initramfs -u
  3. Add to kernel boot parameters (grub):
       initcall_blacklist=algif_aead_init
  4. Immediately unload the module if loaded:
       sudo rmmod algif_aead
============================================================

إجراءات التخفيف

طبّق هذه الإجراءات حسب ترتيب الأفضلية:

1. تحديث النواة (أفضل حل)

root@kitploit:~
# Debian / Ubuntu
sudo apt update && sudo apt upgrade linux-image-$(uname -r)

# RHEL / CentOS / Amazon Linux
sudo yum update kernel

# SUSE
sudo zypper update kernel-default

2. حظر الوحدة (فوري ودائم)

root@kitploit:~
sudo tee /etc/modprobe.d/copyfail.conf << 'EOF'
blacklist algif_aead
install algif_aead /bin/true
EOF

sudo depmod -a

# Debian/Ubuntu
sudo update-initramfs -u

# RHEL/Fedora
sudo dracut -f

3. إلغاء تحميل الوحدة الآن (فوري، غير دائم عبر عمليات إعادة التشغيل)

root@kitploit:~
sudo rmmod algif_aead

4. معامل إقلاع النواة (بديل عن الحظر)

أضف initcall_blacklist=algif_aead_init إلى إعدادات GRUB وأعد التشغيل.


المراجع

  • copy.fail — الصفحة الرسمية للثغرة
  • Xint/Theori writeup
  • NVD — CVE-2026-31431
  • CERT-EU Advisory 2026-005
  • Microsoft Security Blog
  • The Hacker News

الترخيص

MIT — استخدم بحرية، دون أي ضمان. راجع دائمًا السكربتات قبل تشغيلها بصلاحيات الجذر.

تنزيل الأداة