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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
CVE-2015-1328 — إثبات المفهوم (PoC) لاستغلال CVE-2015-1328 | Kitploit
أدوات/GitHubGitHub/0xf1d0/cve-2015-1328
تصعيد الامتيازاتتحليل الثغرات الأمنيةالاستغلالاختبار الاختراقالتعلم والتعليماستغلال الملفات الثنائية
GitHub0xf1d0/cve-2015-1328

CVE-2015-1328

إثبات المفهوم (PoC) لاستغلال CVE-2015-1328

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

الأكثر شعبية

عرض الكل →

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

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

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

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

CVE-2015-1328 إثبات المفهوم

استغلال إثبات المفهوم (PoC) لثغرة CVE-2015-1328، وهي ثغرة تصعيد صلاحيات تؤثر على تنفيذ overlayfs في نواة لينكس. تسمح هذه الثغرة للمستخدمين المحليين غير المتميزين بالحصول على وصول root من خلال استغلال فحوصات صلاحيات غير سليمة في عمليات تثبيت overlayfs داخل مساحات المستخدمين.

نظرة عامة

CVE-2015-1328 هي ثغرة أمنية حرجة تؤثر على نواة لينكس مع دعم overlayfs ومساحات المستخدمين الممكنة. تسمح الثغرة لمستخدم محلي غير متميز بما يلي:

  1. إنشاء مساحة مستخدم جديدة باستخدام unshare(CLONE_NEWUSER)
  2. تثبيت أنظمة ملفات overlayfs داخل المساحة
  3. استغلال عيوب فحص الصلاحيات للكتابة إلى /etc/ld.so.preload
  4. تنفيذ مكتبة مشتركة خبيثة للحصول على صلاحيات root

يوضح هذا الإثبات الثغرة عن طريق:

  • استخدام عزلة المساحة لتجاوز قيود التثبيت
  • تثبيت overlayfs للتلاعب بملفات النظام
  • حقن مكتبة مشتركة مخصصة عبر /etc/ld.so.preload
  • اختطاف getuid() لتنفيذ قشرة root

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

  • Ubuntu 14.04 LTS مع إصدارات نواة أقدم من 3.19.0-21.21
  • أنظمة تحتوي على:
    • مساحات المستخدمين مفعلة (kernel.unprivileged_userns_clone=1)
    • دعم نظام ملفات overlayfs
    • إصدارات نواة غير مصححة

المتطلبات

  • مترجم GCC مع دعم 32-bit
  • نواة لينكس مع دعم مساحات المستخدمين و overlayfs
  • مكتبات النظام المناسبة (دعم العلم -m32)

البناء

يتضمن المشروع Makefile لسهولة الترجمة:

root@kitploit:~
make

سيؤدي هذا إلى ترجمة:

  • ofs - الملف الثنائي الرئيسي للاستغلال (ثابت 32-bit)
  • ofs-lib.so - المكتبة المشتركة لخطاف LD_PRELOAD (32-bit)

الترجمة اليدوية

إذا كنت تفضل الترجمة يدويًا:

root@kitploit:~
# ترجمة الاستغلال الرئيسي
gcc -o ofs ofs.c -m32 -static

# ترجمة المكتبة المشتركة
gcc -m32 -fPIC -shared -o ofs-lib.so ofs-lib.c -ldl -static-libgcc

الاستخدام

⚠️ تحذير: سيقوم هذا الاستغلال بتعديل ملفات النظام ومحاولة الحصول على صلاحيات root. استخدمه فقط في بيئات خاضعة للسيطرة وبإذن مناسب.

  1. قم بترجمة الاستغلال:

    root@kitploit:~
    make
    
  2. قم بتشغيل الاستغلال:

    root@kitploit:~
    ./ofs
    
  3. إذا نجح، سيقوم الاستغلال بما يلي:

    • إنشاء هياكل مساحة ضرورية
    • تثبيت أنظمة ملفات overlayfs
    • الكتابة إلى /etc/ld.so.preload
    • تنفيذ /bin/su الذي يقوم بتشغيل المكتبة الخبيثة
    • إطلاق قشرة root

كيف يعمل

تدفق الاستغلال

  1. إنشاء المساحة: يقوم الاستغلال بإنشاء مساحة مستخدم جديدة باستخدام unshare(CLONE_NEWUSER)
  2. مساحة التثبيت: ينشئ مساحة تثبيت باستخدام clone() مع CLONE_NEWNS
  3. تثبيت overlayfs: يقوم بتثبيت أنظمة ملفات overlayfs للتلاعب بأدلة النظام
  4. التلاعب بالملفات: يستخدم overlayfs لإعادة تسمية الملفات والكتابة إلى /etc/ld.so.preload
  5. حقن المكتبة: يكتب مكتبة مشتركة خبيثة إلى /tmp/ofs-lib.so
  6. تصعيد الصلاحيات: ينفذ /bin/su، مما يؤدي إلى تشغيل المكتبة المحملة مسبقًا
  7. قشرة root: تقوم المكتبة باختطاف getuid() وإطلاق قشرة root

التفاصيل الفنية

  • يستخدم الاستغلال clone() مع كومة مخصصة لإنشاء مساحات تثبيت معزولة
  • تسمح تثبيتات overlayfs بالتلاعب بالملفات داخل المساحة مما يؤثر على المضيف
  • تقوم المكتبة المشتركة (ofs-lib.so) بربط getuid() عبر LD_PRELOAD
  • عندما يستدعي /bin/su دالة getuid()، يتم تنفيذ الدالة الخبيثة بدلاً من ذلك

هيكل الكود

root@kitploit:~
.
├── ofs.c          # كود الاستغلال الرئيسي
├── ofs-lib.c      # المكتبة المشتركة لتصعيد الصلاحيات
├── lib_so.h       # بيانات المكتبة الثنائية المضمنة
├── Makefile       # إعدادات البناء
└── README.md      # هذا الملف

الملفات الرئيسية

  • ofs.c: يحتوي على منطق الاستغلال الرئيسي، إنشاء المساحة، وعمليات التثبيت
  • ofs-lib.c: ينفذ خطاف getuid() الذي يطلق قشرة root
  • lib_so.h: يحتوي على المكتبة المشتركة المترجمة كمصفوفة ثنائية (للتضمين)

التخفيف

للحماية من هذه الثغرة:

  1. تحديث النواة إلى إصدار مصحح (3.19.0-21.21 أو أحدث لـ Ubuntu 14.04)
  2. تعطيل مساحات المستخدمين إذا لم تكن مطلوبة:
    root@kitploit:~
    echo 0 > /proc/sys/kernel/unprivileged_userns_clone
    
  3. استخدام AppArmor/SELinux لتقييد قدرات إنشاء المساحات
  4. مراقبة سجلات النظام للكشف عن عمليات تثبيت مشبوهة

إخلاء المسؤولية القانوني والأخلاقي

يتم توفير هذا الرمز لأغراض تعليمية وبحثية أمنية فقط.

  • الاستخدام غير المصرح به لهذا الاستغلال ضد أنظمة دون إذن صريح غير قانوني
  • هذا الإثبات مخصص لـ:
    • باحثي الأمن الذين يدرسون ثغرات النواة
    • مسؤولي النظام الذين يختبرون مرونة أنظمتهم
    • أغراض تعليمية في بيئات خاضعة للسيطرة
  • المؤلفون غير مسؤولين عن أي إساءة استخدام لهذا الرمز
  • تأكد دائمًا من الحصول على إذن مناسب قبل الاختبار على أي نظام

المراجع

  • CVE-2015-1328
  • إعلان أمني من Ubuntu
  • تعديل Git من Kernel.org
  • إعلان Cloud Foundry
  • مؤلف Exploit DB: rebel

الترخيص

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

تنزيل الأداة