Skip to content
KitploitKITPLOIT
أدواتعمليات الاستغلالالمدونة
Log in
إرسال
أدواتعمليات الاستغلالالمدونة
إرسال

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
drupal-move-block-markup — Drupal 11.4.8 - عالي - عن بُعد - XSS - نقل تسميات الكتل الشقيقة يتخطى تهريب @label | Kitploit
أدوات/GitHubGitHub/abraxas/drupal-move-block-markup
تحليل الشفرة الثابت (SAST)تحليل الثغرات الأمنيةالاستغلالاستغلال تطبيقات الويبأمن الويباختبار الاختراق
GitHubabraxas/drupal-move-block-markup

drupal-move-block-markup

Drupal 11.4.8 - عالي - عن بُعد - XSS - نقل تسميات الكتل الشقيقة يتخطى تهريب @label

عرض المستودع
منذ 4 أياملم تتم المراجعة بعد

الأكثر شعبية

عرض الكل →

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

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

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

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

Abraxas Labs - drupal-move-block-markup

abraxaslabs.tech  ·  github.com/abraxas  ·  @abraxas_null  ·  [email protected]  ·  drupal-move-block-markup

drupal-move-block-markup

الفئة: XSS مخزّن الوصول: عن بُعد

نواة Drupal 11.4.8 (61044508) - Drupal

SA-CORE-2026-012 غيّر صف Move Block الحالي إلى t('@label (current)')، والذي يقوم بـ Html::escape(). لا تزال الصفوف الشقيقة في نفس المنطقة تُسند BlockPluginTrait::label() مباشرةً إلى #markup في MoveBlockForm. هذا التسمية هي configuration['label']، وهو حقل نصي خام. بعد ذلك يقوم Renderer::ensureMarkupIsSafe بترشيح XSS لسلسلة نصية باستخدام قائمة وسوم المسؤول، لذا يبقى <b> (ووسوم المسؤول الأخرى) على قيد الحياة.

محرّر Layout Builder يمكنه تعيين عنوان كتلة إلى HTML يصل إلى محرّر آخر أو مسؤول يفتح Move على كتلة مختلفة في تلك المنطقة. XSS مخزّن في حوار Move. ليس RCE وليس LPE.

IDلا يوجد CVE بعد
الفئةXSS مخزّن
الوصولعن بُعد (تكوين كتلة Layout Builder؛ الضحية يفتح Move Block)
CWECWE-79
CVSSمتوسط: 5.4 CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:N
المنتجنواة Drupal
المتأثر11.4.8 (61044508071749629aaf3380aa85971e94df9e84)
المصادقةتكوين كتلة Layout Builder. الضحية يفتح Move Block.
الترخيصGNU Affero GPL v3.0
المختبر127.0.0.1 فقط

ما يمكن للمهاجم فعله

الكاتب: مستخدم يمكنه وضع أو تكوين كتل Layout Builder (وليس تكوين الموقع). الضحية: محرّر LB آخر أو مسؤول يفتح Move على كتلة مختلفة في نفس المنطقة.

الصلاحيةالطريقة / الحوضالنوعمُثبت مختبريًا أو مُستنتج
طباعة HTML المهاجم في صف شقيق حوار Move$label['#markup'] = $plugin->label(); ثم ensureMarkupIsSafeسلامة HTMLمُثبت مختبريًا. HTML الشقيق هو <b class="lb-sib">DRUPAL-MOVE-BLOCK-MARKUP-WITNESS</b>
الاحتفاظ بوسوم المسؤول (<b>، وبقية Xss::getAdminTagList)السلسلة #markup تُرشَّح بـ XSS باستخدام قائمة المسؤول، وليس تهريبهاسلامة HTMLمُثبت مختبريًا لـ <b>
الجلسة / الإجراءات كمحرّر الضحية في أصل Layout BuilderXSS مخزّن في ذلك الحوارسلامة جلسة الضحيةمُستنتج. يتوقف المختبر عند HTML الخام في الخلية الشقيقة
سلبي: الصف الحاليt('@label (current)', ...)مغلقمُثبت مختبريًا. &lt;em class="lb-cur"&gt;...
سلبي: الشقيق عبر @labelمسار الأداة المُرقَّعمغلقمُثبت مختبريًا. &lt;b class="lb-sib"&gt;...

مغلق على هذه البقايا: تثبيت موقع Drupal حي (هذا المختبر أداة)؛ سرقة جلسة واجهة Layout Builder كأوراكل HTTP مُقاس؛ RCE؛ LPE. لا يمكن للزوار غير المصادق عليهم فتح Move Block.

نفس البقايا المثبتة: AttributeXss HTMX attrs.

كيف وجدته

ثبّتت Drupal 11.4.8 بعد SA-CORE-2026-012. أغلق الإشعار عنوان الكتلة الحالي. MoveBlockForm.php 210-218:

if ($is_current_block) {
  $label['#markup'] = $this->t('@label (current)', ['@label' => $plugin->label()]);
  // ...
}
else {
  $label['#markup'] = $plugin->label();
}

BlockPluginTrait::label() يُرجع configuration['label'] عند تعيينه. Renderer::ensureMarkupIsSafe لا يرشّح XSS لـ MarkupInterface (@label مُهرَّب بالفعل). السلسلة الخام تُرشَّح بقائمة وسوم المسؤول.

المنعطفات الخاطئة المسجلة بالفعل: معاملة الصف الحالي على أنه لا يزال خامًا (ليس كذلك)؛ الادعاء بأن هذا RCE؛ موقع Drupal حي كالأوراكل الوحيد (البقايا هي هذه الدوال)؛ صدفة عكسية. مسرح.

المختبر

python3 drupal-move-block-markup-Abraxas-Labs.py

أو

cd lab
./run.sh

استهدف فقط http://127.0.0.1:19490. أداة مطابقة لدوال 11.4.8 (نسخة من بقايا MoveBlockForm، FormattableMarkup، ensureMarkupIsSafe، Xss::filter). ليس موقع drupal:11.4.8 حي. السطر الأخير يستخدم how=gadget.

SUCCESS drupal-move-block-markup how=gadget sibling-raw-tag=yes current-escaped=yes patched-sibling-escaped=yes DRUPAL-MOVE-BLOCK-MARKUP-WITNESS

الإصلاح

استخدم @label (أو Html::escape) لكل صف، وليس فقط الكتلة الحالية.

المراجع

  • github.com/drupal/drupal وسم 11.4.8 (61044508071749629aaf3380aa85971e94df9e84)
  • MoveBlockForm.php · BlockPluginTrait.php
  • قريب مُرقَّع: SA-CORE-2026-012
  • نفس التثبيت: drupal-htmx-attr
  • CWE-79

الترخيص

GNU Affero GPL v3.0. انظر LICENSE. مختبر loopback فقط. لا ضمان.

تنزيل الأداة