
تم تعديل الاستغلال ليعمل مع ترميزات نصية مختلفة ومع Python 3، وهو متوافق مع CMSMS الإصدار 2.2.9 وما دونه.
يحتوي هذا المستودع على إكسبلويت لثغرة CVE-2019-9053 المكتشفة في برنامج CMS Made Simple (CMSMS). تم تعديل الإكسبلويت ليعمل مع بايثون 3 وهو متوافق مع إصدار CMSMS 2.2.9 وما دون.
CVE-2019-9053 هي ثغرة SQLi عمياء قائمة على الزمن (Time-Based Blind SQLi) تتيح للمهاجم تعداد قاعدة البيانات واستخراج المعلومات عبر مراقبة التأخير في استجابات التطبيق. تكون الثغرة موجودة في إصدارات CMSMS التي تساوي 2.2.9 أو أقل.
صُمم السكربت البرمجي المرفق لاستخراج البيانات من قاعدة البيانات، ثم اختياريًا كسر الهاشات المستخرجة باستخدام قائمة كلمات مقدمة وترميزات مختلفة. يحاول فتح ملف قائمة الكلمات المحدد باستخدام ترميزات متعددة ويتحقق مما إذا كان هاش MD5 المحسوب لكلمة المرور المرمزة يطابق كلمة المرور الهدف.
تم تعديل الكود ليعمل مع بايثون 3 ويتضمن دعمًا لأنواع مختلفة من الترميزات. يستخدم مكتبة hashlib لحساب هاشات MD5 وينفذ عمليات معالجة النصوص اللازمة للتعامل مع عمليات الترميز وفك الترميز.
Usage: exploit.py [options]
Options:
-h, --help show this help message and exit
-u URL, --url=URL Base target uri (ex. http://10.10.10.100/cms)
-w WORDLIST, --wordlist=WORDLIST
Wordlist for crack admin password
-c, --crack Crack password with wordlist
-t TIME, --time=TIME Time for SQLIi time based attack, default = 1
(second). The slower your internet is the larger this
number should be.
-s salt, --salt=salt Salt for password hash
-p pass, --pass=pass Password hash
عند تشغيل السكربت، سيقوم بسحب ملح (salt) هاش كلمة المرور، ثم اسم المستخدم، ثم البريد الإلكتروني، ثم هاش كلمة المرور حرفًا حرفًا.
إذا انتقل من إحدى هذه السلاسل المستخرجة وبدت السلسلة قصيرة (أي حوالي 3 أو 4 أحرف فقط)، يجب عليك إنهاء البرنامج واستخدام --time وزيادة قيمته.
إذا كنت ترغب فقط في كسر كلمة المرور، يمكنك تمرير الملح والهاش كوسائط إلى السكربت. سيحاول السكربت بعد ذلك كسر كلمة المرور باستخدام قائمة الكلمات المقدمة. مثال: python3 csm_made_simple_injection.py -u http://10.10.10.100/cms -t 4 -c -w /usr/share/wordlists/mylist.txt -p xxxxxxxxxxxxxxxxx -s yyyyyyyyyyyyyyy
تم توفير سكربت الإكسبلويت هذا لأغراض تعليمية فقط. لا يروج المؤلفون أو يؤيدون أي استخدام غير مصرح به أو استغلال للثغرات. تقع مسؤولية أي استخدام غير قانوني أو غير أخلاقي لهذا السكربت على عاتق المستخدم وحده.