
مستودع تعليمي لتعلّم CVE-2025-55182: ثغرة تنفيذ تعليمات برمجية عن بُعد (RCE) قبل المصادقة في مكونات خادم React. يتضمن توثيقًا خطوة بخطوة، وتمارين عملية، وإثبات مفهوم للاستغلال في تطبيق Next.js ضعيف يعمل داخل Docker.
مستودع لتعلّم ثغرة Remote Code Execution (RCE) في React Server Components.
للاستخدام التعليمي فقط. يُعد استخدامه ضد أنظمة الآخرين دون إذن أمرًا غير قانوني.
| العنصر | المحتوى |
|---|---|
| CVE ID | CVE-2025-55182 |
| النوع | Pre-authentication Remote Code Execution (RCE) |
| CWE | CWE-502: Deserialization of Untrusted Data |
| CVSS | 10.0 (Critical) |
| التأثير | React 19.0.0 - 19.2.2 |
.
├── docs/ # 📚 مستندات التعلّم (Step 1-4)
├── exercises/ # 🧪 سكريبتات التمارين
├── exploit/ # 💀 سكريبتات PoC
└── vulnerable-app/ # 🎯 تطبيق Next.js الضعيف
cd vulnerable-app
docker compose up --build -d
cd exploit
pip install -r requirements.txt
python3 poc.py http://localhost:3000 "id"
uid=0(root) gid=0(root) groups=0(root)...
🎉 نجاح RCE!
توجد مستندات لفهم الثغرة بشكل تدريجي:
| الخطوة | الموضوع | الملف |
|---|---|---|
| 1 | أساسيات Prototype Pollution | docs/01_prototype_pollution_basics.md |
| 2 | Constructor Chain و RCE | docs/02_constructor_chain.md |
| 3 | بروتوكول React Flight | docs/03_react_flight_protocol.md |
| 4 | الصورة الكاملة للثغرة والإصلاح | docs/04_vulnerability_summary.md |
# الخطوة 1: جرّب Prototype Pollution
node exercises/01_prototype_pollution.js
# الخطوة 2: افهم Constructor Chain
node exercises/02_constructor_chain.js
# الخطوة 3: محاكاة حلّ المراجع
node exercises/03_reference_resolution.js
# الخطوة 4: التحليل الكامل للحمولة
node exercises/04_full_exploit_analysis.js
# حدّث React إلى أحدث إصدار
npm install react@latest react-dom@latest
الإصدارات المُصحَّحة: 19.0.3+, 19.1.4+, 19.2.3+