
استغلال لـ CVE-2025-32429 – SQLi في واجهة REST API لـ XWiki (getdeleteddocuments.vm).
المؤلف: Byte Reaper
تيليجرام: @ByteReaper0
CVE: CVE‑2025‑32429
الثغرة: حقن SQL أعمى في واجهة XWiki LiveData REST
الملف المتأثر: getdeleteddocuments.vm (وسيط sort)
توجد ثغرة حقن SQL أعمى في نقطة نهاية LiveData REST لمنصة XWiki عند استخدام وسيط sort في getdeleteddocuments.vm. يمكن للمهاجم حقن أجزاء SQL عشوائية، مستفيداً من حمولات تعتمد على الوقت (SLEEP) أو استعلامات UNION لاستخراج محتويات قاعدة البيانات.
يقدم هذا المستودع إثبات مفهوم مكتوب بلغة C يقوم بما يلي:
الترجمة:
gcc -o exploit exploit.c argparse.c -lcurl
./exploit -u <BASE_URL> [-c cookies.txt] [-v]
-u, --url : رابط القاعدة لنسخة XWiki المستهدفة
-c, --cookies : (اختياري) مسار ملف الكوكيز للجلسات الموثقة
-v, --verbose : تفعيل إخراج التصحيح المفصل
أمثلة:
اختبار غير موثق ضد نسخة عامة
./exploit -u http://victim.com
استخدام الكوكيز لسياق موثق
./exploit -u https://intranet.xwiki.local -c session.txt -v
كشف WAF
يرسل حمولة غير ضارة مع User-Agent: sqlmap
يتحقق من رموز HTTP المانعة (403/404/503)، أو إعادة توجيه غير طبيعية، أو تأخيرات زمنية، أو كلمات دالة في الرد، أو قطع الاتصال
حلقة الاستغلال
يتكرر عبر حمولات SQL محددة مسبقاً: فحوص منطقية، حقن SLEEP()، استعلامات UNION
يقيس زمن الطلب الكلي (CURLINFO_TOTAL_TIME) لاكتشاف الحقن المعتمد على الوقت
يبحث في جسم الرد عن كلمات SQL (select, union, إلخ) لتأكيد نجاح الحقن
قم بترقية XWiki إلى إصدار يقوم فيه getdeleteddocuments.vm بتعقيم وسيط sort بشكل صحيح.
طبق استعلامات معلمة أو قائمة بيضاء لحقول sort المسموح بها.
انشر WAF أو طبقة للتحقق من المدخلات تقوم بتطبيع ورفض الأحرف SQL غير المتوقعة في الوسائط.
MIT