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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
copy-fail-cve-2026-31431 — # ماسح مضيفات Linux سلبي يصنّف التعرض لثغرة CVE-2026-31431 عبر إصدار النواة، وسجل تغييرات التوزيعة، وحالة الوحدات، وإمكانية الوصول إلى AF_ALG، مع مخرجات JSON للتكامل مع SIEM. | Kitploit
أدوات/GitHubGitHub/effiesec/copy-fail-cve-2026-31431
ماسحات الثغرات الأمنيةتحليل الثغرات الأمنيةتدقيق التكوين
GitHubeffiesec/copy-fail-cve-2026-31431

copy-fail-cve-2026-31431

# ماسح مضيفات Linux سلبي يصنّف التعرض لثغرة CVE-2026-31431 عبر إصدار النواة، وسجل تغييرات التوزيعة، وحالة الوحدات، وإمكانية الوصول إلى AF_ALG، مع مخرجات JSON للتكامل مع SIEM.

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

الأكثر شعبية

عرض الكل →

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

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

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

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

أداة فحص CVE لخطأ النسخ (CVE-2026-31431)

المؤلفون/المساهمون: باتريك دويل (مؤلف/مشرف)، إيفي رينارد (مؤلف مشارك)، كيمبرلي-لي بانكس (مؤلف مشارك)، كريس إف (دعم/مراجعة الكود)

إفصاح الذكاء الاصطناعي: تم استخدام Claude Code لكتابة ملفات الاختبار، وكتابة بيانات الاختبار، وإجراء مراجعة أمنية للكود. تمت مراجعة جميع التعديلات يدويًا من قبل أحد المساهمين.

الوصف

ملف ثنائي واحد بلغة Go مرتبط بشكل ثابت يصنف تعرض مضيف Linux لـ CVE-2026-31431.

الأداة سلبية. لا تستغل الثغرة. يصدر فحص الآلية (انظر بيان السلامة أدناه) استدعاءين للنظام بالضبط ولا يلمس مسار الكود الضعيف أبدًا.


ما الذي تفحصه

الإشارةالمصدرالعلامة
إصدار النواة مقابل الإصلاح من المصدرuname(2)--kernel-version
ذكر سجل تغييرات التوزيعة للـ CVEapt/rpm/apk أو changelog.Debian.gz على القرص--changelog
حالة وحدة algif_aead/proc/modules, modprobe.d, /lib/modules--module
إمكانية الوصول إلى السطح الضعيفsocket(AF_ALG) + bind(authencesn(...))--mechanism
مدمج في vmlinux/boot/config-$(uname -r) أو /proc/config.gz(جزء من --module)

إذا لم يتم إعطاء أي علامات فحص، يتم تشغيل جميع الفحوصات الأربعة.


أوضاع الإخراج

الوضعالمحفزحالة الاستخدام
منسق بشكل جميل (افتراضي)إخراج TTY، بدون تجاوز --format، بدون متغير بيئة NO_COLORتشغيلات الصدفة التفاعلية
نص عاديإخراج غير TTY، أو --format=text، أو NO_COLOR=1، أو --no-colorسكربتات الصدفة، الأنابيب
JSON--format=jsonإدخال Syslog/SIEM، سكربتات الصدفة
هادئ--quietرمز الخروج فقط (الأتمتة/السكربتات)

فرض الوضع الجميل عند الأنابيب: cvecheck --pretty | tee report.txt. فرض النص العادي في TTY: cvecheck --no-color أو NO_COLOR=1 cvecheck.


بيان السلامة (فحص الآلية)

يصدر الفحص استدعاءين للنظام بالضبط socket(AF_ALG, SOCK_SEQPACKET, 0)، وbind(fd, &SockaddrALG{Type:"aead", Name:"authencesn(hmac(sha256), cbc(aes))"}). ثم يتبعه close(fd). لا يقوم بـ أي setsockopt لمفتاح، ولا accept، ولا sendmsg، ولا splice، ولا إنشاء أنابيب. يتطلب مسار الكود الضعيف sendmsg لبيانات التشفير مقترنًا بـ splice من واصف ملف مدعوم بذاكرة تخزين مؤقت للصفحات؛ لا يحدث أي من هذه العمليات، لذا لا يمكن للثغرة أن تتحرك.

الفحص الناجح يعني أن السطح قابل للوصول. ما إذا كانت النواة لا تزال تحتوي على الثغرة يتم تحديده بواسطة إشارات إصدار النواة + سجل التغييرات.

تأثير جانبي: bind ناجح يقوم بتحميل تلقائي لـ algif_aead عبر محمل وحدات النواة. يتم تشغيل فحص الوحدة قبل فحص الآلية بحيث يكون تقرير حالة التحميل قبل الفحص. لقمع التحميل التلقائي تمامًا، قم بحظر algif_aead أولاً.


رموز الخروج

الرمزالمعنى
0PATCHED / NOT_VULNERABLE / MITIGATED / LIKELY_NOT_EXPLOITABLE
2VULNERABLE أو MECHANISM_REACHABLE (فحص جزئي، لم يتم فحص إصدار النواة)
3INCONCLUSIVE (إشارات غير كافية)

تغطية التوزيعات

التوزيعةالاكتشافحزمة النواةملاحظات
Ubuntu / Debian / Mint / Pop!_OSaptlinux-image-$(uname -r)قراءة سجل التغييرات من القرص أولاً تتجنب هشاشة شبكة apt changelog على النوى الموقعة
RHEL / CentOS / Rocky / Alma / Fedora / Amazon Linuxrpmkernelيشحن algif_aead مدمجًا (CONFIG_..._AEAD=y)؛ تخفيف الحظر غير فعال
Oracle Linuxrpmkernel أو kernel-uekيتم اكتشاف UEK عبر سلسلة uek الفرعية في uname -r
openSUSE / SLESrpmkernel-default
Alpineapklinux-lts / linux-virt / إلخ.يتم اختيار النكهة من لاحقة الإصدار
Arch / CachyOS / Manjaro / Endeavour / Gentooلا يوجدغير متاحمتداول/مصدر: يعتمد على فحص إصدار النواة

النشر

التثبيت التلقائي

يكتشف تلقائيًا بنية جهازك، وينزّل الملف الثنائي الصحيح في $(pwd)، ويتحقق من SHA-256 الخاص به مقابل SHA256SUMS المنشور:

root@kitploit:~
curl -fsSL https://copyfail.pcdoyle.dev/install.sh | sh

يخرج السكربت برمز غير صفري عند عدم تطابق المجموع الاختباري ويزيل الملف التالف.

تنزيل الملف الثنائي (يدوي)

اختر الملف الثنائي لبنية مضيفك:

البنيةالملف الثنائي
Intel/AMD 64-bit (x86_64)cvecheck-linux-x86_64
ARM 64-bit (aarch64)cvecheck-linux-arm64
Intel/AMD 32-bit (i?86)cvecheck-linux-x86

تحقق قبل التشغيل:

root@kitploit:~
curl -LO https://github.com/pcdoyle/copy-fail-cve-2026-31431/releases/latest/download/cvecheck-linux-x86_64
curl -LO https://github.com/pcdoyle/copy-fail-cve-2026-31431/releases/latest/download/SHA256SUMS
sha256sum --ignore-missing -c SHA256SUMS
chmod +x cvecheck-linux-x86_64

البناء من المصدر

root@kitploit:~
make build  # bin/cvecheck-linux-{x86_64,arm64,x86}
# SCP(SFTP) إلى الخادم:
scp ./bin/cvecheck-linux-x86_64 host:/tmp/  # أقل من 4 ميجابايت، ثابت، بدون اعتماد على glibc

تشغيل البرنامج

SSH إلى المضيف

root@kitploit:~
# SSH:
ssh <host>
# تشغيل الملف الثنائي:
/tmp/cvecheck-linux-x86_64  # إخراج جميل سهل القراءة للبشر.
/tmp/cvecheck-linux-x86_64 --format=json # مناسب للسكربتات وSyslog وSIEM
/tmp/cvecheck-linux-x86_64 --format=text # مناسب للسكربتات والأنابيب

التشغيل كأمر عن بُعد عبر SSH

root@kitploit:~
ssh <host> /tmp/cvecheck-linux-x86_64   # إذا تم تشغيله مباشرة، الافتراضي هو --format=text
ssh <host> /tmp/cvecheck-linux-x86_64 --format=json # مناسب لـ Syslog/SIEM

للحاويات/Chroot:

قم بتركيب جذر المضيف في مكان قابل للقراءة ومرر --root:

root@kitploit:~
docker run --rm -v /:/host:ro alpine /tmp/cvecheck --root /<host-path>

يتحكم --root في جميع عمليات البحث على القرص (/etc/os-release, modprobe.d, /lib/modules, /boot/config-*, ملفات سجل التغييرات). لا تزال فحوصات إصدار النواة والآلية تلمس النواة قيد التشغيل عبر uname(2) وsocket(AF_ALG, ...).


سلم الأولوية

يتم حلها بهذا الترتيب (أول تطابق يفوز):

  1. PATCHED: سجل تغييرات التوزيعة يشير إلى معرّف CVE.
  2. NOT_VULNERABLE: النواة قيد التشغيل >= الإصدار المُصلح من المصدر.
  3. MITIGATED: algif_aead محظور و غير محمّل و غير مدمج في vmlinux.
  4. LIKELY_NOT_EXPLOITABLE: AF_ALG غير متاح والوحدة غير موجودة على القرص.
  5. MECHANISM_REACHABLE: السطح قابل للوصول ولكن لم يتم فحص إصدار النواة.
  6. VULNERABLE: النواة في نطاق الثغرة والآلية قابلة للوصول.
  7. INCONCLUSIVE: لا شيء مما سبق يطابق.

إذا تم تشغيل --mechanism جنبًا إلى جنب مع --kernel-version وكلاهما يشير إلى مشكلة، تكون النتيجة VULNERABLE مع تلميح معالجة.


تلميحات المعالجة

  • توزيعات الوحدات القابلة للتحميل (Debian, Ubuntu, SUSE, Alpine, Arch): قم بحظر algif_aead حتى وصول ترقية النواة.
    root@kitploit:~
    echo 'blacklist algif_aead' | sudo tee /etc/modprobe.d/cve-2026-31431.conf
    sudo rmmod algif_aead 2>/dev/null
    
  • التوزيعات ذات البناء المدمج (RHEL, CentOS, Rocky, Alma, Oracle, Amazon): ملفات الحظر غير فعالة لأن CONFIG_CRYPTO_USER_API_AEAD=y يضع الرمز داخل vmlinux. فقط ترقية النواة (أو تصحيح حي بنمط kpatch) يحل التعرض. تكتشف الأداة ذلك.

استكشاف الأخطاء وإصلاحها

العرضالسببالإصلاح
changelog: error="apt: exit status 100 ... Changelog unavailable for linux-signed-amd64"نواة موقعة من Debian/Ubuntu؛ مرآة apt لا تقدم سجل تغييرات حزمة المصدريظهر الخطأ فقط عندما يكون الملف على القرص مفقودًا بالإضافة إلى عدم إمكانية الوصول إلى المرآة، قم بتثبيت apt-doc أو انتظر المرآة.
module: ... config_src=""لا يوجد تكوين نواة قابل للقراءة (لا يوجد /boot/config-*، ولا /proc/config.gz، /boot للجذر فقط)قم بالتشغيل كجذر، أو اقبل أنه لا يمكن تحديد BuiltIn. قد يظل الحكم يُحسم عبر إشارات أخرى.
mechanism: error="EAFNOSUPPORT"نواة مبنية بدون CONFIG_CRYPTO_USER_API، لذا المضيف غير معرض عبر AF_ALGسيكون الحكم LIKELY_NOT_EXPLOITABLE.

المصادر

  • قاعدة بيانات NIST للـ CVE
  • الموقع الرسمي لـ Copy.Fail
  • الشرح الفني الرسمي
  • نشرة oss-security
  • شرح Theori
  • ملخص Bugcrowd
تنزيل الأداة