Skip to content
KitploitKITPLOIT
أدواتالمدونة
إرسال
أدواتالمدونة
إرسال

أدوات الاختراق واختبار الاختراق والأمن السيبراني لترسانتك الأمنية!

Kitploit هو دليل لأدوات الاختراق والأمن السيبراني واختبار الاختراق. اكتشف آخر تحديثات المشاريع للعثور على الثغرات وتحليل الأنظمة وأتمتة الاختبارات وتعزيز أمنك.

··الخلاصات·اتصال·الخصوصية·© 2026 Kitploit

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
CVE-2026-39275 — CVE-2026-39275 - ثغرة XSS مخزنة تؤدي إلى الاستيلاء على الحساب في Cockpit CMS | Kitploit
أدوات/GitHubGitHub/securify-ai/cve-2026-39275
تحليل الثغرات الأمنيةالاستغلالاستغلال تطبيقات الويبأمن الويباختبار الاختراقالتعلم والتعليم
GitHubsecurify-ai/cve-2026-39275

CVE-2026-39275

CVE-2026-39275 - ثغرة XSS مخزنة تؤدي إلى الاستيلاء على الحساب في Cockpit CMS

عرض المستودع
11منذ 2 أشهرلم تتم المراجعة بعد

الأكثر شعبية

عرض الكل →

اكتشف الأدوات الأكثر استخدامًا من قبل مجتمعنا.

استكشف جميع الأدوات

تصفح مجموعتنا من الأدوات

عرض جميع الأدوات →
مشاركة

CVE-2026-39275 - تخزين XSS يؤدي إلى الاستيلاء على الحساب في Cockpit CMS

CVE CWE-79 Severity CVSS

ملاحظة: تم الكشف عنها بطريقة مسؤولة وتم تصحيحها من قبل المشرفين على Cockpit CMS قبل النشر.

CVE IDCVE-2026-39275
الثغرةتخزين Cross-Site Scripting (XSS) → الاستيلاء على الحساب
CWECWE-79
المتأثرCockpit CMS <= 2.13.5
تم التصحيحd70dc50
CVSS 3.18.4 (AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:N)
المبلغRohith - مستشار أمني @ SecurifyAI

ملخص

ثغرة تخزين XSS في عرض قائمة المحتوى الجماعي تسمح لأي مستخدم لديه صلاحيات كتابة المحتوى (مفتاح API أو جلسة محرر موثقة) بحقن JavaScript تعسفي يتم تنفيذه في متصفح أي مسؤول أو محرر يشاهد قائمة العناصر للمجموعة المتأثرة.

رموز جلسة Cockpit يمكن الوصول إليها بالكامل من JavaScript - حيث يتم تعيين ملف تعريف الارتباط للجلسة بدون علامة HttpOnly، وجWT CSRF مكشوف في المتغير العام App.csrf والخاصية data-csrf في عنصر <html>. هذا يسمح للبرنامج النصي المحقون بقراءة كلا الرمزين وإرسالهما خارجياً، مما يلغي حماية CSRF ويتيح اختطاف الجلسة الكامل والاستيلاء على الحساب.


السبب الجذري

يتم تمرير مخرجات Field render() إلى توجيه Vue v-html دون ترميز المخرجات.

الملفالسطورالدور
modules/App/assets/vue-components/fields/field-tags.js25 - 34عارض العلامات - بدون ترميز
modules/App/assets/vue-components/fields/field-select.js26عارض التحديد - بدون ترميز
modules/Content/views/collection/items.php149حوض v-html

إثبات المفهوم

1. حقن الحمولة (مفتاح API للكتابة بامتيازات منخفضة)

root@kitploit:~
curl -X POST "http://localhost:8080/api/content/item/posts" \
  -H "Content-Type: application/json" \
  -H "api-key: USR-<attacker-api-key>" \
  -d '{
    "data": {
      "title": "Innocent Looking Post",
      "tags": [
        "",
        ""
      ],
      "body": "Just a regular post.",
      "_state": 1
    }
  }'

2. تشغيل التنفيذ

يقوم مسؤول أو محرر بالتنقل إلى /content/collection/items/posts. يقوم عارض العلامات بإرجاع السلسلة المخزنة، ويقوم v-html بتحليلها إلى عنصر `` حقيقي، يفشل src المزيف، ويتم تشغيل معالج onerror.

3. سرقة الرموز

كلا الرمزين قابلة للقراءة الآن - ملف تعريف الارتباط للجلسة عبر document.cookie وJWT CSRF عبر App.csrf / document.documentElement.getAttribute('data-csrf'). تقوم حمولة مسلحة بإرسال كليهما:

root@kitploit:~
صورة

4. إعادة تشغيل الجلسة

يقوم المهاجم بإعادة تشغيل ملف تعريف الارتباط المسروق ورمز CSRF، مما يمنحه وصولاً كاملاً بصلاحيات المسؤول - ويمكنه بعد ذلك إنشاء حسابات مسؤول، تغيير بيانات الاعتماد، أو تعديل المحتوى.


التأثير

محرر ذو امتيازات منخفضة (أو أي حامل مفتاح API لكتابة المحتوى) يرتقي إلى مسؤول كامل. الحمولة مخزنة ويتم تشغيلها لكل مسؤول/محرر يشاهد القائمة، مما يجعلها اختراقاً مستمراً متعدد الضحايا.


التصحيح

الإصلاح الأساسي - تنظيف مخرجات التقديم قبل وصولها إلى v-html باستخدام المساعد الموجود App.utils.stripTags().

field-tags.js:

root@kitploit:~
value = App.utils.stripTags(value); // تنظيف قبل v-html

field-select.js:

root@kitploit:~
return App.utils.stripTags(value); // تنظيف قبل v-html

دفاع متعدد الطبقات - تعزيز ملف تعريف الارتباط للجلسة:

root@kitploit:~
ini_set('session.cookie_httponly', 1);
ini_set('session.cookie_secure', 1);   // عبر HTTPS
ini_set('session.cookie_samesite', 'Strict');

HttpOnly وحده غير كافٍ - لا يزال XSS يمكنه التصرف في سياق المتصفح الموثوق للضحية - لذا فإن ترميز المخرجات هو الإصلاح الأساسي.


الجدول الزمني للإفصاح

التاريخالحدث
2026-03-29تم الإبلاغ عن الثغرة إلى المشرفين على Cockpit CMS
2026-03-29تم إصدار التصحيح من قبل المشرفين
2026-04-04تم طلب CVE
2026-06-23تم تعيين CVE-2026-39275
<pub date>الإفصاح العام

تم نشر هذه المادة لأغراض تعليمية ودفاعية بعد الإفصاح المنسق. استخدم فقط ضد الأنظمة التي تملكها أو مصرح لك باختبارها بشكل صريح.

تنزيل الأداة