CVE-2026-26198
ormar عرضة لحقن SQL عبر دوال التجميع min() و max()
- تم النشر
- 24/02/2026
- محدث
- 24/02/2026
- تخصيص CNA
- GitHub_M
- الأدلة المرصودة
- 25/08/2026
CVSS الأساسي
nvd · CVSS 3.1
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:Hمنخفض · الثلاثين يومًا القادمة
- المئوية
- 58.1%
- تاريخ الموديل
- 21/09/2026
EPSS هو تقدير إحصائي، وليس يقينًا أو مقياسًا للتأثير. ادمجها مع CVSS وحالة KEV والتعرض وبيئتك.
ملخص
Ormar هو ORM مصغّر غير متزامن للغة Python. في الإصدارات من 0.9.9 إلى 0.22.0، عند تنفيذ استعلامات التجميع، يقوم Ormar ORM ببناء تعبيرات SQL عن طريق تمرير أسماء الأعمدة المقدمة من المستخدم مباشرة إلى `sqlalchemy.text()` دون أي تحقق أو تنقية. تقبل طريقتي `min()` و `max()` في فئة `QuerySet` أي سلسلة نصية كمعامل العمود. بينما تكون `sum()` و `avg()` محميتين جزئياً بفحص النوع `is_numeric` الذي يرفض الحقول غير الموجودة، فإن `min()` و `max()` تتخطيان هذا التحقق تماماً. ونتيجة لذلك، يتم تضمين سلسلة نصية يتحكم فيها المهاجم كـ SQL خام داخل استدعاء دالة التجميع. يمكن لأي مستخدم غير مصرح له استغلال هذه الثغرة لقراءة محتويات قاعدة البيانات بالكامل، بما في ذلك الجداول غير المرتبطة بالنموذج الذي يتم الاستعلام عنه، عن طريق حقن استعلام فرعي كمعامل العمود. يحتوي الإصدار 0.23.0 على تصحيح.
المصادر
2تعمق في ثغرة حقن SQL حرجة في Ormar ORM الخاص بلغة بايثون — إعادة الإنتاج، الإصلاح، والاختبارات
إثبات مفهوم لاستغلال CVE-2026-26198، يوضح الثغرة الأمنية وتأثيرها.
الاستخدام المسؤول
استخدم معلومات الثغرات الأمنية فقط على الأنظمة التي تمتلكها أو المرخص لها باختبارها. يرتبط Kitploit ببيانات تعريف البحث العامة ولا يخزن أكواد الاستغلال أو الحمولات الضارة.