
أداة اختبار اختراق للكشف عن ثغرات رفع الملفات (NDSS 2020)
FUSE هو نظام اختبار اختراق مصمم لتحديد ثغرات رفع الملفات القابلة للتنفيذ غير المقيدة (UEFU). تفاصيل استراتيجية الاختبار موجودة في ورقتنا العلمية، بعنوان "FUSE: العثور على ثغرات رفع الملفات عبر اختبار الاختراق"، والتي قُدمت في NDSS 2020. لمعرفة كيفية تكوين وتنفيذ FUSE، انظر ما يلي.
يعمل FUSE حاليًا على Ubuntu 18.04 و Python 2.7.15.
# apt-get install rabbitmq-server
# apt-get install python-pip
# apt-get install git
$ git clone https://github.com/WSP-LAB/FUSE
$ cd FUSE && pip install -r requirements.txt
يستخدم FUSE ملف تكوين يقدمه المستخدم يحدد معلمات لتطبيق PHP مستهدف. يجب ملء البرنامج النصي قبل اختبار تطبيق الويب المستهدف. يمكنك مراجعة ملف README وملفات التكوين النموذجية.
إعدادات مراقب الملفات (اختياري)
$ vim filemonitor.py
...
10 MONITOR_PATH='/var/www/html/' <- الدليل الجذر للويب للتطبيق المستهدف
11 MONITOR_PORT=20174 <- المنفذ الافتراضي لمراقب الملفات
12 EVENT_LIST_LIMITATION=8000 <- الحد الأقصى لعدد العناصر في EVENT_LIST
...
$ python framework.py [مسار ملف التكوين]
$ python filemonitor.py
إذا وجدت ثغرات UFU و UEFU وحصلت على CVEs عند تشغيل FUSE، فيرجى إرسال طلب سحب (PR) لـ README.md
تم إجراء هذا المشروع البحثي بواسطة WSP Lab في KAIST.
لاستشهاد بورقتنا العلمية:
@INPROCEEDINGS{lee:ndss:2020,
author = {Taekjin Lee and Seongil Wi and Suyoung Lee and Sooel Son},
title = {{FUSE}: Finding File Upload Bugs via Penetration Testing},
booktitle = {Proceedings of the Network and Distributed System Security Symposium},
year = 2020
}
| التطبيق | CVEs |
|---|
| Elgg | CVE-2018-19172 |
| ECCube3 | CVE-2018-18637 |
| CMSMadeSimple | CVE-2018-19419, CVE-2018-18574 |
| CMSimple | CVE-2018-19062 |
| Concrete5 | CVE-2018-19146 |
| GetSimpleCMS | CVE-2018-19420, CVE-2018-19421 |
| Subrion | CVE-2018-19422 |
| OsCommerce2 | CVE-2018-18572, CVE-2018-18964, CVE-2018-18965, CVE-2018-18966 |
| Monstra | CVE-2018-6383, CVE-2018-18694 |
| XE | XEVE-2019-001 |