
إثبات مفهوم لاستغلال ثغرة CVE-2022-22965 (Spring4Shell) في بيئة معزولة، مع عرض تنفيذ التعليمات البرمجية عن بُعد (RCE).
إثبات مفهوم (PoC) معزول بالكامل داخل حاويات، يوضح استغلال Spring4Shell (CVE-2022-22965)، والذي يؤدي إلى تنفيذ الأكواد عن بُعد (RCE) ضد تطبيق هشّ مبني على إطار عمل Spring Framework ومُستضاف على Apache Tomcat.
يعيد المشروع إنشاء البيئة الهشّة بالكامل بهدف تسهيل البحث الأمني، وممارسة اختبار الاختراق، وتحليل الثغرات، والتعلّم الدفاعي في مختبر آمن وقابل لإعادة الإنتاج.
إخلاء مسؤولية
يُقدَّم هذا المستودع لأغراض تعليمية وبحثية واختبارات أمنية مصرّح بها فقط. البيئة الهشّة هنا غير آمنة عمدًا ويجب تشغيلها حصريًا في ظروف مختبرية معزولة. لا يتحمل المؤلف أي مسؤولية عن إساءة الاستخدام أو أي ضرر ناتج عن استخدام هذا المشروع.
Spring4Shell (CVE-2022-22965) هي ثغرة حرجة في تنفيذ الأكواد عن بُعد تؤثر على إصدارات محددة من إطار عمل Spring Framework عند نشرها على Apache Tomcat في ظل ظروف تشغيل معينة.
يوفر هذا المستودع بيئة مختبرية قابلة لإعادة الإنتاج بالكامل، تتيح للباحثين والطلاب فهم:
التطبيق معزول تمامًا داخل حاوية Docker، مما يسمح بالتجريب دون التأثير على نظام التشغيل المضيف.
| المكوّن | الإصدار | الوصف |
|---|---|---|
| Spring Boot | 2.6.2 | تطبيق هشّ قابل للاستغلال |
| Spring Framework | 5.3.14 | إصدار هشّ |
| Apache Tomcat | 9.0.60 | حاوية Servlet |
| Java | JDK 11 | بيئة التشغيل المطلوبة |
| نظام التشغيل | Ubuntu 24.04 | حاوية Docker |
.
├── Dockerfile
├── pom.xml
├── src/
│ ├── main/
│ └── test/
├── README.md
└── exploit/
git clone https://github.com/<username>/<repository>.git
cd <repository>
docker build -t spring4shell:2.6.2 .
docker run -p 8080:8080 spring4shell:2.6.2
سيكون التطبيق متاحًا على:
http://localhost:8080
يوضح المستودع سلسلة الهجوم الكاملة:
يغطي هذا المشروع العديد من مفاهيم الأمن الهجومي المهمة:
للتخفيف من CVE-2022-22965:
⭐ إذا وجدت هذا المشروع مفيدًا للتعلّم أو البحث الأمني، ففكر في منحه نجمة ⭐