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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
CTF-CVE-2022-0847 | Kitploit
أدوات/GitHubGitHub/justinye377/ctf-cve-2022-0847
تصعيد الامتيازاتالاستغلالCTFالتعلم والتعليماستغلال الملفات الثنائيةمختبرات وتدريب عملي
GitHubjustinye377/ctf-cve-2022-0847

CTF-CVE-2022-0847

عرض المستودع
1منذ سنة واحدةلم تتم المراجعة بعد

الأكثر شعبية

عرض الكل →

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

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

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

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

نشر Dirty Pipe

لهذا التحدي، تريد الكتابة فوق الملف "cat.txt" للقراءة فقط باستخدام استغلال CVE-2022-0847 هناك طرق عديدة للقيام بذلك باستخدام الاستغلال

المتطلبات

  • إصدار نواة لينكس 5.8 أو أحدث (قابل للاستغلال)
  • gcc (مجموعة مترجمات GNU) لتجميع كود الاستغلال

الإعداد لأول مرة

  1. إعداد بيئة قابلة للاستغلال:
  • لمستخدمي لينكس:
    • استخدم توزيعة لينكس بإصدار نواة 5.8 أو أحدث، ولكن أقل من الإصدارات المُصححة:
    • الإصدارات المُصححة تشمل 5.16.11 و5.15.25 و5.10.102.
    • تحقق من إصدار النواة على نظامك عن طريق تشغيل: uname -r
    • إذا كانت نواتك مُصححة بالفعل، فقد تحتاج إلى تخفيض إصدارها أو استخدام تثبيت لينكس مختلف لمطابقة معايير الثغرة.
  • لمستخدمي ويندوز:
    • ثبّت آلة افتراضية:
      • قم بتنزيل وتثبيت آلة افتراضية مثل Oracle VM VirtualBox أو VMware.
    • حمّل توزيعة لينكس قابلة للاستغلال:
      • قم بزيارة أرشيفات Kali Linux لتنزيل إصدار أقدم من Kali Linux.
      • الإصدارات المقترحة تتضمن أي إصدار بنواة 5.8 - 5.15 (مثل Kali 2021.1).
    • بدلاً من ذلك، يمكن استخدام توزيعات لينكس أخرى بإصدارات نواة مطابقة (مثل الإصدارات الأقدم من Ubuntu أو Debian).
  • إعداد الجهاز الافتراضي:
    • أنشئ آلة افتراضية جديدة في VirtualBox:
    • خصص على الأقل 2 جيجابايت من ذاكرة الوصول العشوائي و10 جيجابايت من مساحة القرص.
    • استخدم ملف ISO الذي تم تنزيله لتثبيت توزيعة لينكس.
    • بعد التثبيت، تأكد من إصدار النواة عن طريق تشغيل: uname -r
  • تثبيت الأدوات المطلوبة:
    • بعد إعداد البيئة، تأكد من تثبيت الأدوات التالية:
      • gcc: مطلوب لتجميع كود الاستغلال.
      • make: لبناء المشاريع إذا لزم الأمر.
    • حدّث مدير الحزم لديك وثبّت الأدوات: sudo apt update sudo apt install gcc make -y

بدء التحدي

  1. البدء: تأكد من التحقق من إصدار النواة! باستخدام رابط GitHub هذا (https://github.com/basharkey/CVE-2022-0847-dirty-pipe-checker.git)

تحقق من أن الملف cat.txt للقراءة فقط

القيود هي: يجب أن تكون لدى المهاجم صلاحيات قراءة (لأنه يحتاج إلى استدعاء splice() لنقل صفحة إلى أنبوب) يجب ألا تكون الإزاحة على حد صفحة (لأنه يجب أن يتم تمرير بايت واحد على الأقل من تلك الصفحة إلى الأنبوب) لا يمكن للكتابة أن تعبر حد صفحة (لأنه سيتم إنشاء مخزن مؤقت مجهول جديد للباقي) لا يمكن تغيير حجم الملف (لأن الأنبوب لديه إدارة تعبئة صفحات خاصة به ولا يخبر ذاكرة التخزين المؤقت للصفحات بكمية البيانات المضافة)

  1. نشر الاستغلال:
  • أنشئ أنبوبًا.

  • املأ الأنبوب ببيانات عشوائية (لتعيين علامة PIPE_BUF_FLAG_CAN_MERGE في جميع إدخالات الحلقة).

  • أفرغ الأنبوب (مع ترك العلامة مضبوطة في جميع مثيلات struct pipe_buffer على حلقة struct pipe_inode_info).

  • مرّر البيانات من الملف الهدف (المفتوح بـ O_RDONLY) إلى الأنبوب من قبل الإزاحة الهدف مباشرة.

  • اكتب بيانات عشوائية في الأنبوب؛ ستقوم هذه البيانات بالكتابة فوق صفحة الملف المخزنة مؤقتًا بدلاً من إنشاء struct pipe_buffer مجهول جديد لأن PIPE_BUF_FLAG_CAN_MERGE مضبوطة.

  • استبدل محتوى الملف cat.txt، غيّر I'm a cat 1444 إلى I'm a dog 2025

  • استخدم check_cat.sh للتحقق مما إذا كان يعمل أم لا chmod +x check_cat.sh ./check_cat.sh

إعادة توليد التحدي

استخدم ما يلي chmod +x cat_generate.sh ./cat_generate.sh

نشر التحدي

التلميحات موجودة في hints.txt

تنزيل الأداة