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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
mysql-install-component-scheme — MySQL Community Server 26.7.0 - عالي - مخطط مؤهل INSTALL COMPONENT - تخطي plugin_dir | Kitploit
أدوات/GitHubGitHub/abraxas/mysql-install-component-scheme
تحليل الثغرات الأمنيةالاستغلالاستغلال تطبيقات الويباختبار الاختراقأداة الوصول عن بعدأمن قواعد البياناتمختبرات وتدريب عملي
GitHub
abraxas/mysql-install-component-scheme

mysql-install-component-scheme

MySQL Community Server 26.7.0 - عالي - مخطط مؤهل INSTALL COMPONENT - تخطي plugin_dir

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

الأكثر شعبية

عرض الكل →

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

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

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

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

Abraxas Labs - mysql-install-component-scheme

abraxaslabs.tech  ·  github.com/abraxas  ·  @abraxas_null  ·  [email protected]  ·  mysql-install-component-scheme

المقال التقني: https://abraxaslabs.tech/research/mysql-install-component-scheme

mysql-install-component-scheme

التصنيف: RCE الوصول: عن بُعد

MySQL Community Server mysqld 26.7.0 (06a5c1c) - Oracle

يُغلَّف الأمر الافتراضي file:// الخاص بـ INSTALL COMPONENT بواسطة mysql_server_path_filter ويُجبَر على العمل ضمن plugin_dir. يبقى محمّل libminchassis غير المُفلتر مسجَّلاً باسم dynamic_loader_scheme_file.mysql_minimal_chassis. يستحوذ مخطط URN باسم file.mysql_minimal_chassis على ذلك التنفيذ ويقوم بـ dlopen لمسار مطلق بصلاحيات UID الخاص بـ mysqld. لا يزال INSTALL PLUGIN / CREATE FUNCTION SONAME يرفضان /. يتطلب صلاحية INSERT على mysql.component (PR:H).

ينسخ المختبر نسخة أصلية من component_query_attributes.so إلى /tmp/MYSQL-INSTALL-COMPONENT-SCHEME-WITNESS.so. دون أي مكوّن مخصص.

الحقلالقيمة
المعرّفلا يوجد CVE بعد
التصنيفRCE (dlopen للمكوّن بصلاحيات mysqld؛ PR:H؛ حمّل المختبر ملف .so أصلياً)
الوصولعن بُعد (SQL موثّق؛ INSTALL COMPONENT / PR:H)
CWECWE-427
CVSSمرتفع: 7.2 CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:H/A:H
المنتجMySQL Community Server mysqld
المتأثر26.7.0 (06a5c1c99c377fc41b2eba1ea244e8b220bdc3c8)
المصادقةINSTALL COMPONENT (INSERT على mysql.component)
الترخيصGNU Affero GPL v3.0
المختبر127.0.0.1 فقط. نُسخ مكوّن أصلي غير مستخدم إلى خارج plugin_dir.

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

امتلاك صلاحية INSTALL COMPONENT. وضع مكوّن .so خارج plugin_dir (عبر FILE DUMPFILE ضمن secure_file_priv، أو كتابة محلية). INSTALL COMPONENT 'file.mysql_minimal_chassis:///abs/name' (دون لاحقة .so؛ يضيفها المحمّل). ثم dlopen بصلاحيات UID الخاص بـ mysqld. يُحفظ نفس URN في mysql.component ويُعاد تحميله عند إعادة التشغيل.

يُرفض file:///abs/name (3529). ويُرفض INSTALL PLUGIN ... SONAME '/abs/...' (1124). المخطط المؤهَّل هو ما تبقّى.

كيف وجدته

نفس عملية البحث في 26.7.0. set_default("dynamic_loader_scheme_file.mysql_server_path_filter") هو الحد الموثّق. يبقى التنفيذ غير المُفلتر مسجَّلاً كي يتمكن الغلاف من استدعائه. يأخذ get_scheme_service_from_urn البايتات قبل :// كمخطط.

my_service<SERVICE_TYPE(dynamic_loader_scheme)> service(
    (my_string("dynamic_loader_scheme_") + scheme).c_str(),
    &imp_mysql_minimal_chassis_registry);

file.mysql_minimal_chassis مخطط حقيقي. component.test لا يجرّبه أبدًا.

المنعطفات الخاطئة: تم تحميل URN بثلاث شرطات مائلة (scheme:///tmp/...)؛ لم تكن هناك حاجة إلى أربع شرطات مائلة. يجب أن يحذف جذر URN الامتداد .so.

المختبر

cd lab
./run.sh

Image mysql:26.7.0. منشور 127.0.0.1:18650. plugin_dir=/usr/lib64/mysql/plugin. ينسخ component_query_attributes.so الأصلي إلى /tmp/MYSQL-INSTALL-COMPONENT-SCHEME-WITNESS.so.

SUCCESS mysql-install-component-scheme file-slash-denied=yes qualified-load=yes component-urn=yes dump=26.7.0 image=mysql:26.7.0 MYSQL-INSTALL-COMPONENT-SCHEME-WITNESS

الإصلاح

لا تقم بجلب dynamic_loader_scheme_file.mysql_minimal_chassis من عناوين SQL URNs. اربط file فقط بتطبيق مرشح المسار. ارفض أي مخطط يسمّي تطبيقًا. أبقِ check_valid_path على كل محمّل ملفات.

المراجع

  • github.com/mysql/mysql-server وسم mysql-26.7.0 (06a5c1c99c377fc41b2eba1ea244e8b220bdc3c8)
  • components/libminchassis/dynamic_loader.cc get_scheme_service_from_urn
  • sql/server_component/dynamic_loader_path_filter.cc
  • حزم شقيقة: abraxas/mysql-mysqldump-show-tables-overflow · abraxas/mysql-mysqldump-tab-path · abraxas/mysql-mysqlbinlog-raw-path · abraxas/mysql-set-role-leftover
تنزيل الأداة